<?xml version="1.0" encoding="UTF-8" ?>
<class name="CanvasLayer" inherits="Node" version="3.3">
	<brief_description>
		Canvas drawing layer.
	</brief_description>
	<description>
		Canvas drawing layer. [CanvasItem] nodes that are direct or indirect children of a [CanvasLayer] will be drawn in that layer. The layer is a numeric index that defines the draw order. The default 2D scene renders with index 0, so a [CanvasLayer] with index -1 will be drawn below, and one with index 1 will be drawn above. This is very useful for HUDs (in layer 1+ or above), or backgrounds (in layer -1 or below).
	</description>
	<tutorials>
		<link title="Viewport and canvas transforms">https://docs.godotengine.org/en/3.3/tutorials/2d/2d_transforms.html</link>
		<link title="Canvas layers">https://docs.godotengine.org/en/3.3/tutorials/2d/canvas_layers.html</link>
		<link title="2D Dodge The Creeps Demo">https://godotengine.org/asset-library/asset/515</link>
	</tutorials>
	<methods>
		<method name="get_canvas" qualifiers="const">
			<return type="RID">
			</return>
			<description>
				Returns the RID of the canvas used by this layer.
			</description>
		</method>
	</methods>
	<members>
		<member name="custom_viewport" type="Node" setter="set_custom_viewport" getter="get_custom_viewport">
			The custom [Viewport] node assigned to the [CanvasLayer]. If [code]null[/code], uses the default viewport instead.
		</member>
		<member name="follow_viewport_enable" type="bool" setter="set_follow_viewport" getter="is_following_viewport" default="false">
			Sets the layer to follow the viewport in order to simulate a pseudo 3D effect.
		</member>
		<member name="follow_viewport_scale" type="float" setter="set_follow_viewport_scale" getter="get_follow_viewport_scale" default="1.0">
			Scales the layer when using [member follow_viewport_enable]. Layers moving into the foreground should have increasing scales, while layers moving into the background should have decreasing scales.
		</member>
		<member name="layer" type="int" setter="set_layer" getter="get_layer" default="1">
			Layer index for draw order. Lower values are drawn first.
		</member>
		<member name="offset" type="Vector2" setter="set_offset" getter="get_offset" default="Vector2( 0, 0 )">
			The layer's base offset.
		</member>
		<member name="rotation" type="float" setter="set_rotation" getter="get_rotation" default="0.0">
			The layer's rotation in radians.
		</member>
		<member name="rotation_degrees" type="float" setter="set_rotation_degrees" getter="get_rotation_degrees" default="0.0">
			The layer's rotation in degrees.
		</member>
		<member name="scale" type="Vector2" setter="set_scale" getter="get_scale" default="Vector2( 1, 1 )">
			The layer's scale.
		</member>
		<member name="transform" type="Transform2D" setter="set_transform" getter="get_transform" default="Transform2D( 1, 0, 0, 1, 0, 0 )">
			The layer's transform.
		</member>
	</members>
	<constants>
	</constants>
</class>
