c6cea6e9b3
Thanks to @bojidar-bg's impressive work in #29380.
276 lines
8.3 KiB
XML
276 lines
8.3 KiB
XML
<?xml version="1.0" encoding="UTF-8" ?>
|
|
<class name="Skeleton" inherits="Spatial" category="Core" version="3.2">
|
|
<brief_description>
|
|
Skeleton for characters and animated objects.
|
|
</brief_description>
|
|
<description>
|
|
Skeleton provides a hierarchical interface for managing bones, including pose, rest and animation (see [Animation]). Skeleton will support rag doll dynamics in the future.
|
|
The overall transform of a bone with respect to the skeleton is determined by the following hierarchical order: rest pose, custom pose and pose.
|
|
Note that "global pose" below refers to the overall transform of the bone with respect to skeleton, so it not the actual global/world transform of the bone.
|
|
</description>
|
|
<tutorials>
|
|
</tutorials>
|
|
<methods>
|
|
<method name="add_bone">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="name" type="String">
|
|
</argument>
|
|
<description>
|
|
Adds a bone, with name [code]name[/code]. [method get_bone_count] will become the bone index.
|
|
</description>
|
|
</method>
|
|
<method name="bind_child_node_to_bone">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="bone_idx" type="int">
|
|
</argument>
|
|
<argument index="1" name="node" type="Node">
|
|
</argument>
|
|
<description>
|
|
[i]Deprecated soon.[/i]
|
|
</description>
|
|
</method>
|
|
<method name="clear_bones">
|
|
<return type="void">
|
|
</return>
|
|
<description>
|
|
Clear all the bones in this skeleton.
|
|
</description>
|
|
</method>
|
|
<method name="find_bone" qualifiers="const">
|
|
<return type="int">
|
|
</return>
|
|
<argument index="0" name="name" type="String">
|
|
</argument>
|
|
<description>
|
|
Returns the bone index that matches [code]name[/code] as its name.
|
|
</description>
|
|
</method>
|
|
<method name="get_bone_count" qualifiers="const">
|
|
<return type="int">
|
|
</return>
|
|
<description>
|
|
Returns the amount of bones in the skeleton.
|
|
</description>
|
|
</method>
|
|
<method name="get_bone_custom_pose" qualifiers="const">
|
|
<return type="Transform">
|
|
</return>
|
|
<argument index="0" name="bone_idx" type="int">
|
|
</argument>
|
|
<description>
|
|
Returns the custom pose of the specified bone. Custom pose is applied on top of the rest pose.
|
|
</description>
|
|
</method>
|
|
<method name="get_bone_global_pose" qualifiers="const">
|
|
<return type="Transform">
|
|
</return>
|
|
<argument index="0" name="bone_idx" type="int">
|
|
</argument>
|
|
<description>
|
|
Returns the overall transform of the specified bone, with respect to the skeleton. Being relative to the skeleton frame, this is not the actual "global" transform of the bone.
|
|
</description>
|
|
</method>
|
|
<method name="get_bone_name" qualifiers="const">
|
|
<return type="String">
|
|
</return>
|
|
<argument index="0" name="bone_idx" type="int">
|
|
</argument>
|
|
<description>
|
|
Returns the name of the bone at index [code]index[/code].
|
|
</description>
|
|
</method>
|
|
<method name="get_bone_parent" qualifiers="const">
|
|
<return type="int">
|
|
</return>
|
|
<argument index="0" name="bone_idx" type="int">
|
|
</argument>
|
|
<description>
|
|
Returns the bone index which is the parent of the bone at [code]bone_idx[/code]. If -1, then bone has no parent.
|
|
[b]Note:[/b] The parent bone returned will always be less than [code]bone_idx[/code].
|
|
</description>
|
|
</method>
|
|
<method name="get_bone_pose" qualifiers="const">
|
|
<return type="Transform">
|
|
</return>
|
|
<argument index="0" name="bone_idx" type="int">
|
|
</argument>
|
|
<description>
|
|
Returns the pose transform of the specified bone. Pose is applied on top of the custom pose, which is applied on top the rest pose.
|
|
</description>
|
|
</method>
|
|
<method name="get_bone_rest" qualifiers="const">
|
|
<return type="Transform">
|
|
</return>
|
|
<argument index="0" name="bone_idx" type="int">
|
|
</argument>
|
|
<description>
|
|
Returns the rest transform for a bone [code]bone_idx[/code].
|
|
</description>
|
|
</method>
|
|
<method name="get_bone_transform" qualifiers="const">
|
|
<return type="Transform">
|
|
</return>
|
|
<argument index="0" name="bone_idx" type="int">
|
|
</argument>
|
|
<description>
|
|
Returns the combination of custom pose and pose. The returned transform is in skeleton's reference frame.
|
|
</description>
|
|
</method>
|
|
<method name="get_bound_child_nodes_to_bone" qualifiers="const">
|
|
<return type="Array">
|
|
</return>
|
|
<argument index="0" name="bone_idx" type="int">
|
|
</argument>
|
|
<description>
|
|
[i]Deprecated soon.[/i]
|
|
</description>
|
|
</method>
|
|
<method name="is_bone_rest_disabled" qualifiers="const">
|
|
<return type="bool">
|
|
</return>
|
|
<argument index="0" name="bone_idx" type="int">
|
|
</argument>
|
|
<description>
|
|
</description>
|
|
</method>
|
|
<method name="localize_rests">
|
|
<return type="void">
|
|
</return>
|
|
<description>
|
|
</description>
|
|
</method>
|
|
<method name="physical_bones_add_collision_exception">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="exception" type="RID">
|
|
</argument>
|
|
<description>
|
|
</description>
|
|
</method>
|
|
<method name="physical_bones_remove_collision_exception">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="exception" type="RID">
|
|
</argument>
|
|
<description>
|
|
</description>
|
|
</method>
|
|
<method name="physical_bones_start_simulation">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="bones" type="Array" default="[ ]">
|
|
</argument>
|
|
<description>
|
|
</description>
|
|
</method>
|
|
<method name="physical_bones_stop_simulation">
|
|
<return type="void">
|
|
</return>
|
|
<description>
|
|
</description>
|
|
</method>
|
|
<method name="set_bone_custom_pose">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="bone_idx" type="int">
|
|
</argument>
|
|
<argument index="1" name="custom_pose" type="Transform">
|
|
</argument>
|
|
<description>
|
|
</description>
|
|
</method>
|
|
<method name="set_bone_disable_rest">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="bone_idx" type="int">
|
|
</argument>
|
|
<argument index="1" name="disable" type="bool">
|
|
</argument>
|
|
<description>
|
|
</description>
|
|
</method>
|
|
<method name="set_bone_global_pose">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="bone_idx" type="int">
|
|
</argument>
|
|
<argument index="1" name="pose" type="Transform">
|
|
</argument>
|
|
<description>
|
|
</description>
|
|
</method>
|
|
<method name="set_bone_ignore_animation">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="bone" type="int">
|
|
</argument>
|
|
<argument index="1" name="ignore" type="bool">
|
|
</argument>
|
|
<description>
|
|
</description>
|
|
</method>
|
|
<method name="set_bone_parent">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="bone_idx" type="int">
|
|
</argument>
|
|
<argument index="1" name="parent_idx" type="int">
|
|
</argument>
|
|
<description>
|
|
Sets the bone index [code]parent_idx[/code] as the parent of the bone at [code]bone_idx[/code]. If -1, then bone has no parent.
|
|
[b]Note:[/b] [code]parent_idx[/code] must be less than [code]bone_idx[/code].
|
|
</description>
|
|
</method>
|
|
<method name="set_bone_pose">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="bone_idx" type="int">
|
|
</argument>
|
|
<argument index="1" name="pose" type="Transform">
|
|
</argument>
|
|
<description>
|
|
Returns the pose transform for bone [code]bone_idx[/code].
|
|
</description>
|
|
</method>
|
|
<method name="set_bone_rest">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="bone_idx" type="int">
|
|
</argument>
|
|
<argument index="1" name="rest" type="Transform">
|
|
</argument>
|
|
<description>
|
|
Sets the rest transform for bone [code]bone_idx[/code].
|
|
</description>
|
|
</method>
|
|
<method name="unbind_child_node_from_bone">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="bone_idx" type="int">
|
|
</argument>
|
|
<argument index="1" name="node" type="Node">
|
|
</argument>
|
|
<description>
|
|
[i]Deprecated soon.[/i]
|
|
</description>
|
|
</method>
|
|
<method name="unparent_bone_and_rest">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="bone_idx" type="int">
|
|
</argument>
|
|
<description>
|
|
</description>
|
|
</method>
|
|
</methods>
|
|
<members>
|
|
<member name="bones_in_world_transform" type="bool" setter="set_use_bones_in_world_transform" getter="is_using_bones_in_world_transform" default="false">
|
|
</member>
|
|
</members>
|
|
<constants>
|
|
<constant name="NOTIFICATION_UPDATE_SKELETON" value="50">
|
|
</constant>
|
|
</constants>
|
|
</class>
|