diff --git a/classes/class_@globalscope.rst b/classes/class_@globalscope.rst index 59633a2a600..28eec7c17f3 100644 --- a/classes/class_@globalscope.rst +++ b/classes/class_@globalscope.rst @@ -3485,9 +3485,9 @@ Additionally, other keywords can be included: ``"exp"`` for exponential range ed :ref:`PropertyHint` **PROPERTY_HINT_ENUM** = ``2`` -Hints that an :ref:`int` or :ref:`String` property is an enumerated value to pick in a list specified via a hint string. +Hints that an :ref:`int`, :ref:`String`, or :ref:`StringName` property is an enumerated value to pick in a list specified via a hint string. -The hint string is a comma separated list of names such as ``"Hello,Something,Else"``. Whitespaces are **not** removed from either end of a name. For integer properties, the first name in the list has value 0, the next 1, and so on. Explicit values can also be specified by appending ``:integer`` to the name, e.g. ``"Zero,One,Three:3,Four,Six:6"``. +The hint string is a comma separated list of names such as ``"Hello,Something,Else"``. Whitespace is **not** removed from either end of a name. For integer properties, the first name in the list has value 0, the next 1, and so on. Explicit values can also be specified by appending ``:integer`` to the name, e.g. ``"Zero,One,Three:3,Four,Six:6"``. .. _class_@GlobalScope_constant_PROPERTY_HINT_ENUM_SUGGESTION: @@ -3495,7 +3495,7 @@ The hint string is a comma separated list of names such as ``"Hello,Something,El :ref:`PropertyHint` **PROPERTY_HINT_ENUM_SUGGESTION** = ``3`` -Hints that a :ref:`String` property can be an enumerated value to pick in a list specified via a hint string such as ``"Hello,Something,Else"``. +Hints that a :ref:`String` or :ref:`StringName` property can be an enumerated value to pick in a list specified via a hint string such as ``"Hello,Something,Else"``. See :ref:`PROPERTY_HINT_ENUM` for details. Unlike :ref:`PROPERTY_HINT_ENUM`, a property with this hint still accepts arbitrary values and can be empty. The list of values serves to suggest possible values. @@ -3523,7 +3523,7 @@ Hints that a vector property should allow its components to be linked. For examp Hints that an :ref:`int` property is a bitmask with named bit flags. -The hint string is a comma separated list of names such as ``"Bit0,Bit1,Bit2,Bit3"``. Whitespaces are **not** removed from either end of a name. The first name in the list has value 1, the next 2, then 4, 8, 16 and so on. Explicit values can also be specified by appending ``:integer`` to the name, e.g. ``"A:4,B:8,C:16"``. You can also combine several flags (``"A:4,B:8,AB:12,C:16"``). +The hint string is a comma separated list of names such as ``"Bit0,Bit1,Bit2,Bit3"``. Whitespace is **not** removed from either end of a name. The first name in the list has value 1, the next 2, then 4, 8, 16 and so on. Explicit values can also be specified by appending ``:integer`` to the name, e.g. ``"A:4,B:8,C:16"``. You can also combine several flags (``"A:4,B:8,AB:12,C:16"``). \ **Note:** A flag value must be at least ``1`` and at most ``2 ** 32 - 1``. @@ -4085,7 +4085,23 @@ If property has ``nil`` as default value, its type will be :ref:`Variant` **PROPERTY_USAGE_ARRAY** = ``262144`` -The property is an array. +The property is the element count of a property array, i.e. a list of groups of related properties. Properties defined with this usage also need a specific ``class_name`` field in the form of ``label,prefix``. The field may also include additional comma-separated options: + +- ``page_size=N``: Overrides :ref:`EditorSettings.interface/inspector/max_array_dictionary_items_per_page` for this array. + +- ``add_button_text=text``: The text displayed by the "Add Element" button. + +- ``static``: The elements can't be re-arranged. + +- ``const``: New elements can't be added. + +- ``numbered``: An index will appear next to each element. + +- ``unfoldable``: The array can't be folded. + +- ``swap_method=method_name``: The method that will be called when two elements switch places. The method should take 2 :ref:`int` parameters, which will be indices of the elements being swapped. + +Note that making a full-fledged property array requires boilerplate code involving :ref:`Object._get_property_list()`. .. _class_@GlobalScope_constant_PROPERTY_USAGE_ALWAYS_DUPLICATE: diff --git a/classes/class_ccdik3d.rst b/classes/class_ccdik3d.rst new file mode 100644 index 00000000000..508cae57150 --- /dev/null +++ b/classes/class_ccdik3d.rst @@ -0,0 +1,36 @@ +:github_url: hide + +.. DO NOT EDIT THIS FILE!!! +.. Generated automatically from Godot engine sources. +.. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py. +.. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/CCDIK3D.xml. + +.. _class_CCDIK3D: + +CCDIK3D +======= + +**Inherits:** :ref:`IterateIK3D` **<** :ref:`ChainIK3D` **<** :ref:`IKModifier3D` **<** :ref:`SkeletonModifier3D` **<** :ref:`Node3D` **<** :ref:`Node` **<** :ref:`Object` + +Rotation based cyclic coordinate descent inverse kinematics solver. + +.. rst-class:: classref-introduction-group + +Description +----------- + +**CCDIK3D** is rotation based IK, enabling fast and effective tracking even with large joint rotations. It's especially suitable for chains with limitations, providing smoother and more stable target tracking compared to :ref:`FABRIK3D`. + +The resulting twist around the forward vector will always be kept from the previous pose. + +\ **Note:** When the target is close to the root, it can cause unnatural movement, including joint flips and oscillations. + +.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` +.. |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.)` +.. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)` +.. |void| replace:: :abbr:`void (No return value.)` diff --git a/classes/class_chainik3d.rst b/classes/class_chainik3d.rst new file mode 100644 index 00000000000..2e13bc3cba6 --- /dev/null +++ b/classes/class_chainik3d.rst @@ -0,0 +1,291 @@ +:github_url: hide + +.. DO NOT EDIT THIS FILE!!! +.. Generated automatically from Godot engine sources. +.. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py. +.. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/ChainIK3D.xml. + +.. _class_ChainIK3D: + +ChainIK3D +========= + +**Inherits:** :ref:`IKModifier3D` **<** :ref:`SkeletonModifier3D` **<** :ref:`Node3D` **<** :ref:`Node` **<** :ref:`Object` + +**Inherited By:** :ref:`IterateIK3D`, :ref:`SplineIK3D` + +A :ref:`SkeletonModifier3D` to apply inverse kinematics to bone chains containing an arbitrary number of bones. + +.. rst-class:: classref-introduction-group + +Description +----------- + +Base class of :ref:`SkeletonModifier3D` that automatically generates a joint list from the bones between the root bone and the end bone. + +.. rst-class:: classref-reftable-group + +Methods +------- + +.. table:: + :widths: auto + + +-------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_end_bone`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`BoneDirection` | :ref:`get_end_bone_direction`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`get_end_bone_length`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_end_bone_name`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_joint_bone`\ (\ index\: :ref:`int`, joint\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_joint_bone_name`\ (\ index\: :ref:`int`, joint\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_joint_count`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_root_bone`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_root_bone_name`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_end_bone_extended`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_end_bone`\ (\ index\: :ref:`int`, bone\: :ref:`int`\ ) | + +-------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_end_bone_direction`\ (\ index\: :ref:`int`, bone_direction\: :ref:`BoneDirection`\ ) | + +-------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_end_bone_length`\ (\ index\: :ref:`int`, length\: :ref:`float`\ ) | + +-------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_end_bone_name`\ (\ index\: :ref:`int`, bone_name\: :ref:`String`\ ) | + +-------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_extend_end_bone`\ (\ index\: :ref:`int`, enabled\: :ref:`bool`\ ) | + +-------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_root_bone`\ (\ index\: :ref:`int`, bone\: :ref:`int`\ ) | + +-------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_root_bone_name`\ (\ index\: :ref:`int`, bone_name\: :ref:`String`\ ) | + +-------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Method Descriptions +------------------- + +.. _class_ChainIK3D_method_get_end_bone: + +.. rst-class:: classref-method + +:ref:`int` **get_end_bone**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the end bone index of the bone chain. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ChainIK3D_method_get_end_bone_direction: + +.. rst-class:: classref-method + +:ref:`BoneDirection` **get_end_bone_direction**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the tail direction of the end bone of the bone chain when :ref:`is_end_bone_extended()` is ``true``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ChainIK3D_method_get_end_bone_length: + +.. rst-class:: classref-method + +:ref:`float` **get_end_bone_length**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the end bone tail length of the bone chain when :ref:`is_end_bone_extended()` is ``true``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ChainIK3D_method_get_end_bone_name: + +.. rst-class:: classref-method + +:ref:`String` **get_end_bone_name**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the end bone name of the bone chain. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ChainIK3D_method_get_joint_bone: + +.. rst-class:: classref-method + +:ref:`int` **get_joint_bone**\ (\ index\: :ref:`int`, joint\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the bone index at ``joint`` in the bone chain's joint list. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ChainIK3D_method_get_joint_bone_name: + +.. rst-class:: classref-method + +:ref:`String` **get_joint_bone_name**\ (\ index\: :ref:`int`, joint\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the bone name at ``joint`` in the bone chain's joint list. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ChainIK3D_method_get_joint_count: + +.. rst-class:: classref-method + +:ref:`int` **get_joint_count**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the joint count of the bone chain's joint list. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ChainIK3D_method_get_root_bone: + +.. rst-class:: classref-method + +:ref:`int` **get_root_bone**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the root bone index of the bone chain. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ChainIK3D_method_get_root_bone_name: + +.. rst-class:: classref-method + +:ref:`String` **get_root_bone_name**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the root bone name of the bone chain. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ChainIK3D_method_is_end_bone_extended: + +.. rst-class:: classref-method + +:ref:`bool` **is_end_bone_extended**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns ``true`` if the end bone is extended to have a tail. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ChainIK3D_method_set_end_bone: + +.. rst-class:: classref-method + +|void| **set_end_bone**\ (\ index\: :ref:`int`, bone\: :ref:`int`\ ) :ref:`🔗` + +Sets the end bone index of the bone chain. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ChainIK3D_method_set_end_bone_direction: + +.. rst-class:: classref-method + +|void| **set_end_bone_direction**\ (\ index\: :ref:`int`, bone_direction\: :ref:`BoneDirection`\ ) :ref:`🔗` + +Sets the end bone tail direction of the bone chain when :ref:`is_end_bone_extended()` is ``true``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ChainIK3D_method_set_end_bone_length: + +.. rst-class:: classref-method + +|void| **set_end_bone_length**\ (\ index\: :ref:`int`, length\: :ref:`float`\ ) :ref:`🔗` + +Sets the end bone tail length of the bone chain when :ref:`is_end_bone_extended()` is ``true``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ChainIK3D_method_set_end_bone_name: + +.. rst-class:: classref-method + +|void| **set_end_bone_name**\ (\ index\: :ref:`int`, bone_name\: :ref:`String`\ ) :ref:`🔗` + +Sets the end bone name of the bone chain. + +\ **Note:** The end bone must be the root bone or a child of the root bone. If they are the same, the tail must be extended by :ref:`set_extend_end_bone()` to modify the bone. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ChainIK3D_method_set_extend_end_bone: + +.. rst-class:: classref-method + +|void| **set_extend_end_bone**\ (\ index\: :ref:`int`, enabled\: :ref:`bool`\ ) :ref:`🔗` + +If ``enabled`` is ``true``, the end bone is extended to have a tail. + +The extended tail config is allocated to the last element in the joint list. In other words, if you set ``enabled`` to ``false``, the config of the last element in the joint list has no effect in the simulated result. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ChainIK3D_method_set_root_bone: + +.. rst-class:: classref-method + +|void| **set_root_bone**\ (\ index\: :ref:`int`, bone\: :ref:`int`\ ) :ref:`🔗` + +Sets the root bone index of the bone chain. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ChainIK3D_method_set_root_bone_name: + +.. rst-class:: classref-method + +|void| **set_root_bone_name**\ (\ index\: :ref:`int`, bone_name\: :ref:`String`\ ) :ref:`🔗` + +Sets the root bone name of the bone chain. + +.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` +.. |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.)` +.. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)` +.. |void| replace:: :abbr:`void (No return value.)` diff --git a/classes/class_characterbody2d.rst b/classes/class_characterbody2d.rst index 9a15ef589e5..4855d1b665a 100644 --- a/classes/class_characterbody2d.rst +++ b/classes/class_characterbody2d.rst @@ -530,7 +530,7 @@ Returns the last motion applied to the **CharacterBody2D** during the last call :ref:`KinematicCollision2D` **get_last_slide_collision**\ (\ ) :ref:`🔗` -Returns a :ref:`KinematicCollision2D`, which contains information about the latest collision that occurred during the last call to :ref:`move_and_slide()`. +Returns a :ref:`KinematicCollision2D` if a collision occurred. The returned value contains information about the latest collision that occurred during the last call to :ref:`move_and_slide()`. Returns ``null`` if no collision occurred. See also :ref:`get_slide_collision()`. .. rst-class:: classref-item-separator @@ -578,7 +578,7 @@ Returns the current real velocity since the last call to :ref:`move_and_slide()< :ref:`KinematicCollision2D` **get_slide_collision**\ (\ slide_idx\: :ref:`int`\ ) :ref:`🔗` -Returns a :ref:`KinematicCollision2D`, which contains information about a collision that occurred during the last call to :ref:`move_and_slide()`. Since the body can collide several times in a single call to :ref:`move_and_slide()`, you must specify the index of the collision in the range 0 to (:ref:`get_slide_collision_count()` - 1). +Returns a :ref:`KinematicCollision2D`, which contains information about a collision that occurred during the last call to :ref:`move_and_slide()`. Since the body can collide several times in a single call to :ref:`move_and_slide()`, you must specify the index of the collision in the range 0 to (:ref:`get_slide_collision_count()` - 1). See also :ref:`get_last_slide_collision()`. \ **Example:** Iterate through the collisions with a ``for`` loop: diff --git a/classes/class_characterbody3d.rst b/classes/class_characterbody3d.rst index 4b7b1252356..f98754ca13f 100644 --- a/classes/class_characterbody3d.rst +++ b/classes/class_characterbody3d.rst @@ -534,7 +534,7 @@ Returns the last motion applied to the **CharacterBody3D** during the last call :ref:`KinematicCollision3D` **get_last_slide_collision**\ (\ ) :ref:`🔗` -Returns a :ref:`KinematicCollision3D`, which contains information about the latest collision that occurred during the last call to :ref:`move_and_slide()`. +Returns a :ref:`KinematicCollision3D` if a collision occurred. The returned value contains information about the latest collision that occurred during the last call to :ref:`move_and_slide()`. Returns ``null`` if no collision occurred. See also :ref:`get_slide_collision()`. .. rst-class:: classref-item-separator @@ -594,7 +594,7 @@ Returns the current real velocity since the last call to :ref:`move_and_slide()< :ref:`KinematicCollision3D` **get_slide_collision**\ (\ slide_idx\: :ref:`int`\ ) :ref:`🔗` -Returns a :ref:`KinematicCollision3D`, which contains information about a collision that occurred during the last call to :ref:`move_and_slide()`. Since the body can collide several times in a single call to :ref:`move_and_slide()`, you must specify the index of the collision in the range 0 to (:ref:`get_slide_collision_count()` - 1). +Returns a :ref:`KinematicCollision3D`, which contains information about a collision that occurred during the last call to :ref:`move_and_slide()`. Since the body can collide several times in a single call to :ref:`move_and_slide()`, you must specify the index of the collision in the range 0 to (:ref:`get_slide_collision_count()` - 1). See also :ref:`get_last_slide_collision()`. .. rst-class:: classref-item-separator diff --git a/classes/class_codeedit.rst b/classes/class_codeedit.rst index d100ff934cd..96dfdf7b0a0 100644 --- a/classes/class_codeedit.rst +++ b/classes/class_codeedit.rst @@ -56,6 +56,8 @@ Properties +----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ | :ref:`bool` | :ref:`gutters_draw_line_numbers` | ``false`` | +----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ + | :ref:`int` | :ref:`gutters_line_numbers_min_digits` | ``3`` | + +----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ | :ref:`bool` | :ref:`gutters_zero_pad_line_numbers` | ``false`` | +----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ | :ref:`bool` | :ref:`indent_automatic` | ``false`` | @@ -714,6 +716,23 @@ If ``true``, the line number gutter is drawn. Line numbers start at ``1`` and ar ---- +.. _class_CodeEdit_property_gutters_line_numbers_min_digits: + +.. rst-class:: classref-property + +:ref:`int` **gutters_line_numbers_min_digits** = ``3`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_line_numbers_min_digits**\ (\ value\: :ref:`int`\ ) +- :ref:`int` **get_line_numbers_min_digits**\ (\ ) + +The minimum width in digits reserved for the line number gutter. + +.. rst-class:: classref-item-separator + +---- + .. _class_CodeEdit_property_gutters_zero_pad_line_numbers: .. rst-class:: classref-property diff --git a/classes/class_dictionary.rst b/classes/class_dictionary.rst index c678cbba31b..dddc4273c74 100644 --- a/classes/class_dictionary.rst +++ b/classes/class_dictionary.rst @@ -894,7 +894,7 @@ Returns ``true`` if the two dictionaries contain the same keys and values, inner :ref:`bool` **set**\ (\ key\: :ref:`Variant`, value\: :ref:`Variant`\ ) :ref:`🔗` -Sets the value of the element at the given ``key`` to the given ``value``. This is the same as using the ``[]`` operator (``dict[key] = value``). +Sets the value of the element at the given ``key`` to the given ``value``. This is the same as using the ``[]`` operator (``dict[key] = value``). Returns ``true`` if the value is set successfully. Fails and returns ``false`` if the dictionary is read-only, or if ``key`` and ``value`` don't match the dictionary's types. .. rst-class:: classref-item-separator diff --git a/classes/class_editorinterface.rst b/classes/class_editorinterface.rst index e649e74ac88..1217ba695eb 100644 --- a/classes/class_editorinterface.rst +++ b/classes/class_editorinterface.rst @@ -82,6 +82,8 @@ Methods +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Node` | :ref:`get_edited_scene_root`\ (\ ) |const| | +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_editor_language`\ (\ ) |const| | + +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`VBoxContainer` | :ref:`get_editor_main_screen`\ (\ ) |const| | +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`EditorPaths` | :ref:`get_editor_paths`\ (\ ) |const| | @@ -375,6 +377,18 @@ Returns the edited (current) scene's root :ref:`Node`. ---- +.. _class_EditorInterface_method_get_editor_language: + +.. rst-class:: classref-method + +:ref:`String` **get_editor_language**\ (\ ) |const| :ref:`🔗` + +Returns the language currently used for the editor interface. + +.. rst-class:: classref-item-separator + +---- + .. _class_EditorInterface_method_get_editor_main_screen: .. rst-class:: classref-method diff --git a/classes/class_editorplugin.rst b/classes/class_editorplugin.rst index 8437ba58dc7..6b7a61c67e1 100644 --- a/classes/class_editorplugin.rst +++ b/classes/class_editorplugin.rst @@ -1145,7 +1145,7 @@ Adds a plugin to the context menu. ``slot`` is the context menu where the plugin :ref:`Button` **add_control_to_bottom_panel**\ (\ control\: :ref:`Control`, title\: :ref:`String`, shortcut\: :ref:`Shortcut` = null\ ) :ref:`🔗` -Adds a control to the bottom panel (together with Output, Debug, Animation, etc.). Returns a reference to the button added. It's up to you to hide/show the button when needed. When your plugin is deactivated, make sure to remove your custom control with :ref:`remove_control_from_bottom_panel()` and free it with :ref:`Node.queue_free()`. +Adds a control to the bottom panel (together with Output, Debug, Animation, etc.). Returns a reference to a button that is outside the scene tree. It's up to you to hide/show the button when needed. When your plugin is deactivated, make sure to remove your custom control with :ref:`remove_control_from_bottom_panel()` and free it with :ref:`Node.queue_free()`. Optionally, you can specify a shortcut parameter. When pressed, this shortcut will toggle the bottom panel's visibility. See the default editor bottom panel shortcuts in the Editor Settings for inspiration. Per convention, they all use :kbd:`Alt` modifier. diff --git a/classes/class_editorsettings.rst b/classes/class_editorsettings.rst index 41f0ada6c2c..a2875c6c0ce 100644 --- a/classes/class_editorsettings.rst +++ b/classes/class_editorsettings.rst @@ -229,6 +229,8 @@ Properties +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Color` | :ref:`editors/3d_gizmos/gizmo_colors/gridmap_grid` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Color` | :ref:`editors/3d_gizmos/gizmo_colors/ik_chain` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Color` | :ref:`editors/3d_gizmos/gizmo_colors/instantiated` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Color` | :ref:`editors/3d_gizmos/gizmo_colors/joint` | @@ -2077,6 +2079,18 @@ The 3D editor gizmo color for the :ref:`GridMap` grid. ---- +.. _class_EditorSettings_property_editors/3d_gizmos/gizmo_colors/ik_chain: + +.. rst-class:: classref-property + +:ref:`Color` **editors/3d_gizmos/gizmo_colors/ik_chain** :ref:`🔗` + +The 3D editor gizmo color for the :ref:`IKModifier3D` guides. + +.. rst-class:: classref-item-separator + +---- + .. _class_EditorSettings_property_editors/3d_gizmos/gizmo_colors/instantiated: .. rst-class:: classref-property @@ -3658,7 +3672,7 @@ During a drag-and-drop, this is how long to wait over a UI element before it tri :ref:`String` **interface/editor/editor_language** :ref:`🔗` -The language to use for the editor interface. +The language to use for the editor interface. If set to **Auto**, the language is automatically determined based on the system locale. See also :ref:`EditorInterface.get_editor_language()`. Translations are provided by the community. If you spot a mistake, `contribute to editor translations on Weblate! `__ diff --git a/classes/class_editortranslationparserplugin.rst b/classes/class_editortranslationparserplugin.rst index 49955624477..b04a22a4502 100644 --- a/classes/class_editortranslationparserplugin.rst +++ b/classes/class_editortranslationparserplugin.rst @@ -23,9 +23,9 @@ Description The return value should be an :ref:`Array` of :ref:`PackedStringArray`\ s, one for each extracted translatable string. Each entry should contain ``[msgid, msgctxt, msgid_plural, comment, source_line]``, where all except ``msgid`` are optional. Empty strings will be ignored. -The extracted strings will be written into a POT file selected by user under "POT Generation" in "Localization" tab in "Project Settings" menu. +The extracted strings will be written into a translation template file selected by user under "Template Generation" in "Localization" tab in "Project Settings" menu. -Below shows an example of a custom parser that extracts strings from a CSV file to write into a POT. +Below shows an example of a custom parser that extracts strings from a CSV file to write into a template. .. tabs:: diff --git a/classes/class_environment.rst b/classes/class_environment.rst index 0c61a3bfc4f..ae6ca1bbaa1 100644 --- a/classes/class_environment.rst +++ b/classes/class_environment.rst @@ -1764,7 +1764,7 @@ Sets the strength of the additional level of detail for the screen-space ambient If ``true``, the screen-space ambient occlusion effect is enabled. This darkens objects' corners and cavities to simulate ambient light not reaching the entire object as in real life. This works well for small, dynamic objects, but baked lighting or ambient occlusion textures will do a better job at displaying ambient occlusion on large static objects. Godot uses a form of SSAO called Adaptive Screen Space Ambient Occlusion which is itself a form of Horizon Based Ambient Occlusion. -\ **Note:** SSAO is only supported in the Forward+ rendering method, not Mobile or Compatibility. +\ **Note:** SSAO is only supported in the Forward+ and Compatibility rendering methods, not Mobile. .. rst-class:: classref-item-separator diff --git a/classes/class_fabrik3d.rst b/classes/class_fabrik3d.rst new file mode 100644 index 00000000000..8b8875428f3 --- /dev/null +++ b/classes/class_fabrik3d.rst @@ -0,0 +1,36 @@ +:github_url: hide + +.. DO NOT EDIT THIS FILE!!! +.. Generated automatically from Godot engine sources. +.. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py. +.. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/FABRIK3D.xml. + +.. _class_FABRIK3D: + +FABRIK3D +======== + +**Inherits:** :ref:`IterateIK3D` **<** :ref:`ChainIK3D` **<** :ref:`IKModifier3D` **<** :ref:`SkeletonModifier3D` **<** :ref:`Node3D` **<** :ref:`Node` **<** :ref:`Object` + +Position based forward and backward reaching inverse kinematics solver. + +.. rst-class:: classref-introduction-group + +Description +----------- + +**FABRIK3D** is position based IK, allowing precise and accurate tracking of targets. It's ideal for simple chains without limitations. + +The resulting twist around the forward vector will always be kept from the previous pose. + +\ **Note:** When the target is close to the root, it tends to produce zig-zag patterns, resulting in unnatural visual movement. + +.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` +.. |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.)` +.. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)` +.. |void| replace:: :abbr:`void (No return value.)` diff --git a/classes/class_ikmodifier3d.rst b/classes/class_ikmodifier3d.rst new file mode 100644 index 00000000000..224c7f4dd83 --- /dev/null +++ b/classes/class_ikmodifier3d.rst @@ -0,0 +1,107 @@ +:github_url: hide + +.. DO NOT EDIT THIS FILE!!! +.. Generated automatically from Godot engine sources. +.. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py. +.. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/IKModifier3D.xml. + +.. _class_IKModifier3D: + +IKModifier3D +============ + +**Inherits:** :ref:`SkeletonModifier3D` **<** :ref:`Node3D` **<** :ref:`Node` **<** :ref:`Object` + +**Inherited By:** :ref:`ChainIK3D`, :ref:`TwoBoneIK3D` + +A node for inverse kinematics which may modify more than one bone. + +.. rst-class:: classref-introduction-group + +Description +----------- + +Base class of :ref:`SkeletonModifier3D`\ s that has some joint lists and applies inverse kinematics. This class has some structs, enums, and helper methods which are useful to solve inverse kinematics. + +\ **Note:** The IK classes that extend this handle rotation only, with bone lengths cached. It means that a position movement between processed chains can cause unintended movement. + +.. rst-class:: classref-reftable-group + +Methods +------- + +.. table:: + :widths: auto + + +-----------------------+------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`clear_settings`\ (\ ) | + +-----------------------+------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_setting_count`\ (\ ) |const| | + +-----------------------+------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`reset`\ (\ ) | + +-----------------------+------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_setting_count`\ (\ count\: :ref:`int`\ ) | + +-----------------------+------------------------------------------------------------------------------------------------------------+ + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Method Descriptions +------------------- + +.. _class_IKModifier3D_method_clear_settings: + +.. rst-class:: classref-method + +|void| **clear_settings**\ (\ ) :ref:`🔗` + +Clears all settings. + +.. rst-class:: classref-item-separator + +---- + +.. _class_IKModifier3D_method_get_setting_count: + +.. rst-class:: classref-method + +:ref:`int` **get_setting_count**\ (\ ) |const| :ref:`🔗` + +Returns the number of settings. + +.. rst-class:: classref-item-separator + +---- + +.. _class_IKModifier3D_method_reset: + +.. rst-class:: classref-method + +|void| **reset**\ (\ ) :ref:`🔗` + +Resets a state with respect to the current bone pose. + +.. rst-class:: classref-item-separator + +---- + +.. _class_IKModifier3D_method_set_setting_count: + +.. rst-class:: classref-method + +|void| **set_setting_count**\ (\ count\: :ref:`int`\ ) :ref:`🔗` + +Sets the number of settings. + +.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` +.. |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.)` +.. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)` +.. |void| replace:: :abbr:`void (No return value.)` diff --git a/classes/class_image.rst b/classes/class_image.rst index 82629d92fb8..2c3b6254318 100644 --- a/classes/class_image.rst +++ b/classes/class_image.rst @@ -1913,6 +1913,10 @@ Sets the :ref:`Color` of the pixel at ``(x, y)`` to ``color``. This is the same as :ref:`set_pixelv()`, but with a two integer arguments instead of a :ref:`Vector2i` argument. +\ **Note:** Depending on the image's format, the color set here may be clamped or lose precision. Do not assume the color returned by :ref:`get_pixel()` to be identical to the one set here; any comparisons will likely need to use an approximation like :ref:`Color.is_equal_approx()`. + +\ **Note:** On grayscale image formats, only the red channel of ``color`` is used (and alpha if relevant). The green and blue channels are ignored. + .. rst-class:: classref-item-separator ---- @@ -1948,6 +1952,10 @@ Sets the :ref:`Color` of the pixel at ``point`` to ``color``. This is the same as :ref:`set_pixel()`, but with a :ref:`Vector2i` argument instead of two integer arguments. +\ **Note:** Depending on the image's format, the color set here may be clamped or lose precision. Do not assume the color returned by :ref:`get_pixelv()` to be identical to the one set here; any comparisons will likely need to use an approximation like :ref:`Color.is_equal_approx()`. + +\ **Note:** On grayscale image formats, only the red channel of ``color`` is used (and alpha if relevant). The green and blue channels are ignored. + .. rst-class:: classref-item-separator ---- diff --git a/classes/class_iterateik3d.rst b/classes/class_iterateik3d.rst new file mode 100644 index 00000000000..23551aa7190 --- /dev/null +++ b/classes/class_iterateik3d.rst @@ -0,0 +1,364 @@ +:github_url: hide + +.. DO NOT EDIT THIS FILE!!! +.. Generated automatically from Godot engine sources. +.. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py. +.. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/IterateIK3D.xml. + +.. _class_IterateIK3D: + +IterateIK3D +=========== + +**Inherits:** :ref:`ChainIK3D` **<** :ref:`IKModifier3D` **<** :ref:`SkeletonModifier3D` **<** :ref:`Node3D` **<** :ref:`Node` **<** :ref:`Object` + +**Inherited By:** :ref:`CCDIK3D`, :ref:`FABRIK3D`, :ref:`JacobianIK3D` + +A :ref:`SkeletonModifier3D` to approach the goal by repeating small rotations. + +.. rst-class:: classref-introduction-group + +Description +----------- + +Base class of :ref:`SkeletonModifier3D` to approach the goal by repeating small rotations. + +Each bone chain (setting) has one effector, which is processed in order of the setting list. You can set some limitations for each joint. + +.. rst-class:: classref-reftable-group + +Properties +---------- + +.. table:: + :widths: auto + + +---------------------------+----------------------------------------------------------------------------+-----------------+ + | :ref:`float` | :ref:`angular_delta_limit` | ``0.034906585`` | + +---------------------------+----------------------------------------------------------------------------+-----------------+ + | :ref:`int` | :ref:`max_iterations` | ``4`` | + +---------------------------+----------------------------------------------------------------------------+-----------------+ + | :ref:`float` | :ref:`min_distance` | ``0.001`` | + +---------------------------+----------------------------------------------------------------------------+-----------------+ + | :ref:`int` | :ref:`setting_count` | ``0`` | + +---------------------------+----------------------------------------------------------------------------+-----------------+ + +.. rst-class:: classref-reftable-group + +Methods +------- + +.. table:: + :widths: auto + + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`JointLimitation3D` | :ref:`get_joint_limitation`\ (\ index\: :ref:`int`, joint\: :ref:`int`\ ) |const| | + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`SecondaryDirection` | :ref:`get_joint_limitation_right_axis`\ (\ index\: :ref:`int`, joint\: :ref:`int`\ ) |const| | + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector3` | :ref:`get_joint_limitation_right_axis_vector`\ (\ index\: :ref:`int`, joint\: :ref:`int`\ ) |const| | + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Quaternion` | :ref:`get_joint_limitation_rotation_offset`\ (\ index\: :ref:`int`, joint\: :ref:`int`\ ) |const| | + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RotationAxis` | :ref:`get_joint_rotation_axis`\ (\ index\: :ref:`int`, joint\: :ref:`int`\ ) |const| | + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector3` | :ref:`get_joint_rotation_axis_vector`\ (\ index\: :ref:`int`, joint\: :ref:`int`\ ) |const| | + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`NodePath` | :ref:`get_target_node`\ (\ index\: :ref:`int`\ ) |const| | + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_joint_limitation`\ (\ index\: :ref:`int`, joint\: :ref:`int`, limitation\: :ref:`JointLimitation3D`\ ) | + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_joint_limitation_right_axis`\ (\ index\: :ref:`int`, joint\: :ref:`int`, direction\: :ref:`SecondaryDirection`\ ) | + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_joint_limitation_right_axis_vector`\ (\ index\: :ref:`int`, joint\: :ref:`int`, vector\: :ref:`Vector3`\ ) | + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_joint_limitation_rotation_offset`\ (\ index\: :ref:`int`, joint\: :ref:`int`, offset\: :ref:`Quaternion`\ ) | + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_joint_rotation_axis`\ (\ index\: :ref:`int`, joint\: :ref:`int`, axis\: :ref:`RotationAxis`\ ) | + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_joint_rotation_axis_vector`\ (\ index\: :ref:`int`, joint\: :ref:`int`, axis_vector\: :ref:`Vector3`\ ) | + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_target_node`\ (\ index\: :ref:`int`, target_node\: :ref:`NodePath`\ ) | + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Property Descriptions +--------------------- + +.. _class_IterateIK3D_property_angular_delta_limit: + +.. rst-class:: classref-property + +:ref:`float` **angular_delta_limit** = ``0.034906585`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_angular_delta_limit**\ (\ value\: :ref:`float`\ ) +- :ref:`float` **get_angular_delta_limit**\ (\ ) + +The maximum amount each bone can rotate in a single iteration. + +\ **Note:** This limitation is applied during each iteration. For example, if :ref:`max_iterations` is ``4`` and :ref:`angular_delta_limit` is ``5`` degrees, the maximum rotation possible in a single frame is ``20`` degrees. + +.. rst-class:: classref-item-separator + +---- + +.. _class_IterateIK3D_property_max_iterations: + +.. rst-class:: classref-property + +:ref:`int` **max_iterations** = ``4`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_max_iterations**\ (\ value\: :ref:`int`\ ) +- :ref:`int` **get_max_iterations**\ (\ ) + +The number of iteration loops used by the IK solver to produce more accurate results. + +.. rst-class:: classref-item-separator + +---- + +.. _class_IterateIK3D_property_min_distance: + +.. rst-class:: classref-property + +:ref:`float` **min_distance** = ``0.001`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_min_distance**\ (\ value\: :ref:`float`\ ) +- :ref:`float` **get_min_distance**\ (\ ) + +The minimum distance between the end bone and the target. If the distance is below this value, the IK solver stops any further iterations. + +.. rst-class:: classref-item-separator + +---- + +.. _class_IterateIK3D_property_setting_count: + +.. rst-class:: classref-property + +:ref:`int` **setting_count** = ``0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_setting_count**\ (\ value\: :ref:`int`\ ) +- :ref:`int` **get_setting_count**\ (\ ) + +The number of settings. + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Method Descriptions +------------------- + +.. _class_IterateIK3D_method_get_joint_limitation: + +.. rst-class:: classref-method + +:ref:`JointLimitation3D` **get_joint_limitation**\ (\ index\: :ref:`int`, joint\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the joint limitation at ``joint`` in the bone chain's joint list. + +.. rst-class:: classref-item-separator + +---- + +.. _class_IterateIK3D_method_get_joint_limitation_right_axis: + +.. rst-class:: classref-method + +:ref:`SecondaryDirection` **get_joint_limitation_right_axis**\ (\ index\: :ref:`int`, joint\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the joint limitation right axis at ``joint`` in the bone chain's joint list. + +.. rst-class:: classref-item-separator + +---- + +.. _class_IterateIK3D_method_get_joint_limitation_right_axis_vector: + +.. rst-class:: classref-method + +:ref:`Vector3` **get_joint_limitation_right_axis_vector**\ (\ index\: :ref:`int`, joint\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the joint limitation right axis vector at ``joint`` in the bone chain's joint list. + +If :ref:`get_joint_limitation_right_axis()` is :ref:`SkeletonModifier3D.SECONDARY_DIRECTION_NONE`, this method returns ``Vector3(0, 0, 0)``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_IterateIK3D_method_get_joint_limitation_rotation_offset: + +.. rst-class:: classref-method + +:ref:`Quaternion` **get_joint_limitation_rotation_offset**\ (\ index\: :ref:`int`, joint\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the joint limitation rotation offset at ``joint`` in the bone chain's joint list. + +Rotation is done in the local space which is constructed by the bone direction (in general parent to child) as the +Y axis and :ref:`get_joint_limitation_right_axis_vector()` as the +X axis. + +If the +X and +Y axes are not orthogonal, the +X axis is implicitly modified to make it orthogonal. + +Also, if the length of :ref:`get_joint_limitation_right_axis_vector()` is zero, the space is created by rotating the bone rest using the shortest arc that rotates the +Y axis of the bone rest to match the bone direction. + +.. rst-class:: classref-item-separator + +---- + +.. _class_IterateIK3D_method_get_joint_rotation_axis: + +.. rst-class:: classref-method + +:ref:`RotationAxis` **get_joint_rotation_axis**\ (\ index\: :ref:`int`, joint\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the rotation axis at ``joint`` in the bone chain's joint list. + +.. rst-class:: classref-item-separator + +---- + +.. _class_IterateIK3D_method_get_joint_rotation_axis_vector: + +.. rst-class:: classref-method + +:ref:`Vector3` **get_joint_rotation_axis_vector**\ (\ index\: :ref:`int`, joint\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the rotation axis vector for the specified joint in the bone chain. This vector represents the axis around which the joint can rotate. It is determined based on the rotation axis set for the joint. + +If :ref:`get_joint_rotation_axis()` is :ref:`SkeletonModifier3D.ROTATION_AXIS_ALL`, this method returns ``Vector3(0, 0, 0)``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_IterateIK3D_method_get_target_node: + +.. rst-class:: classref-method + +:ref:`NodePath` **get_target_node**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the target node that the end bone is trying to reach. + +.. rst-class:: classref-item-separator + +---- + +.. _class_IterateIK3D_method_set_joint_limitation: + +.. rst-class:: classref-method + +|void| **set_joint_limitation**\ (\ index\: :ref:`int`, joint\: :ref:`int`, limitation\: :ref:`JointLimitation3D`\ ) :ref:`🔗` + +Sets the joint limitation at ``joint`` in the bone chain's joint list. + +.. rst-class:: classref-item-separator + +---- + +.. _class_IterateIK3D_method_set_joint_limitation_right_axis: + +.. rst-class:: classref-method + +|void| **set_joint_limitation_right_axis**\ (\ index\: :ref:`int`, joint\: :ref:`int`, direction\: :ref:`SecondaryDirection`\ ) :ref:`🔗` + +Sets the joint limitation right axis at ``joint`` in the bone chain's joint list. + +.. rst-class:: classref-item-separator + +---- + +.. _class_IterateIK3D_method_set_joint_limitation_right_axis_vector: + +.. rst-class:: classref-method + +|void| **set_joint_limitation_right_axis_vector**\ (\ index\: :ref:`int`, joint\: :ref:`int`, vector\: :ref:`Vector3`\ ) :ref:`🔗` + +Sets the optional joint limitation right axis vector at ``joint`` in the bone chain's joint list. + +.. rst-class:: classref-item-separator + +---- + +.. _class_IterateIK3D_method_set_joint_limitation_rotation_offset: + +.. rst-class:: classref-method + +|void| **set_joint_limitation_rotation_offset**\ (\ index\: :ref:`int`, joint\: :ref:`int`, offset\: :ref:`Quaternion`\ ) :ref:`🔗` + +Sets the joint limitation rotation offset at ``joint`` in the bone chain's joint list. + +Rotation is done in the local space which is constructed by the bone direction (in general parent to child) as the +Y axis and :ref:`get_joint_limitation_right_axis_vector()` as the +X axis. + +If the +X and +Y axes are not orthogonal, the +X axis is implicitly modified to make it orthogonal. + +Also, if the length of :ref:`get_joint_limitation_right_axis_vector()` is zero, the space is created by rotating the bone rest using the shortest arc that rotates the +Y axis of the bone rest to match the bone direction. + +.. rst-class:: classref-item-separator + +---- + +.. _class_IterateIK3D_method_set_joint_rotation_axis: + +.. rst-class:: classref-method + +|void| **set_joint_rotation_axis**\ (\ index\: :ref:`int`, joint\: :ref:`int`, axis\: :ref:`RotationAxis`\ ) :ref:`🔗` + +Sets the rotation axis at ``joint`` in the bone chain's joint list. + +The axes are based on the :ref:`Skeleton3D.get_bone_rest()`'s space, if ``axis`` is :ref:`SkeletonModifier3D.ROTATION_AXIS_CUSTOM`, you can specify any axis. + +\ **Note:** The rotation axis and the forward vector shouldn't be colinear to avoid unintended rotation since :ref:`ChainIK3D` does not factor in twisting forces. + +.. rst-class:: classref-item-separator + +---- + +.. _class_IterateIK3D_method_set_joint_rotation_axis_vector: + +.. rst-class:: classref-method + +|void| **set_joint_rotation_axis_vector**\ (\ index\: :ref:`int`, joint\: :ref:`int`, axis_vector\: :ref:`Vector3`\ ) :ref:`🔗` + +Sets the rotation axis vector for the specified joint in the bone chain. + +This vector is normalized by an internal process and represents the axis around which the bone chain can rotate. + +If the vector length is ``0``, it is considered synonymous with :ref:`SkeletonModifier3D.ROTATION_AXIS_ALL`. + +.. rst-class:: classref-item-separator + +---- + +.. _class_IterateIK3D_method_set_target_node: + +.. rst-class:: classref-method + +|void| **set_target_node**\ (\ index\: :ref:`int`, target_node\: :ref:`NodePath`\ ) :ref:`🔗` + +Sets the target node that the end bone is trying to reach. + +.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` +.. |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.)` +.. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)` +.. |void| replace:: :abbr:`void (No return value.)` diff --git a/classes/class_jacobianik3d.rst b/classes/class_jacobianik3d.rst new file mode 100644 index 00000000000..a3c6de0fa62 --- /dev/null +++ b/classes/class_jacobianik3d.rst @@ -0,0 +1,36 @@ +:github_url: hide + +.. DO NOT EDIT THIS FILE!!! +.. Generated automatically from Godot engine sources. +.. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py. +.. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/JacobianIK3D.xml. + +.. _class_JacobianIK3D: + +JacobianIK3D +============ + +**Inherits:** :ref:`IterateIK3D` **<** :ref:`ChainIK3D` **<** :ref:`IKModifier3D` **<** :ref:`SkeletonModifier3D` **<** :ref:`Node3D` **<** :ref:`Node` **<** :ref:`Object` + +Pseudo inverse Jacobian matrix based inverse kinematics solver. + +.. rst-class:: classref-introduction-group + +Description +----------- + +**JacobianIK3D** calculates rotations for all joints simultaneously, producing natural and smooth movement. It is particularly suited for biological animations. + +The resulting twist around the forward vector will always be kept from the previous pose. + +\ **Note:** It converges more slowly than other IK solvers, leading to gentler and less immediate tracking of targets. + +.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` +.. |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.)` +.. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)` +.. |void| replace:: :abbr:`void (No return value.)` diff --git a/classes/class_jointlimitation3d.rst b/classes/class_jointlimitation3d.rst new file mode 100644 index 00000000000..ddd6d546d9c --- /dev/null +++ b/classes/class_jointlimitation3d.rst @@ -0,0 +1,34 @@ +:github_url: hide + +.. DO NOT EDIT THIS FILE!!! +.. Generated automatically from Godot engine sources. +.. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py. +.. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/JointLimitation3D.xml. + +.. _class_JointLimitation3D: + +JointLimitation3D +================= + +**Inherits:** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` + +**Inherited By:** :ref:`JointLimitationCone3D` + +A base class of the limitation that interacts with :ref:`ChainIK3D`. + +.. rst-class:: classref-introduction-group + +Description +----------- + +The limitation is attached to each joint and limits the rotation of the bone. + +.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` +.. |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.)` +.. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)` +.. |void| replace:: :abbr:`void (No return value.)` diff --git a/classes/class_jointlimitationcone3d.rst b/classes/class_jointlimitationcone3d.rst new file mode 100644 index 00000000000..bcaf510943c --- /dev/null +++ b/classes/class_jointlimitationcone3d.rst @@ -0,0 +1,68 @@ +:github_url: hide + +.. DO NOT EDIT THIS FILE!!! +.. Generated automatically from Godot engine sources. +.. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py. +.. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/JointLimitationCone3D.xml. + +.. _class_JointLimitationCone3D: + +JointLimitationCone3D +===================== + +**Inherits:** :ref:`JointLimitation3D` **<** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` + +A cone shape limitation that interacts with :ref:`ChainIK3D`. + +.. rst-class:: classref-introduction-group + +Description +----------- + +A cone shape limitation that interacts with :ref:`ChainIK3D`. + +.. rst-class:: classref-reftable-group + +Properties +---------- + +.. table:: + :widths: auto + + +---------------------------+------------------------------------------------------------------------+----------+ + | :ref:`float` | :ref:`radius_range` | ``0.25`` | + +---------------------------+------------------------------------------------------------------------+----------+ + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Property Descriptions +--------------------- + +.. _class_JointLimitationCone3D_property_radius_range: + +.. rst-class:: classref-property + +:ref:`float` **radius_range** = ``0.25`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_radius_range**\ (\ value\: :ref:`float`\ ) +- :ref:`float` **get_radius_range**\ (\ ) + +The size of the hole made by the cone. + +\ ``0`` is no hole, ``0.5`` makes a hemisphere, and ``1.0`` makes a sphere (no limitation). + +.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` +.. |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.)` +.. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)` +.. |void| replace:: :abbr:`void (No return value.)` diff --git a/classes/class_meshinstance3d.rst b/classes/class_meshinstance3d.rst index 17c255753b0..f7270701fc4 100644 --- a/classes/class_meshinstance3d.rst +++ b/classes/class_meshinstance3d.rst @@ -44,13 +44,13 @@ Properties .. table:: :widths: auto - +---------------------------------+---------------------------------------------------------+--------------------+ - | :ref:`Mesh` | :ref:`mesh` | | - +---------------------------------+---------------------------------------------------------+--------------------+ - | :ref:`NodePath` | :ref:`skeleton` | ``NodePath("..")`` | - +---------------------------------+---------------------------------------------------------+--------------------+ - | :ref:`Skin` | :ref:`skin` | | - +---------------------------------+---------------------------------------------------------+--------------------+ + +---------------------------------+---------------------------------------------------------+------------------+ + | :ref:`Mesh` | :ref:`mesh` | | + +---------------------------------+---------------------------------------------------------+------------------+ + | :ref:`NodePath` | :ref:`skeleton` | ``NodePath("")`` | + +---------------------------------+---------------------------------------------------------+------------------+ + | :ref:`Skin` | :ref:`skin` | | + +---------------------------------+---------------------------------------------------------+------------------+ .. rst-class:: classref-reftable-group @@ -122,7 +122,7 @@ The :ref:`Mesh` resource for the instance. .. rst-class:: classref-property -:ref:`NodePath` **skeleton** = ``NodePath("..")`` :ref:`🔗` +:ref:`NodePath` **skeleton** = ``NodePath("")`` :ref:`🔗` .. rst-class:: classref-property-setget @@ -131,6 +131,8 @@ The :ref:`Mesh` resource for the instance. :ref:`NodePath` to the :ref:`Skeleton3D` associated with the instance. +\ **Note:** The default value of this property has changed in Godot 4.6. Enable :ref:`ProjectSettings.animation/compatibility/default_parent_skeleton_in_mesh_instance_3d` if the old behavior is needed for compatibility. + .. rst-class:: classref-item-separator ---- diff --git a/classes/class_node.rst b/classes/class_node.rst index 104b748d8dd..0fceafcbe6a 100644 --- a/classes/class_node.rst +++ b/classes/class_node.rst @@ -730,7 +730,7 @@ Always automatically translate. This is the inverse of :ref:`AUTO_TRANSLATE_MODE Never automatically translate. This is the inverse of :ref:`AUTO_TRANSLATE_MODE_ALWAYS`. -String parsing for POT generation will be skipped for this node and children that are set to :ref:`AUTO_TRANSLATE_MODE_INHERIT`. +String parsing for translation template generation will be skipped for this node and children that are set to :ref:`AUTO_TRANSLATE_MODE_INHERIT`. .. rst-class:: classref-section-separator @@ -1187,7 +1187,7 @@ Property Descriptions - |void| **set_auto_translate_mode**\ (\ value\: :ref:`AutoTranslateMode`\ ) - :ref:`AutoTranslateMode` **get_auto_translate_mode**\ (\ ) -Defines if any text should automatically change to its translated version depending on the current locale (for nodes such as :ref:`Label`, :ref:`RichTextLabel`, :ref:`Window`, etc.). Also decides if the node's strings should be parsed for POT generation. +Defines if any text should automatically change to its translated version depending on the current locale (for nodes such as :ref:`Label`, :ref:`RichTextLabel`, :ref:`Window`, etc.). Also decides if the node's strings should be parsed for translation template generation. \ **Note:** For the root node, auto translate mode can also be set via :ref:`ProjectSettings.internationalization/rendering/root_node_auto_translate`. diff --git a/classes/class_packedbytearray.rst b/classes/class_packedbytearray.rst index 3057ee93e51..44a84dee5a9 100644 --- a/classes/class_packedbytearray.rst +++ b/classes/class_packedbytearray.rst @@ -100,7 +100,7 @@ Methods +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`PackedByteArray` | :ref:`decompress_dynamic`\ (\ max_output_size\: :ref:`int`, compression_mode\: :ref:`int` = 0\ ) |const| | +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedByteArray` | :ref:`duplicate`\ (\ ) | + | :ref:`PackedByteArray` | :ref:`duplicate`\ (\ ) |const| | +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`encode_double`\ (\ byte_offset\: :ref:`int`, value\: :ref:`float`\ ) | +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -557,7 +557,7 @@ GZIP has a maximal compression ratio of 1032:1, meaning it's very possible for a .. rst-class:: classref-method -:ref:`PackedByteArray` **duplicate**\ (\ ) :ref:`🔗` +:ref:`PackedByteArray` **duplicate**\ (\ ) |const| :ref:`🔗` Creates a copy of the array, and returns it. diff --git a/classes/class_packedcolorarray.rst b/classes/class_packedcolorarray.rst index fb115d54b2a..3aad4e1463c 100644 --- a/classes/class_packedcolorarray.rst +++ b/classes/class_packedcolorarray.rst @@ -62,7 +62,7 @@ Methods +-------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`count`\ (\ value\: :ref:`Color`\ ) |const| | +-------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedColorArray` | :ref:`duplicate`\ (\ ) | + | :ref:`PackedColorArray` | :ref:`duplicate`\ (\ ) |const| | +-------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`erase`\ (\ value\: :ref:`Color`\ ) | +-------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+ @@ -235,7 +235,7 @@ Returns the number of times an element is in the array. .. rst-class:: classref-method -:ref:`PackedColorArray` **duplicate**\ (\ ) :ref:`🔗` +:ref:`PackedColorArray` **duplicate**\ (\ ) |const| :ref:`🔗` Creates a copy of the array, and returns it. diff --git a/classes/class_packedfloat32array.rst b/classes/class_packedfloat32array.rst index 7bf1ed97ae5..22d2c2cbb09 100644 --- a/classes/class_packedfloat32array.rst +++ b/classes/class_packedfloat32array.rst @@ -62,7 +62,7 @@ Methods +-----------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`count`\ (\ value\: :ref:`float`\ ) |const| | +-----------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedFloat32Array` | :ref:`duplicate`\ (\ ) | + | :ref:`PackedFloat32Array` | :ref:`duplicate`\ (\ ) |const| | +-----------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`erase`\ (\ value\: :ref:`float`\ ) | +-----------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ @@ -233,7 +233,7 @@ Returns the number of times an element is in the array. .. rst-class:: classref-method -:ref:`PackedFloat32Array` **duplicate**\ (\ ) :ref:`🔗` +:ref:`PackedFloat32Array` **duplicate**\ (\ ) |const| :ref:`🔗` Creates a copy of the array, and returns it. diff --git a/classes/class_packedfloat64array.rst b/classes/class_packedfloat64array.rst index a1ba71aba71..bab2660dc56 100644 --- a/classes/class_packedfloat64array.rst +++ b/classes/class_packedfloat64array.rst @@ -64,7 +64,7 @@ Methods +-----------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`count`\ (\ value\: :ref:`float`\ ) |const| | +-----------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedFloat64Array` | :ref:`duplicate`\ (\ ) | + | :ref:`PackedFloat64Array` | :ref:`duplicate`\ (\ ) |const| | +-----------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`erase`\ (\ value\: :ref:`float`\ ) | +-----------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ @@ -235,7 +235,7 @@ Returns the number of times an element is in the array. .. rst-class:: classref-method -:ref:`PackedFloat64Array` **duplicate**\ (\ ) :ref:`🔗` +:ref:`PackedFloat64Array` **duplicate**\ (\ ) |const| :ref:`🔗` Creates a copy of the array, and returns it. diff --git a/classes/class_packedint32array.rst b/classes/class_packedint32array.rst index 951bd5f82c2..c37a716575f 100644 --- a/classes/class_packedint32array.rst +++ b/classes/class_packedint32array.rst @@ -62,7 +62,7 @@ Methods +-------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`count`\ (\ value\: :ref:`int`\ ) |const| | +-------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedInt32Array` | :ref:`duplicate`\ (\ ) | + | :ref:`PackedInt32Array` | :ref:`duplicate`\ (\ ) |const| | +-------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`erase`\ (\ value\: :ref:`int`\ ) | +-------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+ @@ -229,7 +229,7 @@ Returns the number of times an element is in the array. .. rst-class:: classref-method -:ref:`PackedInt32Array` **duplicate**\ (\ ) :ref:`🔗` +:ref:`PackedInt32Array` **duplicate**\ (\ ) |const| :ref:`🔗` Creates a copy of the array, and returns it. diff --git a/classes/class_packedint64array.rst b/classes/class_packedint64array.rst index c3be799032f..2f32fcd688f 100644 --- a/classes/class_packedint64array.rst +++ b/classes/class_packedint64array.rst @@ -64,7 +64,7 @@ Methods +-------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`count`\ (\ value\: :ref:`int`\ ) |const| | +-------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedInt64Array` | :ref:`duplicate`\ (\ ) | + | :ref:`PackedInt64Array` | :ref:`duplicate`\ (\ ) |const| | +-------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`erase`\ (\ value\: :ref:`int`\ ) | +-------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------+ @@ -231,7 +231,7 @@ Returns the number of times an element is in the array. .. rst-class:: classref-method -:ref:`PackedInt64Array` **duplicate**\ (\ ) :ref:`🔗` +:ref:`PackedInt64Array` **duplicate**\ (\ ) |const| :ref:`🔗` Creates a copy of the array, and returns it. diff --git a/classes/class_packedstringarray.rst b/classes/class_packedstringarray.rst index 185375fd1e7..9d785db3d36 100644 --- a/classes/class_packedstringarray.rst +++ b/classes/class_packedstringarray.rst @@ -77,7 +77,7 @@ Methods +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`count`\ (\ value\: :ref:`String`\ ) |const| | +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedStringArray` | :ref:`duplicate`\ (\ ) | + | :ref:`PackedStringArray` | :ref:`duplicate`\ (\ ) |const| | +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`erase`\ (\ value\: :ref:`String`\ ) | +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ @@ -244,7 +244,7 @@ Returns the number of times an element is in the array. .. rst-class:: classref-method -:ref:`PackedStringArray` **duplicate**\ (\ ) :ref:`🔗` +:ref:`PackedStringArray` **duplicate**\ (\ ) |const| :ref:`🔗` Creates a copy of the array, and returns it. diff --git a/classes/class_packedvector2array.rst b/classes/class_packedvector2array.rst index 0034119e6be..aa3e5a3e5d2 100644 --- a/classes/class_packedvector2array.rst +++ b/classes/class_packedvector2array.rst @@ -69,7 +69,7 @@ Methods +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`count`\ (\ value\: :ref:`Vector2`\ ) |const| | +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedVector2Array` | :ref:`duplicate`\ (\ ) | + | :ref:`PackedVector2Array` | :ref:`duplicate`\ (\ ) |const| | +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`erase`\ (\ value\: :ref:`Vector2`\ ) | +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------+ @@ -248,7 +248,7 @@ Returns the number of times an element is in the array. .. rst-class:: classref-method -:ref:`PackedVector2Array` **duplicate**\ (\ ) :ref:`🔗` +:ref:`PackedVector2Array` **duplicate**\ (\ ) |const| :ref:`🔗` Creates a copy of the array, and returns it. diff --git a/classes/class_packedvector3array.rst b/classes/class_packedvector3array.rst index b40e30c026e..828dee41dc4 100644 --- a/classes/class_packedvector3array.rst +++ b/classes/class_packedvector3array.rst @@ -62,7 +62,7 @@ Methods +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`count`\ (\ value\: :ref:`Vector3`\ ) |const| | +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedVector3Array` | :ref:`duplicate`\ (\ ) | + | :ref:`PackedVector3Array` | :ref:`duplicate`\ (\ ) |const| | +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`erase`\ (\ value\: :ref:`Vector3`\ ) | +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------+ @@ -241,7 +241,7 @@ Returns the number of times an element is in the array. .. rst-class:: classref-method -:ref:`PackedVector3Array` **duplicate**\ (\ ) :ref:`🔗` +:ref:`PackedVector3Array` **duplicate**\ (\ ) |const| :ref:`🔗` Creates a copy of the array, and returns it. diff --git a/classes/class_packedvector4array.rst b/classes/class_packedvector4array.rst index 59a86869575..61d9fb993da 100644 --- a/classes/class_packedvector4array.rst +++ b/classes/class_packedvector4array.rst @@ -62,7 +62,7 @@ Methods +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`count`\ (\ value\: :ref:`Vector4`\ ) |const| | +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`PackedVector4Array` | :ref:`duplicate`\ (\ ) | + | :ref:`PackedVector4Array` | :ref:`duplicate`\ (\ ) |const| | +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`erase`\ (\ value\: :ref:`Vector4`\ ) | +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------+ @@ -239,7 +239,7 @@ Returns the number of times an element is in the array. .. rst-class:: classref-method -:ref:`PackedVector4Array` **duplicate**\ (\ ) :ref:`🔗` +:ref:`PackedVector4Array` **duplicate**\ (\ ) |const| :ref:`🔗` Creates a copy of the array, and returns it. diff --git a/classes/class_physicalbone3d.rst b/classes/class_physicalbone3d.rst index 3c59b924890..fa69b0f1bdc 100644 --- a/classes/class_physicalbone3d.rst +++ b/classes/class_physicalbone3d.rst @@ -26,6 +26,13 @@ The **PhysicalBone3D** node is a physics body that can be used to make bones in \ **Note:** In order to detect physical bones with raycasts, the :ref:`SkeletonModifier3D.active` property of the parent :ref:`PhysicalBoneSimulator3D` must be ``true`` and the :ref:`Skeleton3D`'s bone must be assigned to **PhysicalBone3D** correctly; it means that :ref:`get_bone_id()` should return a valid id (``>= 0``). +.. rst-class:: classref-introduction-group + +Tutorials +--------- + +- :doc:`Ragdoll System <../tutorials/physics/ragdoll_system>` + .. rst-class:: classref-reftable-group Properties diff --git a/classes/class_projectsettings.rst b/classes/class_projectsettings.rst index da7ef5b52cd..3a7db140919 100644 --- a/classes/class_projectsettings.rst +++ b/classes/class_projectsettings.rst @@ -53,6 +53,8 @@ Properties +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`accessibility/general/updates_per_second` | ``60`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`animation/compatibility/default_parent_skeleton_in_mesh_instance_3d` | ``false`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`animation/warnings/check_angle_interpolation_type_conflicting` | ``true`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`animation/warnings/check_invalid_track_paths` | ``true`` | @@ -1921,8 +1923,12 @@ Methods +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`add_property_info`\ (\ hint\: :ref:`Dictionary`\ ) | +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`check_changed_settings_in_group`\ (\ setting_prefix\: :ref:`String`\ ) |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`clear`\ (\ name\: :ref:`String`\ ) | +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`PackedStringArray` | :ref:`get_changed_settings`\ (\ ) |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`get_global_class_list`\ (\ ) | +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`get_order`\ (\ name\: :ref:`String`\ ) |const| | @@ -2016,6 +2022,18 @@ The number of accessibility information updates per second. ---- +.. _class_ProjectSettings_property_animation/compatibility/default_parent_skeleton_in_mesh_instance_3d: + +.. rst-class:: classref-property + +:ref:`bool` **animation/compatibility/default_parent_skeleton_in_mesh_instance_3d** = ``false`` :ref:`🔗` + +If ``true``, :ref:`MeshInstance3D.skeleton` will point to the parent node (``..``) by default, which was the behavior before Godot 4.6. It's recommended to keep this setting disabled unless the old behavior is needed for compatibility. + +.. rst-class:: classref-item-separator + +---- + .. _class_ProjectSettings_property_animation/warnings/check_angle_interpolation_type_conflicting: .. rst-class:: classref-property @@ -14280,6 +14298,18 @@ Adds a custom property info to a property. The dictionary must contain: ---- +.. _class_ProjectSettings_method_check_changed_settings_in_group: + +.. rst-class:: classref-method + +:ref:`bool` **check_changed_settings_in_group**\ (\ setting_prefix\: :ref:`String`\ ) |const| :ref:`🔗` + +Checks if any settings with the prefix ``setting_prefix`` exist in the set of changed settings. See also :ref:`get_changed_settings()`. + +.. rst-class:: classref-item-separator + +---- + .. _class_ProjectSettings_method_clear: .. rst-class:: classref-method @@ -14292,6 +14322,18 @@ Clears the whole configuration (not recommended, may break things). ---- +.. _class_ProjectSettings_method_get_changed_settings: + +.. rst-class:: classref-method + +:ref:`PackedStringArray` **get_changed_settings**\ (\ ) |const| :ref:`🔗` + +Gets an array of the settings which have been changed since the last save. Note that internally ``changed_settings`` is cleared after a successful save, so generally the most appropriate place to use this method is when processing :ref:`settings_changed`. + +.. rst-class:: classref-item-separator + +---- + .. _class_ProjectSettings_method_get_global_class_list: .. rst-class:: classref-method diff --git a/classes/class_resource.rst b/classes/class_resource.rst index 77a6ea7d049..aa7cacc1591 100644 --- a/classes/class_resource.rst +++ b/classes/class_resource.rst @@ -12,7 +12,7 @@ Resource **Inherits:** :ref:`RefCounted` **<** :ref:`Object` -**Inherited By:** :ref:`Animation`, :ref:`AnimationLibrary`, :ref:`AnimationNode`, :ref:`AnimationNodeStateMachinePlayback`, :ref:`AnimationNodeStateMachineTransition`, :ref:`AudioBusLayout`, :ref:`AudioEffect`, :ref:`AudioStream`, :ref:`BitMap`, :ref:`BoneMap`, :ref:`ButtonGroup`, :ref:`CameraAttributes`, :ref:`ColorPalette`, :ref:`Compositor`, :ref:`CompositorEffect`, :ref:`CryptoKey`, :ref:`Curve`, :ref:`Curve2D`, :ref:`Curve3D`, :ref:`EditorNode3DGizmoPlugin`, :ref:`EditorSettings`, :ref:`Environment`, :ref:`FoldableGroup`, :ref:`Font`, :ref:`GDExtension`, :ref:`GLTFAccessor`, :ref:`GLTFAnimation`, :ref:`GLTFBufferView`, :ref:`GLTFCamera`, :ref:`GLTFDocument`, :ref:`GLTFDocumentExtension`, :ref:`GLTFLight`, :ref:`GLTFMesh`, :ref:`GLTFNode`, :ref:`GLTFPhysicsBody`, :ref:`GLTFPhysicsShape`, :ref:`GLTFSkeleton`, :ref:`GLTFSkin`, :ref:`GLTFSpecGloss`, :ref:`GLTFState`, :ref:`GLTFTexture`, :ref:`GLTFTextureSampler`, :ref:`Gradient`, :ref:`Image`, :ref:`ImporterMesh`, :ref:`InputEvent`, :ref:`JSON`, :ref:`LabelSettings`, :ref:`LightmapGIData`, :ref:`Material`, :ref:`Mesh`, :ref:`MeshLibrary`, :ref:`MissingResource`, :ref:`MultiMesh`, :ref:`NavigationMesh`, :ref:`NavigationMeshSourceGeometryData2D`, :ref:`NavigationMeshSourceGeometryData3D`, :ref:`NavigationPolygon`, :ref:`Noise`, :ref:`Occluder3D`, :ref:`OccluderPolygon2D`, :ref:`OggPacketSequence`, :ref:`OpenXRAction`, :ref:`OpenXRActionMap`, :ref:`OpenXRActionSet`, :ref:`OpenXRBindingModifier`, :ref:`OpenXRHapticBase`, :ref:`OpenXRInteractionProfile`, :ref:`OpenXRIPBinding`, :ref:`PackedDataContainer`, :ref:`PackedScene`, :ref:`PhysicsMaterial`, :ref:`PolygonPathFinder`, :ref:`RDShaderFile`, :ref:`RDShaderSPIRV`, :ref:`RichTextEffect`, :ref:`SceneReplicationConfig`, :ref:`Script`, :ref:`Shader`, :ref:`ShaderInclude`, :ref:`Shape2D`, :ref:`Shape3D`, :ref:`Shortcut`, :ref:`SkeletonModification2D`, :ref:`SkeletonModificationStack2D`, :ref:`SkeletonProfile`, :ref:`Skin`, :ref:`Sky`, :ref:`SpriteFrames`, :ref:`StyleBox`, :ref:`SyntaxHighlighter`, :ref:`Texture`, :ref:`Theme`, :ref:`TileMapPattern`, :ref:`TileSet`, :ref:`TileSetSource`, :ref:`Translation`, :ref:`VideoStream`, :ref:`VideoStreamPlayback`, :ref:`VisualShaderNode`, :ref:`VoxelGIData`, :ref:`World2D`, :ref:`World3D`, :ref:`X509Certificate` +**Inherited By:** :ref:`Animation`, :ref:`AnimationLibrary`, :ref:`AnimationNode`, :ref:`AnimationNodeStateMachinePlayback`, :ref:`AnimationNodeStateMachineTransition`, :ref:`AudioBusLayout`, :ref:`AudioEffect`, :ref:`AudioStream`, :ref:`BitMap`, :ref:`BoneMap`, :ref:`ButtonGroup`, :ref:`CameraAttributes`, :ref:`ColorPalette`, :ref:`Compositor`, :ref:`CompositorEffect`, :ref:`CryptoKey`, :ref:`Curve`, :ref:`Curve2D`, :ref:`Curve3D`, :ref:`EditorNode3DGizmoPlugin`, :ref:`EditorSettings`, :ref:`Environment`, :ref:`FoldableGroup`, :ref:`Font`, :ref:`GDExtension`, :ref:`GLTFAccessor`, :ref:`GLTFAnimation`, :ref:`GLTFBufferView`, :ref:`GLTFCamera`, :ref:`GLTFDocument`, :ref:`GLTFDocumentExtension`, :ref:`GLTFLight`, :ref:`GLTFMesh`, :ref:`GLTFNode`, :ref:`GLTFPhysicsBody`, :ref:`GLTFPhysicsShape`, :ref:`GLTFSkeleton`, :ref:`GLTFSkin`, :ref:`GLTFSpecGloss`, :ref:`GLTFState`, :ref:`GLTFTexture`, :ref:`GLTFTextureSampler`, :ref:`Gradient`, :ref:`Image`, :ref:`ImporterMesh`, :ref:`InputEvent`, :ref:`JointLimitation3D`, :ref:`JSON`, :ref:`LabelSettings`, :ref:`LightmapGIData`, :ref:`Material`, :ref:`Mesh`, :ref:`MeshLibrary`, :ref:`MissingResource`, :ref:`MultiMesh`, :ref:`NavigationMesh`, :ref:`NavigationMeshSourceGeometryData2D`, :ref:`NavigationMeshSourceGeometryData3D`, :ref:`NavigationPolygon`, :ref:`Noise`, :ref:`Occluder3D`, :ref:`OccluderPolygon2D`, :ref:`OggPacketSequence`, :ref:`OpenXRAction`, :ref:`OpenXRActionMap`, :ref:`OpenXRActionSet`, :ref:`OpenXRBindingModifier`, :ref:`OpenXRHapticBase`, :ref:`OpenXRInteractionProfile`, :ref:`OpenXRIPBinding`, :ref:`PackedDataContainer`, :ref:`PackedScene`, :ref:`PhysicsMaterial`, :ref:`PolygonPathFinder`, :ref:`RDShaderFile`, :ref:`RDShaderSPIRV`, :ref:`RichTextEffect`, :ref:`SceneReplicationConfig`, :ref:`Script`, :ref:`Shader`, :ref:`ShaderInclude`, :ref:`Shape2D`, :ref:`Shape3D`, :ref:`Shortcut`, :ref:`SkeletonModification2D`, :ref:`SkeletonModificationStack2D`, :ref:`SkeletonProfile`, :ref:`Skin`, :ref:`Sky`, :ref:`SpriteFrames`, :ref:`StyleBox`, :ref:`SyntaxHighlighter`, :ref:`Texture`, :ref:`Theme`, :ref:`TileMapPattern`, :ref:`TileSet`, :ref:`TileSetSource`, :ref:`Translation`, :ref:`VideoStream`, :ref:`VideoStreamPlayback`, :ref:`VisualShaderNode`, :ref:`VoxelGIData`, :ref:`World2D`, :ref:`World3D`, :ref:`X509Certificate` Base class for serializable objects. diff --git a/classes/class_scrollcontainer.rst b/classes/class_scrollcontainer.rst index 330714a17a0..8eff5960e02 100644 --- a/classes/class_scrollcontainer.rst +++ b/classes/class_scrollcontainer.rst @@ -84,11 +84,15 @@ Theme Properties .. table:: :widths: auto - +---------------------------------+-------------------------------------------------------+ - | :ref:`StyleBox` | :ref:`focus` | - +---------------------------------+-------------------------------------------------------+ - | :ref:`StyleBox` | :ref:`panel` | - +---------------------------------+-------------------------------------------------------+ + +---------------------------------+--------------------------------------------------------------------------------------------+-------+ + | :ref:`int` | :ref:`scrollbar_h_separation` | ``0`` | + +---------------------------------+--------------------------------------------------------------------------------------------+-------+ + | :ref:`int` | :ref:`scrollbar_v_separation` | ``0`` | + +---------------------------------+--------------------------------------------------------------------------------------------+-------+ + | :ref:`StyleBox` | :ref:`focus` | | + +---------------------------------+--------------------------------------------------------------------------------------------+-------+ + | :ref:`StyleBox` | :ref:`panel` | | + +---------------------------------+--------------------------------------------------------------------------------------------+-------+ .. rst-class:: classref-section-separator @@ -412,6 +416,30 @@ Returns the vertical scrollbar :ref:`VScrollBar` of this **Scr Theme Property Descriptions --------------------------- +.. _class_ScrollContainer_theme_constant_scrollbar_h_separation: + +.. rst-class:: classref-themeproperty + +:ref:`int` **scrollbar_h_separation** = ``0`` :ref:`🔗` + +The space between the ScrollContainer's vertical scroll bar and its content, in pixels. No space will be added when the content's minimum size is larger than the ScrollContainer's size. + +.. rst-class:: classref-item-separator + +---- + +.. _class_ScrollContainer_theme_constant_scrollbar_v_separation: + +.. rst-class:: classref-themeproperty + +:ref:`int` **scrollbar_v_separation** = ``0`` :ref:`🔗` + +The space between the ScrollContainer's horizontal scroll bar and its content, in pixels. No space will be added when the content's minimum size is larger than the ScrollContainer's size. + +.. rst-class:: classref-item-separator + +---- + .. _class_ScrollContainer_theme_style_focus: .. rst-class:: classref-themeproperty diff --git a/classes/class_skeletonmodifier3d.rst b/classes/class_skeletonmodifier3d.rst index 6bbcb86e5fd..f7535040e7b 100644 --- a/classes/class_skeletonmodifier3d.rst +++ b/classes/class_skeletonmodifier3d.rst @@ -12,7 +12,7 @@ SkeletonModifier3D **Inherits:** :ref:`Node3D` **<** :ref:`Node` **<** :ref:`Object` -**Inherited By:** :ref:`BoneConstraint3D`, :ref:`LookAtModifier3D`, :ref:`ModifierBoneTarget3D`, :ref:`PhysicalBoneSimulator3D`, :ref:`RetargetModifier3D`, :ref:`SkeletonIK3D`, :ref:`SpringBoneSimulator3D`, :ref:`XRBodyModifier3D`, :ref:`XRHandModifier3D` +**Inherited By:** :ref:`BoneConstraint3D`, :ref:`IKModifier3D`, :ref:`LookAtModifier3D`, :ref:`ModifierBoneTarget3D`, :ref:`PhysicalBoneSimulator3D`, :ref:`RetargetModifier3D`, :ref:`SkeletonIK3D`, :ref:`SpringBoneSimulator3D`, :ref:`XRBodyModifier3D`, :ref:`XRHandModifier3D` A node that may modify a Skeleton3D's bones. @@ -150,6 +150,196 @@ Enumerated value for the +Z axis. Enumerated value for the -Z axis. +.. rst-class:: classref-item-separator + +---- + +.. _enum_SkeletonModifier3D_BoneDirection: + +.. rst-class:: classref-enumeration + +enum **BoneDirection**: :ref:`🔗` + +.. _class_SkeletonModifier3D_constant_BONE_DIRECTION_PLUS_X: + +.. rst-class:: classref-enumeration-constant + +:ref:`BoneDirection` **BONE_DIRECTION_PLUS_X** = ``0`` + +Enumerated value for the +X axis. + +.. _class_SkeletonModifier3D_constant_BONE_DIRECTION_MINUS_X: + +.. rst-class:: classref-enumeration-constant + +:ref:`BoneDirection` **BONE_DIRECTION_MINUS_X** = ``1`` + +Enumerated value for the -X axis. + +.. _class_SkeletonModifier3D_constant_BONE_DIRECTION_PLUS_Y: + +.. rst-class:: classref-enumeration-constant + +:ref:`BoneDirection` **BONE_DIRECTION_PLUS_Y** = ``2`` + +Enumerated value for the +Y axis. + +.. _class_SkeletonModifier3D_constant_BONE_DIRECTION_MINUS_Y: + +.. rst-class:: classref-enumeration-constant + +:ref:`BoneDirection` **BONE_DIRECTION_MINUS_Y** = ``3`` + +Enumerated value for the -Y axis. + +.. _class_SkeletonModifier3D_constant_BONE_DIRECTION_PLUS_Z: + +.. rst-class:: classref-enumeration-constant + +:ref:`BoneDirection` **BONE_DIRECTION_PLUS_Z** = ``4`` + +Enumerated value for the +Z axis. + +.. _class_SkeletonModifier3D_constant_BONE_DIRECTION_MINUS_Z: + +.. rst-class:: classref-enumeration-constant + +:ref:`BoneDirection` **BONE_DIRECTION_MINUS_Z** = ``5`` + +Enumerated value for the -Z axis. + +.. _class_SkeletonModifier3D_constant_BONE_DIRECTION_FROM_PARENT: + +.. rst-class:: classref-enumeration-constant + +:ref:`BoneDirection` **BONE_DIRECTION_FROM_PARENT** = ``6`` + +Enumerated value for the axis from a parent bone to the child bone. + +.. rst-class:: classref-item-separator + +---- + +.. _enum_SkeletonModifier3D_SecondaryDirection: + +.. rst-class:: classref-enumeration + +enum **SecondaryDirection**: :ref:`🔗` + +.. _class_SkeletonModifier3D_constant_SECONDARY_DIRECTION_NONE: + +.. rst-class:: classref-enumeration-constant + +:ref:`SecondaryDirection` **SECONDARY_DIRECTION_NONE** = ``0`` + +Enumerated value for the case when the axis is undefined. + +.. _class_SkeletonModifier3D_constant_SECONDARY_DIRECTION_PLUS_X: + +.. rst-class:: classref-enumeration-constant + +:ref:`SecondaryDirection` **SECONDARY_DIRECTION_PLUS_X** = ``1`` + +Enumerated value for the +X axis. + +.. _class_SkeletonModifier3D_constant_SECONDARY_DIRECTION_MINUS_X: + +.. rst-class:: classref-enumeration-constant + +:ref:`SecondaryDirection` **SECONDARY_DIRECTION_MINUS_X** = ``2`` + +Enumerated value for the -X axis. + +.. _class_SkeletonModifier3D_constant_SECONDARY_DIRECTION_PLUS_Y: + +.. rst-class:: classref-enumeration-constant + +:ref:`SecondaryDirection` **SECONDARY_DIRECTION_PLUS_Y** = ``3`` + +Enumerated value for the +Y axis. + +.. _class_SkeletonModifier3D_constant_SECONDARY_DIRECTION_MINUS_Y: + +.. rst-class:: classref-enumeration-constant + +:ref:`SecondaryDirection` **SECONDARY_DIRECTION_MINUS_Y** = ``4`` + +Enumerated value for the -Y axis. + +.. _class_SkeletonModifier3D_constant_SECONDARY_DIRECTION_PLUS_Z: + +.. rst-class:: classref-enumeration-constant + +:ref:`SecondaryDirection` **SECONDARY_DIRECTION_PLUS_Z** = ``5`` + +Enumerated value for the +Z axis. + +.. _class_SkeletonModifier3D_constant_SECONDARY_DIRECTION_MINUS_Z: + +.. rst-class:: classref-enumeration-constant + +:ref:`SecondaryDirection` **SECONDARY_DIRECTION_MINUS_Z** = ``6`` + +Enumerated value for the -Z axis. + +.. _class_SkeletonModifier3D_constant_SECONDARY_DIRECTION_CUSTOM: + +.. rst-class:: classref-enumeration-constant + +:ref:`SecondaryDirection` **SECONDARY_DIRECTION_CUSTOM** = ``7`` + +Enumerated value for an optional axis. + +.. rst-class:: classref-item-separator + +---- + +.. _enum_SkeletonModifier3D_RotationAxis: + +.. rst-class:: classref-enumeration + +enum **RotationAxis**: :ref:`🔗` + +.. _class_SkeletonModifier3D_constant_ROTATION_AXIS_X: + +.. rst-class:: classref-enumeration-constant + +:ref:`RotationAxis` **ROTATION_AXIS_X** = ``0`` + +Enumerated value for the rotation of the X axis. + +.. _class_SkeletonModifier3D_constant_ROTATION_AXIS_Y: + +.. rst-class:: classref-enumeration-constant + +:ref:`RotationAxis` **ROTATION_AXIS_Y** = ``1`` + +Enumerated value for the rotation of the Y axis. + +.. _class_SkeletonModifier3D_constant_ROTATION_AXIS_Z: + +.. rst-class:: classref-enumeration-constant + +:ref:`RotationAxis` **ROTATION_AXIS_Z** = ``2`` + +Enumerated value for the rotation of the Z axis. + +.. _class_SkeletonModifier3D_constant_ROTATION_AXIS_ALL: + +.. rst-class:: classref-enumeration-constant + +:ref:`RotationAxis` **ROTATION_AXIS_ALL** = ``3`` + +Enumerated value for the unconstrained rotation. + +.. _class_SkeletonModifier3D_constant_ROTATION_AXIS_CUSTOM: + +.. rst-class:: classref-enumeration-constant + +:ref:`RotationAxis` **ROTATION_AXIS_CUSTOM** = ``4`` + +Enumerated value for an optional rotation axis. + .. rst-class:: classref-section-separator ---- diff --git a/classes/class_splineik3d.rst b/classes/class_splineik3d.rst new file mode 100644 index 00000000000..61d43468bc0 --- /dev/null +++ b/classes/class_splineik3d.rst @@ -0,0 +1,209 @@ +:github_url: hide + +.. DO NOT EDIT THIS FILE!!! +.. Generated automatically from Godot engine sources. +.. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py. +.. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/SplineIK3D.xml. + +.. _class_SplineIK3D: + +SplineIK3D +========== + +**Inherits:** :ref:`ChainIK3D` **<** :ref:`IKModifier3D` **<** :ref:`SkeletonModifier3D` **<** :ref:`Node3D` **<** :ref:`Node` **<** :ref:`Object` + +A :ref:`SkeletonModifier3D` for aligning bones along a :ref:`Path3D`. + +.. rst-class:: classref-introduction-group + +Description +----------- + +A :ref:`SkeletonModifier3D` for aligning bones along a :ref:`Path3D`. The smoothness of the fitting depends on the :ref:`Curve3D.bake_interval`. + +If you want the :ref:`Path3D` to attach to a specific bone, it is recommended to place a :ref:`ModifierBoneTarget3D` before the **SplineIK3D** in the :ref:`SkeletonModifier3D` list (children of the :ref:`Skeleton3D`), and then place a :ref:`Path3D` as the :ref:`ModifierBoneTarget3D`'s child. + +Bone twist is determined based on the :ref:`Curve3D.get_point_tilt()`. + +If the root bone joint and the start point of the :ref:`Curve3D` are separated, it assumes that there is a linear line segment between them. This means that the vector pointing toward the start point of the :ref:`Curve3D` takes precedence over the shortest intersection point along the :ref:`Curve3D`. + +If the end bone joint exceeds the path length, it is bent as close as possible to the end point of the :ref:`Curve3D`. + +.. rst-class:: classref-reftable-group + +Properties +---------- + +.. table:: + :widths: auto + + +-----------------------+---------------------------------------------------------------+-------+ + | :ref:`int` | :ref:`setting_count` | ``0`` | + +-----------------------+---------------------------------------------------------------+-------+ + +.. rst-class:: classref-reftable-group + +Methods +------- + +.. table:: + :widths: auto + + +---------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`NodePath` | :ref:`get_path_3d`\ (\ index\: :ref:`int`\ ) |const| | + +---------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_tilt_fade_in`\ (\ index\: :ref:`int`\ ) |const| | + +---------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_tilt_fade_out`\ (\ index\: :ref:`int`\ ) |const| | + +---------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_tilt_enabled`\ (\ index\: :ref:`int`\ ) |const| | + +---------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_path_3d`\ (\ index\: :ref:`int`, path_3d\: :ref:`NodePath`\ ) | + +---------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_tilt_enabled`\ (\ index\: :ref:`int`, enabled\: :ref:`bool`\ ) | + +---------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_tilt_fade_in`\ (\ index\: :ref:`int`, size\: :ref:`int`\ ) | + +---------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_tilt_fade_out`\ (\ index\: :ref:`int`, size\: :ref:`int`\ ) | + +---------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+ + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Property Descriptions +--------------------- + +.. _class_SplineIK3D_property_setting_count: + +.. rst-class:: classref-property + +:ref:`int` **setting_count** = ``0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_setting_count**\ (\ value\: :ref:`int`\ ) +- :ref:`int` **get_setting_count**\ (\ ) + +The number of settings. + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Method Descriptions +------------------- + +.. _class_SplineIK3D_method_get_path_3d: + +.. rst-class:: classref-method + +:ref:`NodePath` **get_path_3d**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the node path of the :ref:`Path3D` which is describing the path. + +.. rst-class:: classref-item-separator + +---- + +.. _class_SplineIK3D_method_get_tilt_fade_in: + +.. rst-class:: classref-method + +:ref:`int` **get_tilt_fade_in**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the tilt interpolation method used between the root bone and the start point of the :ref:`Curve3D` when they are apart. See also :ref:`set_tilt_fade_in()`. + +.. rst-class:: classref-item-separator + +---- + +.. _class_SplineIK3D_method_get_tilt_fade_out: + +.. rst-class:: classref-method + +:ref:`int` **get_tilt_fade_out**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the tilt interpolation method used between the end bone and the end point of the :ref:`Curve3D` when they are apart. See also :ref:`set_tilt_fade_out()`. + +.. rst-class:: classref-item-separator + +---- + +.. _class_SplineIK3D_method_is_tilt_enabled: + +.. rst-class:: classref-method + +:ref:`bool` **is_tilt_enabled**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns if the tilt property of the :ref:`Curve3D` affects the bone twist. + +.. rst-class:: classref-item-separator + +---- + +.. _class_SplineIK3D_method_set_path_3d: + +.. rst-class:: classref-method + +|void| **set_path_3d**\ (\ index\: :ref:`int`, path_3d\: :ref:`NodePath`\ ) :ref:`🔗` + +Sets the node path of the :ref:`Path3D` which is describing the path. + +.. rst-class:: classref-item-separator + +---- + +.. _class_SplineIK3D_method_set_tilt_enabled: + +.. rst-class:: classref-method + +|void| **set_tilt_enabled**\ (\ index\: :ref:`int`, enabled\: :ref:`bool`\ ) :ref:`🔗` + +Sets if the tilt property of the :ref:`Curve3D` should affect the bone twist. + +.. rst-class:: classref-item-separator + +---- + +.. _class_SplineIK3D_method_set_tilt_fade_in: + +.. rst-class:: classref-method + +|void| **set_tilt_fade_in**\ (\ index\: :ref:`int`, size\: :ref:`int`\ ) :ref:`🔗` + +If ``size`` is greater than ``0``, the tilt is interpolated between ``size`` start bones from the start point of the :ref:`Curve3D` when they are apart. + +If ``size`` is equal ``0``, the tilts between the root bone head and the start point of the :ref:`Curve3D` are unified with a tilt of the start point of the :ref:`Curve3D`. + +If ``size`` is less than ``0``, the tilts between the root bone and the start point of the :ref:`Curve3D` are ``0.0``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_SplineIK3D_method_set_tilt_fade_out: + +.. rst-class:: classref-method + +|void| **set_tilt_fade_out**\ (\ index\: :ref:`int`, size\: :ref:`int`\ ) :ref:`🔗` + +If ``size`` is greater than ``0``, the tilt is interpolated between ``size`` end bones from the end point of the :ref:`Curve3D` when they are apart. + +If ``size`` is equal ``0``, the tilts between the end bone tail and the end point of the :ref:`Curve3D` are unified with a tilt of the end point of the :ref:`Curve3D`. + +If ``size`` is less than ``0``, the tilts between the end bone and the end point of the :ref:`Curve3D` are ``0.0``. + +.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` +.. |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.)` +.. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)` +.. |void| replace:: :abbr:`void (No return value.)` diff --git a/classes/class_springbonesimulator3d.rst b/classes/class_springbonesimulator3d.rst index 2cae166c7db..d42a7029303 100644 --- a/classes/class_springbonesimulator3d.rst +++ b/classes/class_springbonesimulator3d.rst @@ -55,161 +55,161 @@ Methods .. table:: :widths: auto - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`are_all_child_collisions_enabled`\ (\ index\: :ref:`int`\ ) |const| | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`clear_collisions`\ (\ index\: :ref:`int`\ ) | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`clear_exclude_collisions`\ (\ index\: :ref:`int`\ ) | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`clear_settings`\ (\ ) | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_center_bone`\ (\ index\: :ref:`int`\ ) |const| | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`get_center_bone_name`\ (\ index\: :ref:`int`\ ) |const| | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`CenterFrom` | :ref:`get_center_from`\ (\ index\: :ref:`int`\ ) |const| | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`NodePath` | :ref:`get_center_node`\ (\ index\: :ref:`int`\ ) |const| | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_collision_count`\ (\ index\: :ref:`int`\ ) |const| | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`NodePath` | :ref:`get_collision_path`\ (\ index\: :ref:`int`, collision\: :ref:`int`\ ) |const| | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`get_drag`\ (\ index\: :ref:`int`\ ) |const| | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Curve` | :ref:`get_drag_damping_curve`\ (\ index\: :ref:`int`\ ) |const| | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_end_bone`\ (\ index\: :ref:`int`\ ) |const| | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`BoneDirection` | :ref:`get_end_bone_direction`\ (\ index\: :ref:`int`\ ) |const| | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`get_end_bone_length`\ (\ index\: :ref:`int`\ ) |const| | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`get_end_bone_name`\ (\ index\: :ref:`int`\ ) |const| | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_exclude_collision_count`\ (\ index\: :ref:`int`\ ) |const| | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`NodePath` | :ref:`get_exclude_collision_path`\ (\ index\: :ref:`int`, collision\: :ref:`int`\ ) |const| | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`get_gravity`\ (\ index\: :ref:`int`\ ) |const| | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Curve` | :ref:`get_gravity_damping_curve`\ (\ index\: :ref:`int`\ ) |const| | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector3` | :ref:`get_gravity_direction`\ (\ index\: :ref:`int`\ ) |const| | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_joint_bone`\ (\ index\: :ref:`int`, joint\: :ref:`int`\ ) |const| | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`get_joint_bone_name`\ (\ index\: :ref:`int`, joint\: :ref:`int`\ ) |const| | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_joint_count`\ (\ index\: :ref:`int`\ ) |const| | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`get_joint_drag`\ (\ index\: :ref:`int`, joint\: :ref:`int`\ ) |const| | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`get_joint_gravity`\ (\ index\: :ref:`int`, joint\: :ref:`int`\ ) |const| | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector3` | :ref:`get_joint_gravity_direction`\ (\ index\: :ref:`int`, joint\: :ref:`int`\ ) |const| | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`get_joint_radius`\ (\ index\: :ref:`int`, joint\: :ref:`int`\ ) |const| | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RotationAxis` | :ref:`get_joint_rotation_axis`\ (\ index\: :ref:`int`, joint\: :ref:`int`\ ) |const| | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector3` | :ref:`get_joint_rotation_axis_vector`\ (\ index\: :ref:`int`, joint\: :ref:`int`\ ) |const| | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`get_joint_stiffness`\ (\ index\: :ref:`int`, joint\: :ref:`int`\ ) |const| | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`get_radius`\ (\ index\: :ref:`int`\ ) |const| | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Curve` | :ref:`get_radius_damping_curve`\ (\ index\: :ref:`int`\ ) |const| | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_root_bone`\ (\ index\: :ref:`int`\ ) |const| | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`get_root_bone_name`\ (\ index\: :ref:`int`\ ) |const| | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RotationAxis` | :ref:`get_rotation_axis`\ (\ index\: :ref:`int`\ ) |const| | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Vector3` | :ref:`get_rotation_axis_vector`\ (\ index\: :ref:`int`\ ) |const| | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`float` | :ref:`get_stiffness`\ (\ index\: :ref:`int`\ ) |const| | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Curve` | :ref:`get_stiffness_damping_curve`\ (\ index\: :ref:`int`\ ) |const| | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_config_individual`\ (\ index\: :ref:`int`\ ) |const| | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_end_bone_extended`\ (\ index\: :ref:`int`\ ) |const| | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`reset`\ (\ ) | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_center_bone`\ (\ index\: :ref:`int`, bone\: :ref:`int`\ ) | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_center_bone_name`\ (\ index\: :ref:`int`, bone_name\: :ref:`String`\ ) | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_center_from`\ (\ index\: :ref:`int`, center_from\: :ref:`CenterFrom`\ ) | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_center_node`\ (\ index\: :ref:`int`, node_path\: :ref:`NodePath`\ ) | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_collision_count`\ (\ index\: :ref:`int`, count\: :ref:`int`\ ) | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_collision_path`\ (\ index\: :ref:`int`, collision\: :ref:`int`, node_path\: :ref:`NodePath`\ ) | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_drag`\ (\ index\: :ref:`int`, drag\: :ref:`float`\ ) | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_drag_damping_curve`\ (\ index\: :ref:`int`, curve\: :ref:`Curve`\ ) | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_enable_all_child_collisions`\ (\ index\: :ref:`int`, enabled\: :ref:`bool`\ ) | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_end_bone`\ (\ index\: :ref:`int`, bone\: :ref:`int`\ ) | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_end_bone_direction`\ (\ index\: :ref:`int`, bone_direction\: :ref:`BoneDirection`\ ) | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_end_bone_length`\ (\ index\: :ref:`int`, length\: :ref:`float`\ ) | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_end_bone_name`\ (\ index\: :ref:`int`, bone_name\: :ref:`String`\ ) | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_exclude_collision_count`\ (\ index\: :ref:`int`, count\: :ref:`int`\ ) | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_exclude_collision_path`\ (\ index\: :ref:`int`, collision\: :ref:`int`, node_path\: :ref:`NodePath`\ ) | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_extend_end_bone`\ (\ index\: :ref:`int`, enabled\: :ref:`bool`\ ) | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_gravity`\ (\ index\: :ref:`int`, gravity\: :ref:`float`\ ) | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_gravity_damping_curve`\ (\ index\: :ref:`int`, curve\: :ref:`Curve`\ ) | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_gravity_direction`\ (\ index\: :ref:`int`, gravity_direction\: :ref:`Vector3`\ ) | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_individual_config`\ (\ index\: :ref:`int`, enabled\: :ref:`bool`\ ) | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_joint_drag`\ (\ index\: :ref:`int`, joint\: :ref:`int`, drag\: :ref:`float`\ ) | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_joint_gravity`\ (\ index\: :ref:`int`, joint\: :ref:`int`, gravity\: :ref:`float`\ ) | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_joint_gravity_direction`\ (\ index\: :ref:`int`, joint\: :ref:`int`, gravity_direction\: :ref:`Vector3`\ ) | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_joint_radius`\ (\ index\: :ref:`int`, joint\: :ref:`int`, radius\: :ref:`float`\ ) | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_joint_rotation_axis`\ (\ index\: :ref:`int`, joint\: :ref:`int`, axis\: :ref:`RotationAxis`\ ) | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_joint_rotation_axis_vector`\ (\ index\: :ref:`int`, joint\: :ref:`int`, vector\: :ref:`Vector3`\ ) | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_joint_stiffness`\ (\ index\: :ref:`int`, joint\: :ref:`int`, stiffness\: :ref:`float`\ ) | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_radius`\ (\ index\: :ref:`int`, radius\: :ref:`float`\ ) | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_radius_damping_curve`\ (\ index\: :ref:`int`, curve\: :ref:`Curve`\ ) | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_root_bone`\ (\ index\: :ref:`int`, bone\: :ref:`int`\ ) | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_root_bone_name`\ (\ index\: :ref:`int`, bone_name\: :ref:`String`\ ) | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_rotation_axis`\ (\ index\: :ref:`int`, axis\: :ref:`RotationAxis`\ ) | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_rotation_axis_vector`\ (\ index\: :ref:`int`, vector\: :ref:`Vector3`\ ) | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_stiffness`\ (\ index\: :ref:`int`, stiffness\: :ref:`float`\ ) | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_stiffness_damping_curve`\ (\ index\: :ref:`int`, curve\: :ref:`Curve`\ ) | - +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`are_all_child_collisions_enabled`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`clear_collisions`\ (\ index\: :ref:`int`\ ) | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`clear_exclude_collisions`\ (\ index\: :ref:`int`\ ) | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`clear_settings`\ (\ ) | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_center_bone`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_center_bone_name`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`CenterFrom` | :ref:`get_center_from`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`NodePath` | :ref:`get_center_node`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_collision_count`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`NodePath` | :ref:`get_collision_path`\ (\ index\: :ref:`int`, collision\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`get_drag`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Curve` | :ref:`get_drag_damping_curve`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_end_bone`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`BoneDirection` | :ref:`get_end_bone_direction`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`get_end_bone_length`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_end_bone_name`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_exclude_collision_count`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`NodePath` | :ref:`get_exclude_collision_path`\ (\ index\: :ref:`int`, collision\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`get_gravity`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Curve` | :ref:`get_gravity_damping_curve`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector3` | :ref:`get_gravity_direction`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_joint_bone`\ (\ index\: :ref:`int`, joint\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_joint_bone_name`\ (\ index\: :ref:`int`, joint\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_joint_count`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`get_joint_drag`\ (\ index\: :ref:`int`, joint\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`get_joint_gravity`\ (\ index\: :ref:`int`, joint\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector3` | :ref:`get_joint_gravity_direction`\ (\ index\: :ref:`int`, joint\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`get_joint_radius`\ (\ index\: :ref:`int`, joint\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RotationAxis` | :ref:`get_joint_rotation_axis`\ (\ index\: :ref:`int`, joint\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector3` | :ref:`get_joint_rotation_axis_vector`\ (\ index\: :ref:`int`, joint\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`get_joint_stiffness`\ (\ index\: :ref:`int`, joint\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`get_radius`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Curve` | :ref:`get_radius_damping_curve`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_root_bone`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_root_bone_name`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RotationAxis` | :ref:`get_rotation_axis`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector3` | :ref:`get_rotation_axis_vector`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`get_stiffness`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Curve` | :ref:`get_stiffness_damping_curve`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_config_individual`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_end_bone_extended`\ (\ index\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`reset`\ (\ ) | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_center_bone`\ (\ index\: :ref:`int`, bone\: :ref:`int`\ ) | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_center_bone_name`\ (\ index\: :ref:`int`, bone_name\: :ref:`String`\ ) | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_center_from`\ (\ index\: :ref:`int`, center_from\: :ref:`CenterFrom`\ ) | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_center_node`\ (\ index\: :ref:`int`, node_path\: :ref:`NodePath`\ ) | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_collision_count`\ (\ index\: :ref:`int`, count\: :ref:`int`\ ) | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_collision_path`\ (\ index\: :ref:`int`, collision\: :ref:`int`, node_path\: :ref:`NodePath`\ ) | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_drag`\ (\ index\: :ref:`int`, drag\: :ref:`float`\ ) | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_drag_damping_curve`\ (\ index\: :ref:`int`, curve\: :ref:`Curve`\ ) | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_enable_all_child_collisions`\ (\ index\: :ref:`int`, enabled\: :ref:`bool`\ ) | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_end_bone`\ (\ index\: :ref:`int`, bone\: :ref:`int`\ ) | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_end_bone_direction`\ (\ index\: :ref:`int`, bone_direction\: :ref:`BoneDirection`\ ) | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_end_bone_length`\ (\ index\: :ref:`int`, length\: :ref:`float`\ ) | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_end_bone_name`\ (\ index\: :ref:`int`, bone_name\: :ref:`String`\ ) | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_exclude_collision_count`\ (\ index\: :ref:`int`, count\: :ref:`int`\ ) | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_exclude_collision_path`\ (\ index\: :ref:`int`, collision\: :ref:`int`, node_path\: :ref:`NodePath`\ ) | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_extend_end_bone`\ (\ index\: :ref:`int`, enabled\: :ref:`bool`\ ) | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_gravity`\ (\ index\: :ref:`int`, gravity\: :ref:`float`\ ) | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_gravity_damping_curve`\ (\ index\: :ref:`int`, curve\: :ref:`Curve`\ ) | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_gravity_direction`\ (\ index\: :ref:`int`, gravity_direction\: :ref:`Vector3`\ ) | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_individual_config`\ (\ index\: :ref:`int`, enabled\: :ref:`bool`\ ) | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_joint_drag`\ (\ index\: :ref:`int`, joint\: :ref:`int`, drag\: :ref:`float`\ ) | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_joint_gravity`\ (\ index\: :ref:`int`, joint\: :ref:`int`, gravity\: :ref:`float`\ ) | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_joint_gravity_direction`\ (\ index\: :ref:`int`, joint\: :ref:`int`, gravity_direction\: :ref:`Vector3`\ ) | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_joint_radius`\ (\ index\: :ref:`int`, joint\: :ref:`int`, radius\: :ref:`float`\ ) | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_joint_rotation_axis`\ (\ index\: :ref:`int`, joint\: :ref:`int`, axis\: :ref:`RotationAxis`\ ) | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_joint_rotation_axis_vector`\ (\ index\: :ref:`int`, joint\: :ref:`int`, vector\: :ref:`Vector3`\ ) | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_joint_stiffness`\ (\ index\: :ref:`int`, joint\: :ref:`int`, stiffness\: :ref:`float`\ ) | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_radius`\ (\ index\: :ref:`int`, radius\: :ref:`float`\ ) | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_radius_damping_curve`\ (\ index\: :ref:`int`, curve\: :ref:`Curve`\ ) | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_root_bone`\ (\ index\: :ref:`int`, bone\: :ref:`int`\ ) | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_root_bone_name`\ (\ index\: :ref:`int`, bone_name\: :ref:`String`\ ) | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_rotation_axis`\ (\ index\: :ref:`int`, axis\: :ref:`RotationAxis`\ ) | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_rotation_axis_vector`\ (\ index\: :ref:`int`, vector\: :ref:`Vector3`\ ) | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_stiffness`\ (\ index\: :ref:`int`, stiffness\: :ref:`float`\ ) | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_stiffness_damping_curve`\ (\ index\: :ref:`int`, curve\: :ref:`Curve`\ ) | + +-------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -220,72 +220,6 @@ Methods Enumerations ------------ -.. _enum_SpringBoneSimulator3D_BoneDirection: - -.. rst-class:: classref-enumeration - -enum **BoneDirection**: :ref:`🔗` - -.. _class_SpringBoneSimulator3D_constant_BONE_DIRECTION_PLUS_X: - -.. rst-class:: classref-enumeration-constant - -:ref:`BoneDirection` **BONE_DIRECTION_PLUS_X** = ``0`` - -Enumerated value for the +X axis. - -.. _class_SpringBoneSimulator3D_constant_BONE_DIRECTION_MINUS_X: - -.. rst-class:: classref-enumeration-constant - -:ref:`BoneDirection` **BONE_DIRECTION_MINUS_X** = ``1`` - -Enumerated value for the -X axis. - -.. _class_SpringBoneSimulator3D_constant_BONE_DIRECTION_PLUS_Y: - -.. rst-class:: classref-enumeration-constant - -:ref:`BoneDirection` **BONE_DIRECTION_PLUS_Y** = ``2`` - -Enumerated value for the +Y axis. - -.. _class_SpringBoneSimulator3D_constant_BONE_DIRECTION_MINUS_Y: - -.. rst-class:: classref-enumeration-constant - -:ref:`BoneDirection` **BONE_DIRECTION_MINUS_Y** = ``3`` - -Enumerated value for the -Y axis. - -.. _class_SpringBoneSimulator3D_constant_BONE_DIRECTION_PLUS_Z: - -.. rst-class:: classref-enumeration-constant - -:ref:`BoneDirection` **BONE_DIRECTION_PLUS_Z** = ``4`` - -Enumerated value for the +Z axis. - -.. _class_SpringBoneSimulator3D_constant_BONE_DIRECTION_MINUS_Z: - -.. rst-class:: classref-enumeration-constant - -:ref:`BoneDirection` **BONE_DIRECTION_MINUS_Z** = ``5`` - -Enumerated value for the -Z axis. - -.. _class_SpringBoneSimulator3D_constant_BONE_DIRECTION_FROM_PARENT: - -.. rst-class:: classref-enumeration-constant - -:ref:`BoneDirection` **BONE_DIRECTION_FROM_PARENT** = ``6`` - -Enumerated value for the axis from a parent bone to the child bone. - -.. rst-class:: classref-item-separator - ----- - .. _enum_SpringBoneSimulator3D_CenterFrom: .. rst-class:: classref-enumeration @@ -320,56 +254,6 @@ The bone pose origin of the parent :ref:`Skeleton3D` specified If :ref:`Node3D` is not found, the parent :ref:`Skeleton3D` is treated as center. -.. rst-class:: classref-item-separator - ----- - -.. _enum_SpringBoneSimulator3D_RotationAxis: - -.. rst-class:: classref-enumeration - -enum **RotationAxis**: :ref:`🔗` - -.. _class_SpringBoneSimulator3D_constant_ROTATION_AXIS_X: - -.. rst-class:: classref-enumeration-constant - -:ref:`RotationAxis` **ROTATION_AXIS_X** = ``0`` - -Enumerated value for the rotation of the X axis. - -.. _class_SpringBoneSimulator3D_constant_ROTATION_AXIS_Y: - -.. rst-class:: classref-enumeration-constant - -:ref:`RotationAxis` **ROTATION_AXIS_Y** = ``1`` - -Enumerated value for the rotation of the Y axis. - -.. _class_SpringBoneSimulator3D_constant_ROTATION_AXIS_Z: - -.. rst-class:: classref-enumeration-constant - -:ref:`RotationAxis` **ROTATION_AXIS_Z** = ``2`` - -Enumerated value for the rotation of the Z axis. - -.. _class_SpringBoneSimulator3D_constant_ROTATION_AXIS_ALL: - -.. rst-class:: classref-enumeration-constant - -:ref:`RotationAxis` **ROTATION_AXIS_ALL** = ``3`` - -Enumerated value for the unconstrained rotation. - -.. _class_SpringBoneSimulator3D_constant_ROTATION_AXIS_CUSTOM: - -.. rst-class:: classref-enumeration-constant - -:ref:`RotationAxis` **ROTATION_AXIS_CUSTOM** = ``4`` - -Enumerated value for an optional rotation axis. See also :ref:`set_joint_rotation_axis_vector()`. - .. rst-class:: classref-section-separator ---- @@ -580,9 +464,9 @@ Returns the end bone index of the bone chain. .. rst-class:: classref-method -:ref:`BoneDirection` **get_end_bone_direction**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` +:ref:`BoneDirection` **get_end_bone_direction**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` -Returns the end bone's tail direction of the bone chain when :ref:`is_end_bone_extended()` is ``true``. +Returns the tail direction of the end bone of the bone chain when :ref:`is_end_bone_extended()` is ``true``. .. rst-class:: classref-item-separator @@ -594,7 +478,7 @@ Returns the end bone's tail direction of the bone chain when :ref:`is_end_bone_e :ref:`float` **get_end_bone_length**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` -Returns the end bone's tail length of the bone chain when :ref:`is_end_bone_extended()` is ``true``. +Returns the end bone tail length of the bone chain when :ref:`is_end_bone_extended()` is ``true``. .. rst-class:: classref-item-separator @@ -760,7 +644,7 @@ Returns the radius at ``joint`` in the bone chain's joint list. .. rst-class:: classref-method -:ref:`RotationAxis` **get_joint_rotation_axis**\ (\ index\: :ref:`int`, joint\: :ref:`int`\ ) |const| :ref:`🔗` +:ref:`RotationAxis` **get_joint_rotation_axis**\ (\ index\: :ref:`int`, joint\: :ref:`int`\ ) |const| :ref:`🔗` Returns the rotation axis at ``joint`` in the bone chain's joint list. @@ -776,7 +660,7 @@ Returns the rotation axis at ``joint`` in the bone chain's joint list. Returns the rotation axis vector for the specified joint in the bone chain. This vector represents the axis around which the joint can rotate. It is determined based on the rotation axis set for the joint. -If :ref:`get_joint_rotation_axis()` is :ref:`ROTATION_AXIS_ALL`, this method returns ``Vector3(0, 0, 0)``. +If :ref:`get_joint_rotation_axis()` is :ref:`SkeletonModifier3D.ROTATION_AXIS_ALL`, this method returns ``Vector3(0, 0, 0)``. .. rst-class:: classref-item-separator @@ -846,7 +730,7 @@ Returns the root bone name of the bone chain. .. rst-class:: classref-method -:ref:`RotationAxis` **get_rotation_axis**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` +:ref:`RotationAxis` **get_rotation_axis**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` Returns the rotation axis of the bone chain. @@ -862,7 +746,7 @@ Returns the rotation axis of the bone chain. Returns the rotation axis vector of the bone chain. This vector represents the axis around which the bone chain can rotate. It is determined based on the rotation axis set for the bone chain. -If :ref:`get_rotation_axis()` is :ref:`ROTATION_AXIS_ALL`, this method returns ``Vector3(0, 0, 0)``. +If :ref:`get_rotation_axis()` is :ref:`SkeletonModifier3D.ROTATION_AXIS_ALL`, this method returns ``Vector3(0, 0, 0)``. .. rst-class:: classref-item-separator @@ -910,7 +794,7 @@ Returns ``true`` if the config can be edited individually for each joint. :ref:`bool` **is_end_bone_extended**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` -Returns ``true`` if the end bone is extended to have the tail. +Returns ``true`` if the end bone is extended to have a tail. .. rst-class:: classref-item-separator @@ -1064,7 +948,7 @@ Sets the end bone index of the bone chain. .. rst-class:: classref-method -|void| **set_end_bone_direction**\ (\ index\: :ref:`int`, bone_direction\: :ref:`BoneDirection`\ ) :ref:`🔗` +|void| **set_end_bone_direction**\ (\ index\: :ref:`int`, bone_direction\: :ref:`BoneDirection`\ ) :ref:`🔗` Sets the end bone tail direction of the bone chain when :ref:`is_end_bone_extended()` is ``true``. @@ -1128,11 +1012,9 @@ Sets the node path of the :ref:`SpringBoneCollision3D`, enabled\: :ref:`bool`\ ) :ref:`🔗` -If ``enabled`` is ``true``, the end bone is extended to have the tail. - -The extended tail config is allocated to the last element in the joint list. +If ``enabled`` is ``true``, the end bone is extended to have a tail. -In other words, if you set ``enabled`` is ``false``, the config of last element in the joint list has no effect in the simulated result. +The extended tail config is allocated to the last element in the joint list. In other words, if you set ``enabled`` to ``false``, the config of the last element in the joint list has no effect in the simulated result. .. rst-class:: classref-item-separator @@ -1244,11 +1126,11 @@ Sets the joint radius at ``joint`` in the bone chain's joint list when :ref:`is_ .. rst-class:: classref-method -|void| **set_joint_rotation_axis**\ (\ index\: :ref:`int`, joint\: :ref:`int`, axis\: :ref:`RotationAxis`\ ) :ref:`🔗` +|void| **set_joint_rotation_axis**\ (\ index\: :ref:`int`, joint\: :ref:`int`, axis\: :ref:`RotationAxis`\ ) :ref:`🔗` Sets the rotation axis at ``joint`` in the bone chain's joint list when :ref:`is_config_individual()` is ``true``. -The axes are based on the :ref:`Skeleton3D.get_bone_rest()`'s space, if ``axis`` is :ref:`ROTATION_AXIS_CUSTOM`, you can specify any axis. +The axes are based on the :ref:`Skeleton3D.get_bone_rest()`'s space, if ``axis`` is :ref:`SkeletonModifier3D.ROTATION_AXIS_CUSTOM`, you can specify any axis. \ **Note:** The rotation axis and the forward vector shouldn't be colinear to avoid unintended rotation since **SpringBoneSimulator3D** does not factor in twisting forces. @@ -1266,7 +1148,7 @@ Sets the rotation axis vector for the specified joint in the bone chain. This vector is normalized by an internal process and represents the axis around which the bone chain can rotate. -If the vector length is ``0``, it is considered synonymous with :ref:`ROTATION_AXIS_ALL`. +If the vector length is ``0``, it is considered synonymous with :ref:`SkeletonModifier3D.ROTATION_AXIS_ALL`. .. rst-class:: classref-item-separator @@ -1338,11 +1220,11 @@ Sets the root bone name of the bone chain. .. rst-class:: classref-method -|void| **set_rotation_axis**\ (\ index\: :ref:`int`, axis\: :ref:`RotationAxis`\ ) :ref:`🔗` +|void| **set_rotation_axis**\ (\ index\: :ref:`int`, axis\: :ref:`RotationAxis`\ ) :ref:`🔗` Sets the rotation axis of the bone chain. If set to a specific axis, it acts like a hinge joint. The value is cached in each joint setting in the joint list. -The axes are based on the :ref:`Skeleton3D.get_bone_rest()`'s space, if ``axis`` is :ref:`ROTATION_AXIS_CUSTOM`, you can specify any axis. +The axes are based on the :ref:`Skeleton3D.get_bone_rest()`'s space, if ``axis`` is :ref:`SkeletonModifier3D.ROTATION_AXIS_CUSTOM`, you can specify any axis. \ **Note:** The rotation axis vector and the forward vector shouldn't be colinear to avoid unintended rotation since **SpringBoneSimulator3D** does not factor in twisting forces. @@ -1360,7 +1242,7 @@ Sets the rotation axis vector of the bone chain. The value is cached in each joi This vector is normalized by an internal process and represents the axis around which the bone chain can rotate. -If the vector length is ``0``, it is considered synonymous with :ref:`ROTATION_AXIS_ALL`. +If the vector length is ``0``, it is considered synonymous with :ref:`SkeletonModifier3D.ROTATION_AXIS_ALL`. .. rst-class:: classref-item-separator diff --git a/classes/class_textline.rst b/classes/class_textline.rst index 6c4e7bbf66a..e370c829836 100644 --- a/classes/class_textline.rst +++ b/classes/class_textline.rst @@ -68,6 +68,8 @@ Methods +---------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`draw_outline`\ (\ canvas\: :ref:`RID`, pos\: :ref:`Vector2`, outline_size\: :ref:`int` = 1, color\: :ref:`Color` = Color(1, 1, 1, 1), oversampling\: :ref:`float` = 0.0\ ) |const| | +---------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`TextLine` | :ref:`duplicate`\ (\ ) |const| | + +---------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Direction` | :ref:`get_inferred_direction`\ (\ ) |const| | +---------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`get_line_ascent`\ (\ ) |const| | @@ -88,6 +90,8 @@ Methods +---------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Vector2` | :ref:`get_size`\ (\ ) |const| | +---------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`has_object`\ (\ key\: :ref:`Variant`\ ) |const| | + +---------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`hit_test`\ (\ coords\: :ref:`float`\ ) |const| | +---------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`resize_object`\ (\ key\: :ref:`Variant`, size\: :ref:`Vector2`, inline_align\: :ref:`InlineAlignment` = 5, baseline\: :ref:`float` = 0.0\ ) | @@ -324,6 +328,18 @@ Draw text into a canvas item at a given position, with ``color``. ``pos`` specif ---- +.. _class_TextLine_method_duplicate: + +.. rst-class:: classref-method + +:ref:`TextLine` **duplicate**\ (\ ) |const| :ref:`🔗` + +Duplicates this **TextLine**. + +.. rst-class:: classref-item-separator + +---- + .. _class_TextLine_method_get_inferred_direction: .. rst-class:: classref-method @@ -444,6 +460,18 @@ Returns size of the bounding box of the text. ---- +.. _class_TextLine_method_has_object: + +.. rst-class:: classref-method + +:ref:`bool` **has_object**\ (\ key\: :ref:`Variant`\ ) |const| :ref:`🔗` + +Returns ``true`` if an object with ``key`` is embedded in this line. + +.. rst-class:: classref-item-separator + +---- + .. _class_TextLine_method_hit_test: .. rst-class:: classref-method diff --git a/classes/class_textparagraph.rst b/classes/class_textparagraph.rst index bb4134559de..f06231c67d5 100644 --- a/classes/class_textparagraph.rst +++ b/classes/class_textparagraph.rst @@ -86,6 +86,8 @@ Methods +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`draw_outline`\ (\ canvas\: :ref:`RID`, pos\: :ref:`Vector2`, outline_size\: :ref:`int` = 1, color\: :ref:`Color` = Color(1, 1, 1, 1), dc_color\: :ref:`Color` = Color(1, 1, 1, 1), oversampling\: :ref:`float` = 0.0\ ) |const| | +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`TextParagraph` | :ref:`duplicate`\ (\ ) |const| | + +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`get_dropcap_lines`\ (\ ) |const| | +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`get_dropcap_rid`\ (\ ) |const| | @@ -124,6 +126,8 @@ Methods +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Vector2` | :ref:`get_size`\ (\ ) |const| | +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`has_object`\ (\ key\: :ref:`Variant`\ ) |const| | + +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`hit_test`\ (\ coords\: :ref:`Vector2`\ ) |const| | +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`resize_object`\ (\ key\: :ref:`Variant`, size\: :ref:`Vector2`, inline_align\: :ref:`InlineAlignment` = 5, baseline\: :ref:`float` = 0.0\ ) | @@ -490,6 +494,18 @@ Draw outlines of all lines of the text and drop cap into a canvas item at a give ---- +.. _class_TextParagraph_method_duplicate: + +.. rst-class:: classref-method + +:ref:`TextParagraph` **duplicate**\ (\ ) |const| :ref:`🔗` + +Duplicates this **TextParagraph**. + +.. rst-class:: classref-item-separator + +---- + .. _class_TextParagraph_method_get_dropcap_lines: .. rst-class:: classref-method @@ -718,6 +734,18 @@ Returns the size of the bounding box of the paragraph. ---- +.. _class_TextParagraph_method_has_object: + +.. rst-class:: classref-method + +:ref:`bool` **has_object**\ (\ key\: :ref:`Variant`\ ) |const| :ref:`🔗` + +Returns ``true`` if an object with ``key`` is embedded in this shaped text buffer. + +.. rst-class:: classref-item-separator + +---- + .. _class_TextParagraph_method_hit_test: .. rst-class:: classref-method diff --git a/classes/class_textserver.rst b/classes/class_textserver.rst index 11c72c8423c..2feccdfa5b8 100644 --- a/classes/class_textserver.rst +++ b/classes/class_textserver.rst @@ -385,6 +385,8 @@ Methods +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`shaped_text_draw_outline`\ (\ shaped\: :ref:`RID`, canvas\: :ref:`RID`, pos\: :ref:`Vector2`, clip_l\: :ref:`float` = -1, clip_r\: :ref:`float` = -1, outline_size\: :ref:`int` = 1, color\: :ref:`Color` = Color(1, 1, 1, 1), oversampling\: :ref:`float` = 0.0\ ) |const| | +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`shaped_text_duplicate`\ (\ rid\: :ref:`RID`\ ) | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`shaped_text_fit_to_width`\ (\ shaped\: :ref:`RID`, width\: :ref:`float`, justification_flags\: |bitfield|\[:ref:`JustificationFlag`\] = 3\ ) | +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`shaped_text_get_ascent`\ (\ shaped\: :ref:`RID`\ ) |const| | @@ -455,6 +457,8 @@ Methods +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`PackedInt32Array` | :ref:`shaped_text_get_word_breaks`\ (\ shaped\: :ref:`RID`, grapheme_flags\: |bitfield|\[:ref:`GraphemeFlag`\] = 264, skip_grapheme_flags\: |bitfield|\[:ref:`GraphemeFlag`\] = 4\ ) |const| | +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`shaped_text_has_object`\ (\ shaped\: :ref:`RID`, key\: :ref:`Variant`\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`shaped_text_has_visible_chars`\ (\ shaped\: :ref:`RID`\ ) |const| | +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`shaped_text_hit_test_grapheme`\ (\ shaped\: :ref:`RID`, coords\: :ref:`float`\ ) |const| | @@ -3758,6 +3762,18 @@ Draw the outline of the shaped text into a canvas item at a given position, with ---- +.. _class_TextServer_method_shaped_text_duplicate: + +.. rst-class:: classref-method + +:ref:`RID` **shaped_text_duplicate**\ (\ rid\: :ref:`RID`\ ) :ref:`🔗` + +Duplicates shaped text buffer. + +.. rst-class:: classref-item-separator + +---- + .. _class_TextServer_method_shaped_text_fit_to_width: .. rst-class:: classref-method @@ -4184,6 +4200,18 @@ Breaks text into words and returns array of character ranges. Use ``grapheme_fla ---- +.. _class_TextServer_method_shaped_text_has_object: + +.. rst-class:: classref-method + +:ref:`bool` **shaped_text_has_object**\ (\ shaped\: :ref:`RID`, key\: :ref:`Variant`\ ) |const| :ref:`🔗` + +Returns ``true`` if an object with ``key`` is embedded in this shaped text buffer. + +.. rst-class:: classref-item-separator + +---- + .. _class_TextServer_method_shaped_text_has_visible_chars: .. rst-class:: classref-method diff --git a/classes/class_textserverextension.rst b/classes/class_textserverextension.rst index 70a6bab2b5e..8c5b5107feb 100644 --- a/classes/class_textserverextension.rst +++ b/classes/class_textserverextension.rst @@ -374,6 +374,8 @@ Methods +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`_shaped_text_draw_outline`\ (\ shaped\: :ref:`RID`, canvas\: :ref:`RID`, pos\: :ref:`Vector2`, clip_l\: :ref:`float`, clip_r\: :ref:`float`, outline_size\: :ref:`int`, color\: :ref:`Color`, oversampling\: :ref:`float`\ ) |virtual| |const| | +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_shaped_text_duplicate`\ (\ shaped\: :ref:`RID`\ ) |virtual| |required| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`_shaped_text_fit_to_width`\ (\ shaped\: :ref:`RID`, width\: :ref:`float`, justification_flags\: |bitfield|\[:ref:`JustificationFlag`\]\ ) |virtual| | +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`_shaped_text_get_ascent`\ (\ shaped\: :ref:`RID`\ ) |virtual| |required| |const| | @@ -444,6 +446,8 @@ Methods +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`PackedInt32Array` | :ref:`_shaped_text_get_word_breaks`\ (\ shaped\: :ref:`RID`, grapheme_flags\: |bitfield|\[:ref:`GraphemeFlag`\], skip_grapheme_flags\: |bitfield|\[:ref:`GraphemeFlag`\]\ ) |virtual| |const| | +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`_shaped_text_has_object`\ (\ shaped\: :ref:`RID`, key\: :ref:`Variant`\ ) |virtual| |required| |const| | + +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`_shaped_text_hit_test_grapheme`\ (\ shaped\: :ref:`RID`, coord\: :ref:`float`\ ) |virtual| |const| | +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`_shaped_text_hit_test_position`\ (\ shaped\: :ref:`RID`, coord\: :ref:`float`\ ) |virtual| |const| | @@ -2574,6 +2578,18 @@ Draw the outline of the shaped text into a canvas item at a given position, with ---- +.. _class_TextServerExtension_private_method__shaped_text_duplicate: + +.. rst-class:: classref-method + +:ref:`RID` **_shaped_text_duplicate**\ (\ shaped\: :ref:`RID`\ ) |virtual| |required| :ref:`🔗` + +Duplicates shaped text buffer. + +.. rst-class:: classref-item-separator + +---- + .. _class_TextServerExtension_private_method__shaped_text_fit_to_width: .. rst-class:: classref-method @@ -2994,6 +3010,18 @@ Breaks text into words and returns array of character ranges. Use ``grapheme_fla ---- +.. _class_TextServerExtension_private_method__shaped_text_has_object: + +.. rst-class:: classref-method + +:ref:`bool` **_shaped_text_has_object**\ (\ shaped\: :ref:`RID`, key\: :ref:`Variant`\ ) |virtual| |required| |const| :ref:`🔗` + +Returns ``true`` if an object with ``key`` is embedded in this shaped text buffer. + +.. rst-class:: classref-item-separator + +---- + .. _class_TextServerExtension_private_method__shaped_text_hit_test_grapheme: .. rst-class:: classref-method diff --git a/classes/class_treeitem.rst b/classes/class_treeitem.rst index f45f9e75719..199b3d8f88d 100644 --- a/classes/class_treeitem.rst +++ b/classes/class_treeitem.rst @@ -104,6 +104,8 @@ Methods +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`get_custom_font_size`\ (\ column\: :ref:`int`\ ) |const| | +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`StyleBox` | :ref:`get_custom_stylebox`\ (\ column\: :ref:`int`\ ) |const| | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`get_description`\ (\ column\: :ref:`int`\ ) |const| | +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`get_expand_right`\ (\ column\: :ref:`int`\ ) |const| | @@ -226,6 +228,8 @@ Methods +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`set_custom_font_size`\ (\ column\: :ref:`int`, font_size\: :ref:`int`\ ) | +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_custom_stylebox`\ (\ column\: :ref:`int`, stylebox\: :ref:`StyleBox`\ ) | + +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`set_description`\ (\ column\: :ref:`int`, description\: :ref:`String`\ ) | +-------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`set_edit_multiline`\ (\ column\: :ref:`int`, multiline\: :ref:`bool`\ ) | @@ -734,6 +738,18 @@ Returns custom font size used to draw text in the column ``column``. ---- +.. _class_TreeItem_method_get_custom_stylebox: + +.. rst-class:: classref-method + +:ref:`StyleBox` **get_custom_stylebox**\ (\ column\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the given column's custom :ref:`StyleBox` used to draw the background. + +.. rst-class:: classref-item-separator + +---- + .. _class_TreeItem_method_get_description: .. rst-class:: classref-method @@ -1420,6 +1436,8 @@ Makes a cell with :ref:`CELL_MODE_CUSTOM` is set, the background color will be drawn behind it. + .. rst-class:: classref-item-separator ---- @@ -1490,6 +1508,20 @@ Sets custom font size used to draw text in the given ``column``. ---- +.. _class_TreeItem_method_set_custom_stylebox: + +.. rst-class:: classref-method + +|void| **set_custom_stylebox**\ (\ column\: :ref:`int`, stylebox\: :ref:`StyleBox`\ ) :ref:`🔗` + +Sets the given column's custom :ref:`StyleBox` used to draw the background. + +\ **Note:** If a custom background color is set, the :ref:`StyleBox` will be drawn in front of it. + +.. rst-class:: classref-item-separator + +---- + .. _class_TreeItem_method_set_description: .. rst-class:: classref-method diff --git a/classes/class_twoboneik3d.rst b/classes/class_twoboneik3d.rst new file mode 100644 index 00000000000..0c94d89dc5e --- /dev/null +++ b/classes/class_twoboneik3d.rst @@ -0,0 +1,491 @@ +:github_url: hide + +.. DO NOT EDIT THIS FILE!!! +.. Generated automatically from Godot engine sources. +.. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py. +.. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/TwoBoneIK3D.xml. + +.. _class_TwoBoneIK3D: + +TwoBoneIK3D +=========== + +**Inherits:** :ref:`IKModifier3D` **<** :ref:`SkeletonModifier3D` **<** :ref:`Node3D` **<** :ref:`Node` **<** :ref:`Object` + +Rotation based intersection of two circles inverse kinematics solver. + +.. rst-class:: classref-introduction-group + +Description +----------- + +This :ref:`IKModifier3D` requires a pole target. It provides deterministic results by constructing a plane from each joint and pole target and finding the intersection of two circles (disks in 3D). + +This IK can handle twist by setting the pole direction. If there are more than one bone between each set bone, their rotations are ignored, and the straight line connecting the root-middle and middle-end joints are treated as virtual bones. + +.. rst-class:: classref-reftable-group + +Properties +---------- + +.. table:: + :widths: auto + + +-----------------------+----------------------------------------------------------------+-------+ + | :ref:`int` | :ref:`setting_count` | ``0`` | + +-----------------------+----------------------------------------------------------------+-------+ + +.. rst-class:: classref-reftable-group + +Methods +------- + +.. table:: + :widths: auto + + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_end_bone`\ (\ index\: :ref:`int`\ ) |const| | + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`BoneDirection` | :ref:`get_end_bone_direction`\ (\ index\: :ref:`int`\ ) |const| | + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`get_end_bone_length`\ (\ index\: :ref:`int`\ ) |const| | + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_end_bone_name`\ (\ index\: :ref:`int`\ ) |const| | + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_middle_bone`\ (\ index\: :ref:`int`\ ) |const| | + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_middle_bone_name`\ (\ index\: :ref:`int`\ ) |const| | + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`SecondaryDirection` | :ref:`get_pole_direction`\ (\ index\: :ref:`int`\ ) |const| | + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Vector3` | :ref:`get_pole_direction_vector`\ (\ index\: :ref:`int`\ ) |const| | + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`NodePath` | :ref:`get_pole_node`\ (\ index\: :ref:`int`\ ) |const| | + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_root_bone`\ (\ index\: :ref:`int`\ ) |const| | + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_root_bone_name`\ (\ index\: :ref:`int`\ ) |const| | + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`NodePath` | :ref:`get_target_node`\ (\ index\: :ref:`int`\ ) |const| | + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_end_bone_extended`\ (\ index\: :ref:`int`\ ) |const| | + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_using_virtual_end`\ (\ index\: :ref:`int`\ ) |const| | + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_end_bone`\ (\ index\: :ref:`int`, bone\: :ref:`int`\ ) | + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_end_bone_direction`\ (\ index\: :ref:`int`, bone_direction\: :ref:`BoneDirection`\ ) | + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_end_bone_length`\ (\ index\: :ref:`int`, length\: :ref:`float`\ ) | + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_end_bone_name`\ (\ index\: :ref:`int`, bone_name\: :ref:`String`\ ) | + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_extend_end_bone`\ (\ index\: :ref:`int`, enabled\: :ref:`bool`\ ) | + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_middle_bone`\ (\ index\: :ref:`int`, bone\: :ref:`int`\ ) | + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_middle_bone_name`\ (\ index\: :ref:`int`, bone_name\: :ref:`String`\ ) | + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_pole_direction`\ (\ index\: :ref:`int`, direction\: :ref:`SecondaryDirection`\ ) | + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_pole_direction_vector`\ (\ index\: :ref:`int`, vector\: :ref:`Vector3`\ ) | + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_pole_node`\ (\ index\: :ref:`int`, pole_node\: :ref:`NodePath`\ ) | + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_root_bone`\ (\ index\: :ref:`int`, bone\: :ref:`int`\ ) | + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_root_bone_name`\ (\ index\: :ref:`int`, bone_name\: :ref:`String`\ ) | + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_target_node`\ (\ index\: :ref:`int`, target_node\: :ref:`NodePath`\ ) | + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_use_virtual_end`\ (\ index\: :ref:`int`, enabled\: :ref:`bool`\ ) | + +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Property Descriptions +--------------------- + +.. _class_TwoBoneIK3D_property_setting_count: + +.. rst-class:: classref-property + +:ref:`int` **setting_count** = ``0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_setting_count**\ (\ value\: :ref:`int`\ ) +- :ref:`int` **get_setting_count**\ (\ ) + +The number of settings. + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + +Method Descriptions +------------------- + +.. _class_TwoBoneIK3D_method_get_end_bone: + +.. rst-class:: classref-method + +:ref:`int` **get_end_bone**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the end bone index. + +.. rst-class:: classref-item-separator + +---- + +.. _class_TwoBoneIK3D_method_get_end_bone_direction: + +.. rst-class:: classref-method + +:ref:`BoneDirection` **get_end_bone_direction**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the end bone's tail direction when :ref:`is_end_bone_extended()` is ``true``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_TwoBoneIK3D_method_get_end_bone_length: + +.. rst-class:: classref-method + +:ref:`float` **get_end_bone_length**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the end bone tail length of the bone chain when :ref:`is_end_bone_extended()` is ``true``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_TwoBoneIK3D_method_get_end_bone_name: + +.. rst-class:: classref-method + +:ref:`String` **get_end_bone_name**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the end bone name. + +.. rst-class:: classref-item-separator + +---- + +.. _class_TwoBoneIK3D_method_get_middle_bone: + +.. rst-class:: classref-method + +:ref:`int` **get_middle_bone**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the middle bone index. + +.. rst-class:: classref-item-separator + +---- + +.. _class_TwoBoneIK3D_method_get_middle_bone_name: + +.. rst-class:: classref-method + +:ref:`String` **get_middle_bone_name**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the middle bone name. + +.. rst-class:: classref-item-separator + +---- + +.. _class_TwoBoneIK3D_method_get_pole_direction: + +.. rst-class:: classref-method + +:ref:`SecondaryDirection` **get_pole_direction**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the pole direction. + +.. rst-class:: classref-item-separator + +---- + +.. _class_TwoBoneIK3D_method_get_pole_direction_vector: + +.. rst-class:: classref-method + +:ref:`Vector3` **get_pole_direction_vector**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the pole direction vector. + +If :ref:`get_pole_direction()` is :ref:`SkeletonModifier3D.SECONDARY_DIRECTION_NONE`, this method returns ``Vector3(0, 0, 0)``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_TwoBoneIK3D_method_get_pole_node: + +.. rst-class:: classref-method + +:ref:`NodePath` **get_pole_node**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the pole target node that constructs a plane which the joints are all on and the pole is trying to direct. + +.. rst-class:: classref-item-separator + +---- + +.. _class_TwoBoneIK3D_method_get_root_bone: + +.. rst-class:: classref-method + +:ref:`int` **get_root_bone**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the root bone index. + +.. rst-class:: classref-item-separator + +---- + +.. _class_TwoBoneIK3D_method_get_root_bone_name: + +.. rst-class:: classref-method + +:ref:`String` **get_root_bone_name**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the root bone name. + +.. rst-class:: classref-item-separator + +---- + +.. _class_TwoBoneIK3D_method_get_target_node: + +.. rst-class:: classref-method + +:ref:`NodePath` **get_target_node**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns the target node that the end bone is trying to reach. + +.. rst-class:: classref-item-separator + +---- + +.. _class_TwoBoneIK3D_method_is_end_bone_extended: + +.. rst-class:: classref-method + +:ref:`bool` **is_end_bone_extended**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns ``true`` if the end bone is extended to have a tail. + +.. rst-class:: classref-item-separator + +---- + +.. _class_TwoBoneIK3D_method_is_using_virtual_end: + +.. rst-class:: classref-method + +:ref:`bool` **is_using_virtual_end**\ (\ index\: :ref:`int`\ ) |const| :ref:`🔗` + +Returns ``true`` if the end bone is extended from the middle bone as a virtual bone. + +.. rst-class:: classref-item-separator + +---- + +.. _class_TwoBoneIK3D_method_set_end_bone: + +.. rst-class:: classref-method + +|void| **set_end_bone**\ (\ index\: :ref:`int`, bone\: :ref:`int`\ ) :ref:`🔗` + +Sets the end bone index. + +.. rst-class:: classref-item-separator + +---- + +.. _class_TwoBoneIK3D_method_set_end_bone_direction: + +.. rst-class:: classref-method + +|void| **set_end_bone_direction**\ (\ index\: :ref:`int`, bone_direction\: :ref:`BoneDirection`\ ) :ref:`🔗` + +Sets the end bone tail direction when :ref:`is_end_bone_extended()` is ``true``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_TwoBoneIK3D_method_set_end_bone_length: + +.. rst-class:: classref-method + +|void| **set_end_bone_length**\ (\ index\: :ref:`int`, length\: :ref:`float`\ ) :ref:`🔗` + +Sets the end bone tail length when :ref:`is_end_bone_extended()` is ``true``. + +.. rst-class:: classref-item-separator + +---- + +.. _class_TwoBoneIK3D_method_set_end_bone_name: + +.. rst-class:: classref-method + +|void| **set_end_bone_name**\ (\ index\: :ref:`int`, bone_name\: :ref:`String`\ ) :ref:`🔗` + +Sets the end bone name. + +\ **Note:** The end bone must be a child of the middle bone. + +.. rst-class:: classref-item-separator + +---- + +.. _class_TwoBoneIK3D_method_set_extend_end_bone: + +.. rst-class:: classref-method + +|void| **set_extend_end_bone**\ (\ index\: :ref:`int`, enabled\: :ref:`bool`\ ) :ref:`🔗` + +If ``enabled`` is ``true``, the end bone is extended to have a tail. + +.. rst-class:: classref-item-separator + +---- + +.. _class_TwoBoneIK3D_method_set_middle_bone: + +.. rst-class:: classref-method + +|void| **set_middle_bone**\ (\ index\: :ref:`int`, bone\: :ref:`int`\ ) :ref:`🔗` + +Sets the middle bone index. + +.. rst-class:: classref-item-separator + +---- + +.. _class_TwoBoneIK3D_method_set_middle_bone_name: + +.. rst-class:: classref-method + +|void| **set_middle_bone_name**\ (\ index\: :ref:`int`, bone_name\: :ref:`String`\ ) :ref:`🔗` + +Sets the middle bone name. + +\ **Note:** The middle bone must be a child of the root bone. + +.. rst-class:: classref-item-separator + +---- + +.. _class_TwoBoneIK3D_method_set_pole_direction: + +.. rst-class:: classref-method + +|void| **set_pole_direction**\ (\ index\: :ref:`int`, direction\: :ref:`SecondaryDirection`\ ) :ref:`🔗` + +Sets the pole direction. + +The pole is on the middle bone and will direct to the pole target. + +The rotation axis is a vector that is orthogonal to this and the forward vector. + +\ **Note:** The pole direction and the forward vector shouldn't be colinear to avoid unintended rotation. + +.. rst-class:: classref-item-separator + +---- + +.. _class_TwoBoneIK3D_method_set_pole_direction_vector: + +.. rst-class:: classref-method + +|void| **set_pole_direction_vector**\ (\ index\: :ref:`int`, vector\: :ref:`Vector3`\ ) :ref:`🔗` + +Sets the pole direction vector. + +This vector is normalized by an internal process. + +If the vector length is ``0``, it is considered synonymous with :ref:`SkeletonModifier3D.SECONDARY_DIRECTION_NONE`. + +.. rst-class:: classref-item-separator + +---- + +.. _class_TwoBoneIK3D_method_set_pole_node: + +.. rst-class:: classref-method + +|void| **set_pole_node**\ (\ index\: :ref:`int`, pole_node\: :ref:`NodePath`\ ) :ref:`🔗` + +Sets the pole target node that constructs a plane which the joints are all on and the pole is trying to direct. + +.. rst-class:: classref-item-separator + +---- + +.. _class_TwoBoneIK3D_method_set_root_bone: + +.. rst-class:: classref-method + +|void| **set_root_bone**\ (\ index\: :ref:`int`, bone\: :ref:`int`\ ) :ref:`🔗` + +Sets the root bone index. + +.. rst-class:: classref-item-separator + +---- + +.. _class_TwoBoneIK3D_method_set_root_bone_name: + +.. rst-class:: classref-method + +|void| **set_root_bone_name**\ (\ index\: :ref:`int`, bone_name\: :ref:`String`\ ) :ref:`🔗` + +Sets the root bone name. + +.. rst-class:: classref-item-separator + +---- + +.. _class_TwoBoneIK3D_method_set_target_node: + +.. rst-class:: classref-method + +|void| **set_target_node**\ (\ index\: :ref:`int`, target_node\: :ref:`NodePath`\ ) :ref:`🔗` + +Sets the target node that the end bone is trying to reach. + +.. rst-class:: classref-item-separator + +---- + +.. _class_TwoBoneIK3D_method_set_use_virtual_end: + +.. rst-class:: classref-method + +|void| **set_use_virtual_end**\ (\ index\: :ref:`int`, enabled\: :ref:`bool`\ ) :ref:`🔗` + +If ``enabled`` is ``true``, the end bone is extended from the middle bone as a virtual bone. + +.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` +.. |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.)` +.. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)` +.. |void| replace:: :abbr:`void (No return value.)` diff --git a/classes/class_window.rst b/classes/class_window.rst index d3f51133ca5..13ee971a48a 100644 --- a/classes/class_window.rst +++ b/classes/class_window.rst @@ -82,6 +82,8 @@ Properties +-----------------------------------------------------------------+-----------------------------------------------------------------------------------+--------------------------+ | :ref:`PackedVector2Array` | :ref:`mouse_passthrough_polygon` | ``PackedVector2Array()`` | +-----------------------------------------------------------------+-----------------------------------------------------------------------------------+--------------------------+ + | :ref:`Rect2i` | :ref:`nonclient_area` | ``Rect2i(0, 0, 0, 0)`` | + +-----------------------------------------------------------------+-----------------------------------------------------------------------------------+--------------------------+ | :ref:`bool` | :ref:`popup_window` | ``false`` | +-----------------------------------------------------------------+-----------------------------------------------------------------------------------+--------------------------+ | :ref:`bool` | :ref:`popup_wm_hint` | ``false`` | @@ -440,6 +442,18 @@ Emitted when the mouse cursor leaves the **Window**'s visible area, that is not ---- +.. _class_Window_signal_nonclient_window_input: + +.. rst-class:: classref-signal + +**nonclient_window_input**\ (\ event\: :ref:`InputEvent`\ ) :ref:`🔗` + +Emitted when the mouse event is received by the custom decoration area defined by :ref:`nonclient_area`, and normal input to the window is blocked (such as when it has an exclusive child opened). ``event``'s position is in the embedder's coordinate system. + +.. rst-class:: classref-item-separator + +---- + .. _class_Window_signal_theme_changed: .. rst-class:: classref-signal @@ -1476,6 +1490,23 @@ Passing an empty array will disable passthrough support (all mouse events will b ---- +.. _class_Window_property_nonclient_area: + +.. rst-class:: classref-property + +:ref:`Rect2i` **nonclient_area** = ``Rect2i(0, 0, 0, 0)`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_nonclient_area**\ (\ value\: :ref:`Rect2i`\ ) +- :ref:`Rect2i` **get_nonclient_area**\ (\ ) + +If set, defines the window's custom decoration area which will receive mouse input, even if normal input to the window is blocked (such as when it has an exclusive child opened). See also :ref:`nonclient_window_input`. + +.. rst-class:: classref-item-separator + +---- + .. _class_Window_property_popup_window: .. rst-class:: classref-property diff --git a/classes/index.rst b/classes/index.rst index 1f6f5348c1a..abc3c7fa7e2 100644 --- a/classes/index.rst +++ b/classes/index.rst @@ -58,7 +58,9 @@ Nodes class_canvasitem class_canvaslayer class_canvasmodulate + class_ccdik3d class_centercontainer + class_chainik3d class_characterbody2d class_characterbody3d class_checkbox @@ -106,6 +108,7 @@ Nodes class_editorscriptpicker class_editorspinslider class_editortoaster + class_fabrik3d class_filedialog class_filesystemdock class_flowcontainer @@ -140,9 +143,12 @@ Nodes class_hslider class_hsplitcontainer class_httprequest + class_ikmodifier3d class_importermeshinstance3d class_instanceplaceholder class_itemlist + class_iterateik3d + class_jacobianik3d class_joint2d class_joint3d class_label @@ -246,6 +252,7 @@ Nodes class_sliderjoint3d class_softbody3d class_spinbox + class_splineik3d class_splitcontainer class_spotlight3d class_springarm3d @@ -273,6 +280,7 @@ Nodes class_timer class_touchscreenbutton class_tree + class_twoboneik3d class_vboxcontainer class_vehiclebody3d class_vehiclewheel3d @@ -479,6 +487,8 @@ Resources class_inputeventscreentouch class_inputeventshortcut class_inputeventwithmodifiers + class_jointlimitation3d + class_jointlimitationcone3d class_json class_labelsettings class_lightmapgidata