<?xml version="1.0" encoding="UTF-8" ?>
<class name="RootMotionView" inherits="VisualInstance" version="3.6" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd">
	<brief_description>
		Editor-only helper for setting up root motion in [AnimationTree].
	</brief_description>
	<description>
		[i]Root motion[/i] refers to an animation technique where a mesh's skeleton is used to give impulse to a character. When working with 3D animations, a popular technique is for animators to use the root skeleton bone to give motion to the rest of the skeleton. This allows animating characters in a way where steps actually match the floor below. It also allows precise interaction with objects during cinematics. See also [AnimationTree].
		[b]Note:[/b] [RootMotionView] is only visible in the editor. It will be hidden automatically in the running project, and will also be converted to a plain [Node] in the running project. This means a script attached to a [RootMotionView] node [i]must[/i] have [code]extends Node[/code] instead of [code]extends RootMotionView[/code]. Additionally, it must not be a [code]tool[/code] script.
	</description>
	<tutorials>
		<link title="Using AnimationTree - Root motion">$DOCS_URL/tutorials/animation/animation_tree.html#root-motion</link>
	</tutorials>
	<methods>
	</methods>
	<members>
		<member name="animation_path" type="NodePath" setter="set_animation_path" getter="get_animation_path">
			Path to an [AnimationTree] node to use as a basis for root motion.
		</member>
		<member name="cell_size" type="float" setter="set_cell_size" getter="get_cell_size">
			The grid's cell size in 3D units.
		</member>
		<member name="color" type="Color" setter="set_color" getter="get_color">
			The grid's color.
		</member>
		<member name="radius" type="float" setter="set_radius" getter="get_radius">
			The grid's radius in 3D units. The grid's opacity will fade gradually as the distance from the origin increases until this [member radius] is reached.
		</member>
		<member name="zero_y" type="bool" setter="set_zero_y" getter="get_zero_y">
			If [code]true[/code], the grid's points will all be on the same Y coordinate ([i]local[/i] Y = 0). If [code]false[/code], the points' original Y coordinate is preserved.
		</member>
	</members>
	<constants>
	</constants>
</class>
