mirror of
https://github.com/godotengine/godot-docs.git
synced 2026-01-03 05:48:42 +03:00
141 lines
9.5 KiB
ReStructuredText
141 lines
9.5 KiB
ReStructuredText
:github_url: hide
|
|
|
|
.. Generated automatically by doc/tools/make_rst.py in Godot's source tree.
|
|
.. DO NOT EDIT THIS FILE, but the SkeletonModification3D.xml source instead.
|
|
.. The source is found in doc/classes or modules/<name>/doc_classes.
|
|
|
|
.. _class_SkeletonModification3D:
|
|
|
|
SkeletonModification3D
|
|
======================
|
|
|
|
**Inherits:** :ref:`Resource<class_Resource>` **<** :ref:`RefCounted<class_RefCounted>` **<** :ref:`Object<class_Object>`
|
|
|
|
**Inherited By:** :ref:`SkeletonModification3DCCDIK<class_SkeletonModification3DCCDIK>`, :ref:`SkeletonModification3DFABRIK<class_SkeletonModification3DFABRIK>`, :ref:`SkeletonModification3DJiggle<class_SkeletonModification3DJiggle>`, :ref:`SkeletonModification3DLookAt<class_SkeletonModification3DLookAt>`, :ref:`SkeletonModification3DStackHolder<class_SkeletonModification3DStackHolder>`, :ref:`SkeletonModification3DTwoBoneIK<class_SkeletonModification3DTwoBoneIK>`
|
|
|
|
A resource that operates on bones in a :ref:`Skeleton3D<class_Skeleton3D>`.
|
|
|
|
Description
|
|
-----------
|
|
|
|
This resource provides an interface that can be expanded so code that operates on bones in a :ref:`Skeleton3D<class_Skeleton3D>` can be mixed and matched together to create complex interactions.
|
|
|
|
This is used to provide Godot with a flexible and powerful Inverse Kinematics solution that can be adapted for many different uses.
|
|
|
|
Properties
|
|
----------
|
|
|
|
+-------------------------+-----------------------------------------------------------------------------+----------+
|
|
| :ref:`bool<class_bool>` | :ref:`enabled<class_SkeletonModification3D_property_enabled>` | ``true`` |
|
|
+-------------------------+-----------------------------------------------------------------------------+----------+
|
|
| :ref:`int<class_int>` | :ref:`execution_mode<class_SkeletonModification3D_property_execution_mode>` | ``0`` |
|
|
+-------------------------+-----------------------------------------------------------------------------+----------+
|
|
|
|
Methods
|
|
-------
|
|
|
|
+-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
|
| void | :ref:`_execute<class_SkeletonModification3D_method__execute>` **(** :ref:`float<class_float>` delta **)** |virtual| |
|
|
+-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
|
| void | :ref:`_setup_modification<class_SkeletonModification3D_method__setup_modification>` **(** :ref:`SkeletonModificationStack3D<class_SkeletonModificationStack3D>` modification_stack **)** |virtual| |
|
|
+-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
|
| :ref:`float<class_float>` | :ref:`clamp_angle<class_SkeletonModification3D_method_clamp_angle>` **(** :ref:`float<class_float>` angle, :ref:`float<class_float>` min, :ref:`float<class_float>` max, :ref:`bool<class_bool>` invert **)** |
|
|
+-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
|
| :ref:`bool<class_bool>` | :ref:`get_is_setup<class_SkeletonModification3D_method_get_is_setup>` **(** **)** |const| |
|
|
+-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
|
| :ref:`SkeletonModificationStack3D<class_SkeletonModificationStack3D>` | :ref:`get_modification_stack<class_SkeletonModification3D_method_get_modification_stack>` **(** **)** |
|
|
+-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
|
| void | :ref:`set_is_setup<class_SkeletonModification3D_method_set_is_setup>` **(** :ref:`bool<class_bool>` is_setup **)** |
|
|
+-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
|
|
|
Property Descriptions
|
|
---------------------
|
|
|
|
.. _class_SkeletonModification3D_property_enabled:
|
|
|
|
- :ref:`bool<class_bool>` **enabled**
|
|
|
|
+-----------+--------------------+
|
|
| *Default* | ``true`` |
|
|
+-----------+--------------------+
|
|
| *Setter* | set_enabled(value) |
|
|
+-----------+--------------------+
|
|
| *Getter* | get_enabled() |
|
|
+-----------+--------------------+
|
|
|
|
When true, the modification's :ref:`_execute<class_SkeletonModification3D_method__execute>` function will be called by the :ref:`SkeletonModificationStack3D<class_SkeletonModificationStack3D>`.
|
|
|
|
----
|
|
|
|
.. _class_SkeletonModification3D_property_execution_mode:
|
|
|
|
- :ref:`int<class_int>` **execution_mode**
|
|
|
|
+-----------+---------------------------+
|
|
| *Default* | ``0`` |
|
|
+-----------+---------------------------+
|
|
| *Setter* | set_execution_mode(value) |
|
|
+-----------+---------------------------+
|
|
| *Getter* | get_execution_mode() |
|
|
+-----------+---------------------------+
|
|
|
|
The execution mode for the modification. This tells the modification stack when to execute the modification. Some modifications have settings that are only available in certain execution modes.
|
|
|
|
Method Descriptions
|
|
-------------------
|
|
|
|
.. _class_SkeletonModification3D_method__execute:
|
|
|
|
- void **_execute** **(** :ref:`float<class_float>` delta **)** |virtual|
|
|
|
|
Executes the given modification. This is where the modification performs whatever function it is designed to do.
|
|
|
|
----
|
|
|
|
.. _class_SkeletonModification3D_method__setup_modification:
|
|
|
|
- void **_setup_modification** **(** :ref:`SkeletonModificationStack3D<class_SkeletonModificationStack3D>` modification_stack **)** |virtual|
|
|
|
|
Sets up the modification so it can be executed. This function should be called automatically by the :ref:`SkeletonModificationStack3D<class_SkeletonModificationStack3D>` containing this modification.
|
|
|
|
If you need to initialize a modification before use, this is the place to do it!
|
|
|
|
----
|
|
|
|
.. _class_SkeletonModification3D_method_clamp_angle:
|
|
|
|
- :ref:`float<class_float>` **clamp_angle** **(** :ref:`float<class_float>` angle, :ref:`float<class_float>` min, :ref:`float<class_float>` max, :ref:`bool<class_bool>` invert **)**
|
|
|
|
Takes a angle and clamps it so it is within the passed-in ``min`` and ``max`` range. ``invert`` will inversely clamp the angle, clamping it to the range outside of the given bounds.
|
|
|
|
----
|
|
|
|
.. _class_SkeletonModification3D_method_get_is_setup:
|
|
|
|
- :ref:`bool<class_bool>` **get_is_setup** **(** **)** |const|
|
|
|
|
Returns whether this modification has been successfully setup or not.
|
|
|
|
----
|
|
|
|
.. _class_SkeletonModification3D_method_get_modification_stack:
|
|
|
|
- :ref:`SkeletonModificationStack3D<class_SkeletonModificationStack3D>` **get_modification_stack** **(** **)**
|
|
|
|
Returns the :ref:`SkeletonModificationStack3D<class_SkeletonModificationStack3D>` that this modification is bound to. Through the modification stack, you can access the Skeleton3D the modification is operating on.
|
|
|
|
----
|
|
|
|
.. _class_SkeletonModification3D_method_set_is_setup:
|
|
|
|
- void **set_is_setup** **(** :ref:`bool<class_bool>` is_setup **)**
|
|
|
|
Manually allows you to set the setup state of the modification. This function should only rarely be used, as the :ref:`SkeletonModificationStack3D<class_SkeletonModificationStack3D>` the modification is bound to should handle setting the modification up.
|
|
|
|
.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
|
|
.. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
|
|
.. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`
|
|
.. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)`
|
|
.. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`
|
|
.. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)`
|