class_boneattachment3d.rst 9.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194
  1. :github_url: hide
  2. .. meta::
  3. :keywords: tag
  4. .. DO NOT EDIT THIS FILE!!!
  5. .. Generated automatically from Godot engine sources.
  6. .. Generator: https://github.com/godotengine/godot/tree/4.3/doc/tools/make_rst.py.
  7. .. XML source: https://github.com/godotengine/godot/tree/4.3/doc/classes/BoneAttachment3D.xml.
  8. .. _class_BoneAttachment3D:
  9. BoneAttachment3D
  10. ================
  11. **Inherits:** :ref:`Node3D<class_Node3D>` **<** :ref:`Node<class_Node>` **<** :ref:`Object<class_Object>`
  12. А node that dynamically copies or overrides the 3D transform of a bone in its parent :ref:`Skeleton3D<class_Skeleton3D>`.
  13. .. rst-class:: classref-introduction-group
  14. Description
  15. -----------
  16. This node selects a bone in a :ref:`Skeleton3D<class_Skeleton3D>` and attaches to it. This means that the **BoneAttachment3D** node will either dynamically copy or override the 3D transform of the selected bone.
  17. .. rst-class:: classref-reftable-group
  18. Properties
  19. ----------
  20. .. table::
  21. :widths: auto
  22. +-----------------------------+---------------------------------------------------------------------+-----------+
  23. | :ref:`int<class_int>` | :ref:`bone_idx<class_BoneAttachment3D_property_bone_idx>` | ``-1`` |
  24. +-----------------------------+---------------------------------------------------------------------+-----------+
  25. | :ref:`String<class_String>` | :ref:`bone_name<class_BoneAttachment3D_property_bone_name>` | ``""`` |
  26. +-----------------------------+---------------------------------------------------------------------+-----------+
  27. | :ref:`bool<class_bool>` | :ref:`override_pose<class_BoneAttachment3D_property_override_pose>` | ``false`` |
  28. +-----------------------------+---------------------------------------------------------------------+-----------+
  29. .. rst-class:: classref-reftable-group
  30. Methods
  31. -------
  32. .. table::
  33. :widths: auto
  34. +---------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+
  35. | :ref:`NodePath<class_NodePath>` | :ref:`get_external_skeleton<class_BoneAttachment3D_method_get_external_skeleton>`\ (\ ) |const| |
  36. +---------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+
  37. | :ref:`bool<class_bool>` | :ref:`get_use_external_skeleton<class_BoneAttachment3D_method_get_use_external_skeleton>`\ (\ ) |const| |
  38. +---------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+
  39. | |void| | :ref:`on_skeleton_update<class_BoneAttachment3D_method_on_skeleton_update>`\ (\ ) |
  40. +---------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+
  41. | |void| | :ref:`set_external_skeleton<class_BoneAttachment3D_method_set_external_skeleton>`\ (\ external_skeleton\: :ref:`NodePath<class_NodePath>`\ ) |
  42. +---------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+
  43. | |void| | :ref:`set_use_external_skeleton<class_BoneAttachment3D_method_set_use_external_skeleton>`\ (\ use_external_skeleton\: :ref:`bool<class_bool>`\ ) |
  44. +---------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+
  45. .. rst-class:: classref-section-separator
  46. ----
  47. .. rst-class:: classref-descriptions-group
  48. Property Descriptions
  49. ---------------------
  50. .. _class_BoneAttachment3D_property_bone_idx:
  51. .. rst-class:: classref-property
  52. :ref:`int<class_int>` **bone_idx** = ``-1`` :ref:`🔗<class_BoneAttachment3D_property_bone_idx>`
  53. .. rst-class:: classref-property-setget
  54. - |void| **set_bone_idx**\ (\ value\: :ref:`int<class_int>`\ )
  55. - :ref:`int<class_int>` **get_bone_idx**\ (\ )
  56. The index of the attached bone.
  57. .. rst-class:: classref-item-separator
  58. ----
  59. .. _class_BoneAttachment3D_property_bone_name:
  60. .. rst-class:: classref-property
  61. :ref:`String<class_String>` **bone_name** = ``""`` :ref:`🔗<class_BoneAttachment3D_property_bone_name>`
  62. .. rst-class:: classref-property-setget
  63. - |void| **set_bone_name**\ (\ value\: :ref:`String<class_String>`\ )
  64. - :ref:`String<class_String>` **get_bone_name**\ (\ )
  65. The name of the attached bone.
  66. .. rst-class:: classref-item-separator
  67. ----
  68. .. _class_BoneAttachment3D_property_override_pose:
  69. .. rst-class:: classref-property
  70. :ref:`bool<class_bool>` **override_pose** = ``false`` :ref:`🔗<class_BoneAttachment3D_property_override_pose>`
  71. .. rst-class:: classref-property-setget
  72. - |void| **set_override_pose**\ (\ value\: :ref:`bool<class_bool>`\ )
  73. - :ref:`bool<class_bool>` **get_override_pose**\ (\ )
  74. Whether the BoneAttachment3D node will override the bone pose of the bone it is attached to. When set to ``true``, the BoneAttachment3D node can change the pose of the bone. When set to ``false``, the BoneAttachment3D will always be set to the bone's transform.
  75. \ **Note:** This override performs interruptively in the skeleton update process using signals due to the old design. It may cause unintended behavior when used at the same time with :ref:`SkeletonModifier3D<class_SkeletonModifier3D>`.
  76. .. rst-class:: classref-section-separator
  77. ----
  78. .. rst-class:: classref-descriptions-group
  79. Method Descriptions
  80. -------------------
  81. .. _class_BoneAttachment3D_method_get_external_skeleton:
  82. .. rst-class:: classref-method
  83. :ref:`NodePath<class_NodePath>` **get_external_skeleton**\ (\ ) |const| :ref:`🔗<class_BoneAttachment3D_method_get_external_skeleton>`
  84. Returns the :ref:`NodePath<class_NodePath>` to the external :ref:`Skeleton3D<class_Skeleton3D>` node, if one has been set.
  85. .. rst-class:: classref-item-separator
  86. ----
  87. .. _class_BoneAttachment3D_method_get_use_external_skeleton:
  88. .. rst-class:: classref-method
  89. :ref:`bool<class_bool>` **get_use_external_skeleton**\ (\ ) |const| :ref:`🔗<class_BoneAttachment3D_method_get_use_external_skeleton>`
  90. Returns whether the BoneAttachment3D node is using an external :ref:`Skeleton3D<class_Skeleton3D>` rather than attempting to use its parent node as the :ref:`Skeleton3D<class_Skeleton3D>`.
  91. .. rst-class:: classref-item-separator
  92. ----
  93. .. _class_BoneAttachment3D_method_on_skeleton_update:
  94. .. rst-class:: classref-method
  95. |void| **on_skeleton_update**\ (\ ) :ref:`🔗<class_BoneAttachment3D_method_on_skeleton_update>`
  96. A function that is called automatically when the :ref:`Skeleton3D<class_Skeleton3D>` is updated. This function is where the **BoneAttachment3D** node updates its position so it is correctly bound when it is *not* set to override the bone pose.
  97. .. rst-class:: classref-item-separator
  98. ----
  99. .. _class_BoneAttachment3D_method_set_external_skeleton:
  100. .. rst-class:: classref-method
  101. |void| **set_external_skeleton**\ (\ external_skeleton\: :ref:`NodePath<class_NodePath>`\ ) :ref:`🔗<class_BoneAttachment3D_method_set_external_skeleton>`
  102. Sets the :ref:`NodePath<class_NodePath>` to the external skeleton that the BoneAttachment3D node should use. See :ref:`set_use_external_skeleton<class_BoneAttachment3D_method_set_use_external_skeleton>` to enable the external :ref:`Skeleton3D<class_Skeleton3D>` node.
  103. .. rst-class:: classref-item-separator
  104. ----
  105. .. _class_BoneAttachment3D_method_set_use_external_skeleton:
  106. .. rst-class:: classref-method
  107. |void| **set_use_external_skeleton**\ (\ use_external_skeleton\: :ref:`bool<class_bool>`\ ) :ref:`🔗<class_BoneAttachment3D_method_set_use_external_skeleton>`
  108. Sets whether the BoneAttachment3D node will use an external :ref:`Skeleton3D<class_Skeleton3D>` node rather than attempting to use its parent node as the :ref:`Skeleton3D<class_Skeleton3D>`. When set to ``true``, the BoneAttachment3D node will use the external :ref:`Skeleton3D<class_Skeleton3D>` node set in :ref:`set_external_skeleton<class_BoneAttachment3D_method_set_external_skeleton>`.
  109. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
  110. .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
  111. .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`
  112. .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)`
  113. .. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`
  114. .. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)`
  115. .. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)`
  116. .. |void| replace:: :abbr:`void (No return value.)`