123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170 |
- :github_url: hide
- .. Generated automatically by doc/tools/make_rst.py in Godot's source tree.
- .. DO NOT EDIT THIS FILE, but the SkeletonModification2D.xml source instead.
- .. The source is found in doc/classes or modules/<name>/doc_classes.
- .. _class_SkeletonModification2D:
- SkeletonModification2D
- ======================
- **Inherits:** :ref:`Resource<class_Resource>` **<** :ref:`RefCounted<class_RefCounted>` **<** :ref:`Object<class_Object>`
- **Inherited By:** :ref:`SkeletonModification2DCCDIK<class_SkeletonModification2DCCDIK>`, :ref:`SkeletonModification2DFABRIK<class_SkeletonModification2DFABRIK>`, :ref:`SkeletonModification2DJiggle<class_SkeletonModification2DJiggle>`, :ref:`SkeletonModification2DLookAt<class_SkeletonModification2DLookAt>`, :ref:`SkeletonModification2DPhysicalBones<class_SkeletonModification2DPhysicalBones>`, :ref:`SkeletonModification2DStackHolder<class_SkeletonModification2DStackHolder>`, :ref:`SkeletonModification2DTwoBoneIK<class_SkeletonModification2DTwoBoneIK>`
- A resource that operates on :ref:`Bone2D<class_Bone2D>` nodes in a :ref:`Skeleton2D<class_Skeleton2D>`.
- Description
- -----------
- This resource provides an interface that can be expanded so code that operates on :ref:`Bone2D<class_Bone2D>` nodes in a :ref:`Skeleton2D<class_Skeleton2D>` 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_SkeletonModification2D_property_enabled>` | ``true`` |
- +-------------------------+-----------------------------------------------------------------------------+----------+
- | :ref:`int<class_int>` | :ref:`execution_mode<class_SkeletonModification2D_property_execution_mode>` | ``0`` |
- +-------------------------+-----------------------------------------------------------------------------+----------+
- Methods
- -------
- +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
- | void | :ref:`_draw_editor_gizmo<class_SkeletonModification2D_method__draw_editor_gizmo>` **(** **)** |virtual| |
- +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
- | void | :ref:`_execute<class_SkeletonModification2D_method__execute>` **(** :ref:`float<class_float>` delta **)** |virtual| |
- +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
- | void | :ref:`_setup_modification<class_SkeletonModification2D_method__setup_modification>` **(** :ref:`SkeletonModificationStack2D<class_SkeletonModificationStack2D>` modification_stack **)** |virtual| |
- +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
- | :ref:`float<class_float>` | :ref:`clamp_angle<class_SkeletonModification2D_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_editor_draw_gizmo<class_SkeletonModification2D_method_get_editor_draw_gizmo>` **(** **)** |const| |
- +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
- | :ref:`bool<class_bool>` | :ref:`get_is_setup<class_SkeletonModification2D_method_get_is_setup>` **(** **)** |const| |
- +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
- | :ref:`SkeletonModificationStack2D<class_SkeletonModificationStack2D>` | :ref:`get_modification_stack<class_SkeletonModification2D_method_get_modification_stack>` **(** **)** |
- +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
- | void | :ref:`set_editor_draw_gizmo<class_SkeletonModification2D_method_set_editor_draw_gizmo>` **(** :ref:`bool<class_bool>` draw_gizmo **)** |
- +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
- | void | :ref:`set_is_setup<class_SkeletonModification2D_method_set_is_setup>` **(** :ref:`bool<class_bool>` is_setup **)** |
- +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
- Property Descriptions
- ---------------------
- .. _class_SkeletonModification2D_property_enabled:
- - :ref:`bool<class_bool>` **enabled**
- +-----------+--------------------+
- | *Default* | ``true`` |
- +-----------+--------------------+
- | *Setter* | set_enabled(value) |
- +-----------+--------------------+
- | *Getter* | get_enabled() |
- +-----------+--------------------+
- If ``true``, the modification's :ref:`_execute<class_SkeletonModification2D_method__execute>` function will be called by the :ref:`SkeletonModificationStack2D<class_SkeletonModificationStack2D>`.
- ----
- .. _class_SkeletonModification2D_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_SkeletonModification2D_method__draw_editor_gizmo:
- - void **_draw_editor_gizmo** **(** **)** |virtual|
- Used for drawing **editor-only** modification gizmos. This function will only be called in the Godot editor and can be overridden to draw custom gizmos.
- \ **Note:** You will need to use the Skeleton2D from :ref:`SkeletonModificationStack2D.get_skeleton<class_SkeletonModificationStack2D_method_get_skeleton>` and it's draw functions, as the ``SkeletonModification2D`` resource cannot draw on its own.
- ----
- .. _class_SkeletonModification2D_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_SkeletonModification2D_method__setup_modification:
- - void **_setup_modification** **(** :ref:`SkeletonModificationStack2D<class_SkeletonModificationStack2D>` modification_stack **)** |virtual|
- Called when the modification is setup. This is where the modification performs initialization.
- ----
- .. _class_SkeletonModification2D_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_SkeletonModification2D_method_get_editor_draw_gizmo:
- - :ref:`bool<class_bool>` **get_editor_draw_gizmo** **(** **)** |const|
- Returns whether this modification will call :ref:`_draw_editor_gizmo<class_SkeletonModification2D_method__draw_editor_gizmo>` in the Godot editor to draw modification-specific gizmos.
- ----
- .. _class_SkeletonModification2D_method_get_is_setup:
- - :ref:`bool<class_bool>` **get_is_setup** **(** **)** |const|
- Returns whether this modification has been successfully setup or not.
- ----
- .. _class_SkeletonModification2D_method_get_modification_stack:
- - :ref:`SkeletonModificationStack2D<class_SkeletonModificationStack2D>` **get_modification_stack** **(** **)**
- Returns the :ref:`SkeletonModificationStack2D<class_SkeletonModificationStack2D>` that this modification is bound to. Through the modification stack, you can access the Skeleton3D the modification is operating on.
- ----
- .. _class_SkeletonModification2D_method_set_editor_draw_gizmo:
- - void **set_editor_draw_gizmo** **(** :ref:`bool<class_bool>` draw_gizmo **)**
- Sets whether this modification will call :ref:`_draw_editor_gizmo<class_SkeletonModification2D_method__draw_editor_gizmo>` in the Godot editor to draw modification-specific gizmos.
- ----
- .. _class_SkeletonModification2D_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:`SkeletonModificationStack2D<class_SkeletonModificationStack2D>` 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.)`
|