| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401 | :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/SpringBoneSimulator3D.xml... _class_SpringBoneSimulator3D:SpringBoneSimulator3D=====================**Inherits:** :ref:`SkeletonModifier3D<class_SkeletonModifier3D>` **<** :ref:`Node3D<class_Node3D>` **<** :ref:`Node<class_Node>` **<** :ref:`Object<class_Object>`A :ref:`SkeletonModifier3D<class_SkeletonModifier3D>` to apply inertial wavering to bone chains... rst-class:: classref-introduction-groupDescription-----------This :ref:`SkeletonModifier3D<class_SkeletonModifier3D>` can be used to wiggle hair, cloth, and tails. This modifier behaves differently from :ref:`PhysicalBoneSimulator3D<class_PhysicalBoneSimulator3D>` as it attempts to return the original pose after modification.If you setup :ref:`set_root_bone()<class_SpringBoneSimulator3D_method_set_root_bone>` and :ref:`set_end_bone()<class_SpringBoneSimulator3D_method_set_end_bone>`, it is treated as one bone chain. Note that it does not support a branched chain like Y-shaped chains.When a bone chain is created, an array is generated from the bones that exist in between and listed in the joint list.Several properties can be applied to each joint, such as :ref:`set_joint_stiffness()<class_SpringBoneSimulator3D_method_set_joint_stiffness>`, :ref:`set_joint_drag()<class_SpringBoneSimulator3D_method_set_joint_drag>`, and :ref:`set_joint_gravity()<class_SpringBoneSimulator3D_method_set_joint_gravity>`.For simplicity, you can set values to all joints at the same time by using a :ref:`Curve<class_Curve>`. If you want to specify detailed values individually, set :ref:`set_individual_config()<class_SpringBoneSimulator3D_method_set_individual_config>` to ``true``.For physical simulation, **SpringBoneSimulator3D** can have children as self-standing collisions that are not related to :ref:`PhysicsServer3D<class_PhysicsServer3D>`, see also :ref:`SpringBoneCollision3D<class_SpringBoneCollision3D>`.\ **Warning:** A scaled **SpringBoneSimulator3D** will likely not behave as expected. Make sure that the parent :ref:`Skeleton3D<class_Skeleton3D>` and its bones are not scaled... rst-class:: classref-reftable-groupProperties----------.. table::   :widths: auto   +-------------------------------+----------------------------------------------------------------------------+----------------------+   | :ref:`Vector3<class_Vector3>` | :ref:`external_force<class_SpringBoneSimulator3D_property_external_force>` | ``Vector3(0, 0, 0)`` |   +-------------------------------+----------------------------------------------------------------------------+----------------------+   | :ref:`int<class_int>`         | :ref:`setting_count<class_SpringBoneSimulator3D_property_setting_count>`   | ``0``                |   +-------------------------------+----------------------------------------------------------------------------+----------------------+.. rst-class:: classref-reftable-groupMethods-------.. table::   :widths: auto   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | :ref:`bool<class_bool>`                                        | :ref:`are_all_child_collisions_enabled<class_SpringBoneSimulator3D_method_are_all_child_collisions_enabled>`\ (\ index\: :ref:`int<class_int>`\ ) |const|                                                                           |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | |void|                                                         | :ref:`clear_collisions<class_SpringBoneSimulator3D_method_clear_collisions>`\ (\ index\: :ref:`int<class_int>`\ )                                                                                                                   |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | |void|                                                         | :ref:`clear_exclude_collisions<class_SpringBoneSimulator3D_method_clear_exclude_collisions>`\ (\ index\: :ref:`int<class_int>`\ )                                                                                                   |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | |void|                                                         | :ref:`clear_settings<class_SpringBoneSimulator3D_method_clear_settings>`\ (\ )                                                                                                                                                      |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | :ref:`int<class_int>`                                          | :ref:`get_center_bone<class_SpringBoneSimulator3D_method_get_center_bone>`\ (\ index\: :ref:`int<class_int>`\ ) |const|                                                                                                             |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | :ref:`String<class_String>`                                    | :ref:`get_center_bone_name<class_SpringBoneSimulator3D_method_get_center_bone_name>`\ (\ index\: :ref:`int<class_int>`\ ) |const|                                                                                                   |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | :ref:`CenterFrom<enum_SpringBoneSimulator3D_CenterFrom>`       | :ref:`get_center_from<class_SpringBoneSimulator3D_method_get_center_from>`\ (\ index\: :ref:`int<class_int>`\ ) |const|                                                                                                             |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | :ref:`NodePath<class_NodePath>`                                | :ref:`get_center_node<class_SpringBoneSimulator3D_method_get_center_node>`\ (\ index\: :ref:`int<class_int>`\ ) |const|                                                                                                             |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | :ref:`int<class_int>`                                          | :ref:`get_collision_count<class_SpringBoneSimulator3D_method_get_collision_count>`\ (\ index\: :ref:`int<class_int>`\ ) |const|                                                                                                     |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | :ref:`NodePath<class_NodePath>`                                | :ref:`get_collision_path<class_SpringBoneSimulator3D_method_get_collision_path>`\ (\ index\: :ref:`int<class_int>`, collision\: :ref:`int<class_int>`\ ) |const|                                                                    |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | :ref:`float<class_float>`                                      | :ref:`get_drag<class_SpringBoneSimulator3D_method_get_drag>`\ (\ index\: :ref:`int<class_int>`\ ) |const|                                                                                                                           |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | :ref:`Curve<class_Curve>`                                      | :ref:`get_drag_damping_curve<class_SpringBoneSimulator3D_method_get_drag_damping_curve>`\ (\ index\: :ref:`int<class_int>`\ ) |const|                                                                                               |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | :ref:`int<class_int>`                                          | :ref:`get_end_bone<class_SpringBoneSimulator3D_method_get_end_bone>`\ (\ index\: :ref:`int<class_int>`\ ) |const|                                                                                                                   |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | :ref:`BoneDirection<enum_SpringBoneSimulator3D_BoneDirection>` | :ref:`get_end_bone_direction<class_SpringBoneSimulator3D_method_get_end_bone_direction>`\ (\ index\: :ref:`int<class_int>`\ ) |const|                                                                                               |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | :ref:`float<class_float>`                                      | :ref:`get_end_bone_length<class_SpringBoneSimulator3D_method_get_end_bone_length>`\ (\ index\: :ref:`int<class_int>`\ ) |const|                                                                                                     |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | :ref:`String<class_String>`                                    | :ref:`get_end_bone_name<class_SpringBoneSimulator3D_method_get_end_bone_name>`\ (\ index\: :ref:`int<class_int>`\ ) |const|                                                                                                         |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | :ref:`int<class_int>`                                          | :ref:`get_exclude_collision_count<class_SpringBoneSimulator3D_method_get_exclude_collision_count>`\ (\ index\: :ref:`int<class_int>`\ ) |const|                                                                                     |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | :ref:`NodePath<class_NodePath>`                                | :ref:`get_exclude_collision_path<class_SpringBoneSimulator3D_method_get_exclude_collision_path>`\ (\ index\: :ref:`int<class_int>`, collision\: :ref:`int<class_int>`\ ) |const|                                                    |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | :ref:`float<class_float>`                                      | :ref:`get_gravity<class_SpringBoneSimulator3D_method_get_gravity>`\ (\ index\: :ref:`int<class_int>`\ ) |const|                                                                                                                     |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | :ref:`Curve<class_Curve>`                                      | :ref:`get_gravity_damping_curve<class_SpringBoneSimulator3D_method_get_gravity_damping_curve>`\ (\ index\: :ref:`int<class_int>`\ ) |const|                                                                                         |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | :ref:`Vector3<class_Vector3>`                                  | :ref:`get_gravity_direction<class_SpringBoneSimulator3D_method_get_gravity_direction>`\ (\ index\: :ref:`int<class_int>`\ ) |const|                                                                                                 |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | :ref:`int<class_int>`                                          | :ref:`get_joint_bone<class_SpringBoneSimulator3D_method_get_joint_bone>`\ (\ index\: :ref:`int<class_int>`, joint\: :ref:`int<class_int>`\ ) |const|                                                                                |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | :ref:`String<class_String>`                                    | :ref:`get_joint_bone_name<class_SpringBoneSimulator3D_method_get_joint_bone_name>`\ (\ index\: :ref:`int<class_int>`, joint\: :ref:`int<class_int>`\ ) |const|                                                                      |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | :ref:`int<class_int>`                                          | :ref:`get_joint_count<class_SpringBoneSimulator3D_method_get_joint_count>`\ (\ index\: :ref:`int<class_int>`\ ) |const|                                                                                                             |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | :ref:`float<class_float>`                                      | :ref:`get_joint_drag<class_SpringBoneSimulator3D_method_get_joint_drag>`\ (\ index\: :ref:`int<class_int>`, joint\: :ref:`int<class_int>`\ ) |const|                                                                                |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | :ref:`float<class_float>`                                      | :ref:`get_joint_gravity<class_SpringBoneSimulator3D_method_get_joint_gravity>`\ (\ index\: :ref:`int<class_int>`, joint\: :ref:`int<class_int>`\ ) |const|                                                                          |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | :ref:`Vector3<class_Vector3>`                                  | :ref:`get_joint_gravity_direction<class_SpringBoneSimulator3D_method_get_joint_gravity_direction>`\ (\ index\: :ref:`int<class_int>`, joint\: :ref:`int<class_int>`\ ) |const|                                                      |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | :ref:`float<class_float>`                                      | :ref:`get_joint_radius<class_SpringBoneSimulator3D_method_get_joint_radius>`\ (\ index\: :ref:`int<class_int>`, joint\: :ref:`int<class_int>`\ ) |const|                                                                            |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | :ref:`RotationAxis<enum_SpringBoneSimulator3D_RotationAxis>`   | :ref:`get_joint_rotation_axis<class_SpringBoneSimulator3D_method_get_joint_rotation_axis>`\ (\ index\: :ref:`int<class_int>`, joint\: :ref:`int<class_int>`\ ) |const|                                                              |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | :ref:`Vector3<class_Vector3>`                                  | :ref:`get_joint_rotation_axis_vector<class_SpringBoneSimulator3D_method_get_joint_rotation_axis_vector>`\ (\ index\: :ref:`int<class_int>`, joint\: :ref:`int<class_int>`\ ) |const|                                                |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | :ref:`float<class_float>`                                      | :ref:`get_joint_stiffness<class_SpringBoneSimulator3D_method_get_joint_stiffness>`\ (\ index\: :ref:`int<class_int>`, joint\: :ref:`int<class_int>`\ ) |const|                                                                      |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | :ref:`float<class_float>`                                      | :ref:`get_radius<class_SpringBoneSimulator3D_method_get_radius>`\ (\ index\: :ref:`int<class_int>`\ ) |const|                                                                                                                       |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | :ref:`Curve<class_Curve>`                                      | :ref:`get_radius_damping_curve<class_SpringBoneSimulator3D_method_get_radius_damping_curve>`\ (\ index\: :ref:`int<class_int>`\ ) |const|                                                                                           |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | :ref:`int<class_int>`                                          | :ref:`get_root_bone<class_SpringBoneSimulator3D_method_get_root_bone>`\ (\ index\: :ref:`int<class_int>`\ ) |const|                                                                                                                 |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | :ref:`String<class_String>`                                    | :ref:`get_root_bone_name<class_SpringBoneSimulator3D_method_get_root_bone_name>`\ (\ index\: :ref:`int<class_int>`\ ) |const|                                                                                                       |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | :ref:`RotationAxis<enum_SpringBoneSimulator3D_RotationAxis>`   | :ref:`get_rotation_axis<class_SpringBoneSimulator3D_method_get_rotation_axis>`\ (\ index\: :ref:`int<class_int>`\ ) |const|                                                                                                         |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | :ref:`Vector3<class_Vector3>`                                  | :ref:`get_rotation_axis_vector<class_SpringBoneSimulator3D_method_get_rotation_axis_vector>`\ (\ index\: :ref:`int<class_int>`\ ) |const|                                                                                           |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | :ref:`float<class_float>`                                      | :ref:`get_stiffness<class_SpringBoneSimulator3D_method_get_stiffness>`\ (\ index\: :ref:`int<class_int>`\ ) |const|                                                                                                                 |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | :ref:`Curve<class_Curve>`                                      | :ref:`get_stiffness_damping_curve<class_SpringBoneSimulator3D_method_get_stiffness_damping_curve>`\ (\ index\: :ref:`int<class_int>`\ ) |const|                                                                                     |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | :ref:`bool<class_bool>`                                        | :ref:`is_config_individual<class_SpringBoneSimulator3D_method_is_config_individual>`\ (\ index\: :ref:`int<class_int>`\ ) |const|                                                                                                   |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | :ref:`bool<class_bool>`                                        | :ref:`is_end_bone_extended<class_SpringBoneSimulator3D_method_is_end_bone_extended>`\ (\ index\: :ref:`int<class_int>`\ ) |const|                                                                                                   |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | |void|                                                         | :ref:`reset<class_SpringBoneSimulator3D_method_reset>`\ (\ )                                                                                                                                                                        |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | |void|                                                         | :ref:`set_center_bone<class_SpringBoneSimulator3D_method_set_center_bone>`\ (\ index\: :ref:`int<class_int>`, bone\: :ref:`int<class_int>`\ )                                                                                       |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | |void|                                                         | :ref:`set_center_bone_name<class_SpringBoneSimulator3D_method_set_center_bone_name>`\ (\ index\: :ref:`int<class_int>`, bone_name\: :ref:`String<class_String>`\ )                                                                  |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | |void|                                                         | :ref:`set_center_from<class_SpringBoneSimulator3D_method_set_center_from>`\ (\ index\: :ref:`int<class_int>`, center_from\: :ref:`CenterFrom<enum_SpringBoneSimulator3D_CenterFrom>`\ )                                             |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | |void|                                                         | :ref:`set_center_node<class_SpringBoneSimulator3D_method_set_center_node>`\ (\ index\: :ref:`int<class_int>`, node_path\: :ref:`NodePath<class_NodePath>`\ )                                                                        |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | |void|                                                         | :ref:`set_collision_count<class_SpringBoneSimulator3D_method_set_collision_count>`\ (\ index\: :ref:`int<class_int>`, count\: :ref:`int<class_int>`\ )                                                                              |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | |void|                                                         | :ref:`set_collision_path<class_SpringBoneSimulator3D_method_set_collision_path>`\ (\ index\: :ref:`int<class_int>`, collision\: :ref:`int<class_int>`, node_path\: :ref:`NodePath<class_NodePath>`\ )                               |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | |void|                                                         | :ref:`set_drag<class_SpringBoneSimulator3D_method_set_drag>`\ (\ index\: :ref:`int<class_int>`, drag\: :ref:`float<class_float>`\ )                                                                                                 |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | |void|                                                         | :ref:`set_drag_damping_curve<class_SpringBoneSimulator3D_method_set_drag_damping_curve>`\ (\ index\: :ref:`int<class_int>`, curve\: :ref:`Curve<class_Curve>`\ )                                                                    |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | |void|                                                         | :ref:`set_enable_all_child_collisions<class_SpringBoneSimulator3D_method_set_enable_all_child_collisions>`\ (\ index\: :ref:`int<class_int>`, enabled\: :ref:`bool<class_bool>`\ )                                                  |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | |void|                                                         | :ref:`set_end_bone<class_SpringBoneSimulator3D_method_set_end_bone>`\ (\ index\: :ref:`int<class_int>`, bone\: :ref:`int<class_int>`\ )                                                                                             |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | |void|                                                         | :ref:`set_end_bone_direction<class_SpringBoneSimulator3D_method_set_end_bone_direction>`\ (\ index\: :ref:`int<class_int>`, bone_direction\: :ref:`BoneDirection<enum_SpringBoneSimulator3D_BoneDirection>`\ )                      |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | |void|                                                         | :ref:`set_end_bone_length<class_SpringBoneSimulator3D_method_set_end_bone_length>`\ (\ index\: :ref:`int<class_int>`, length\: :ref:`float<class_float>`\ )                                                                         |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | |void|                                                         | :ref:`set_end_bone_name<class_SpringBoneSimulator3D_method_set_end_bone_name>`\ (\ index\: :ref:`int<class_int>`, bone_name\: :ref:`String<class_String>`\ )                                                                        |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | |void|                                                         | :ref:`set_exclude_collision_count<class_SpringBoneSimulator3D_method_set_exclude_collision_count>`\ (\ index\: :ref:`int<class_int>`, count\: :ref:`int<class_int>`\ )                                                              |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | |void|                                                         | :ref:`set_exclude_collision_path<class_SpringBoneSimulator3D_method_set_exclude_collision_path>`\ (\ index\: :ref:`int<class_int>`, collision\: :ref:`int<class_int>`, node_path\: :ref:`NodePath<class_NodePath>`\ )               |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | |void|                                                         | :ref:`set_extend_end_bone<class_SpringBoneSimulator3D_method_set_extend_end_bone>`\ (\ index\: :ref:`int<class_int>`, enabled\: :ref:`bool<class_bool>`\ )                                                                          |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | |void|                                                         | :ref:`set_gravity<class_SpringBoneSimulator3D_method_set_gravity>`\ (\ index\: :ref:`int<class_int>`, gravity\: :ref:`float<class_float>`\ )                                                                                        |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | |void|                                                         | :ref:`set_gravity_damping_curve<class_SpringBoneSimulator3D_method_set_gravity_damping_curve>`\ (\ index\: :ref:`int<class_int>`, curve\: :ref:`Curve<class_Curve>`\ )                                                              |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | |void|                                                         | :ref:`set_gravity_direction<class_SpringBoneSimulator3D_method_set_gravity_direction>`\ (\ index\: :ref:`int<class_int>`, gravity_direction\: :ref:`Vector3<class_Vector3>`\ )                                                      |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | |void|                                                         | :ref:`set_individual_config<class_SpringBoneSimulator3D_method_set_individual_config>`\ (\ index\: :ref:`int<class_int>`, enabled\: :ref:`bool<class_bool>`\ )                                                                      |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | |void|                                                         | :ref:`set_joint_drag<class_SpringBoneSimulator3D_method_set_joint_drag>`\ (\ index\: :ref:`int<class_int>`, joint\: :ref:`int<class_int>`, drag\: :ref:`float<class_float>`\ )                                                      |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | |void|                                                         | :ref:`set_joint_gravity<class_SpringBoneSimulator3D_method_set_joint_gravity>`\ (\ index\: :ref:`int<class_int>`, joint\: :ref:`int<class_int>`, gravity\: :ref:`float<class_float>`\ )                                             |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | |void|                                                         | :ref:`set_joint_gravity_direction<class_SpringBoneSimulator3D_method_set_joint_gravity_direction>`\ (\ index\: :ref:`int<class_int>`, joint\: :ref:`int<class_int>`, gravity_direction\: :ref:`Vector3<class_Vector3>`\ )           |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | |void|                                                         | :ref:`set_joint_radius<class_SpringBoneSimulator3D_method_set_joint_radius>`\ (\ index\: :ref:`int<class_int>`, joint\: :ref:`int<class_int>`, radius\: :ref:`float<class_float>`\ )                                                |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | |void|                                                         | :ref:`set_joint_rotation_axis<class_SpringBoneSimulator3D_method_set_joint_rotation_axis>`\ (\ index\: :ref:`int<class_int>`, joint\: :ref:`int<class_int>`, axis\: :ref:`RotationAxis<enum_SpringBoneSimulator3D_RotationAxis>`\ ) |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | |void|                                                         | :ref:`set_joint_rotation_axis_vector<class_SpringBoneSimulator3D_method_set_joint_rotation_axis_vector>`\ (\ index\: :ref:`int<class_int>`, joint\: :ref:`int<class_int>`, vector\: :ref:`Vector3<class_Vector3>`\ )                |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | |void|                                                         | :ref:`set_joint_stiffness<class_SpringBoneSimulator3D_method_set_joint_stiffness>`\ (\ index\: :ref:`int<class_int>`, joint\: :ref:`int<class_int>`, stiffness\: :ref:`float<class_float>`\ )                                       |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | |void|                                                         | :ref:`set_radius<class_SpringBoneSimulator3D_method_set_radius>`\ (\ index\: :ref:`int<class_int>`, radius\: :ref:`float<class_float>`\ )                                                                                           |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | |void|                                                         | :ref:`set_radius_damping_curve<class_SpringBoneSimulator3D_method_set_radius_damping_curve>`\ (\ index\: :ref:`int<class_int>`, curve\: :ref:`Curve<class_Curve>`\ )                                                                |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | |void|                                                         | :ref:`set_root_bone<class_SpringBoneSimulator3D_method_set_root_bone>`\ (\ index\: :ref:`int<class_int>`, bone\: :ref:`int<class_int>`\ )                                                                                           |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | |void|                                                         | :ref:`set_root_bone_name<class_SpringBoneSimulator3D_method_set_root_bone_name>`\ (\ index\: :ref:`int<class_int>`, bone_name\: :ref:`String<class_String>`\ )                                                                      |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | |void|                                                         | :ref:`set_rotation_axis<class_SpringBoneSimulator3D_method_set_rotation_axis>`\ (\ index\: :ref:`int<class_int>`, axis\: :ref:`RotationAxis<enum_SpringBoneSimulator3D_RotationAxis>`\ )                                            |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | |void|                                                         | :ref:`set_rotation_axis_vector<class_SpringBoneSimulator3D_method_set_rotation_axis_vector>`\ (\ index\: :ref:`int<class_int>`, vector\: :ref:`Vector3<class_Vector3>`\ )                                                           |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | |void|                                                         | :ref:`set_stiffness<class_SpringBoneSimulator3D_method_set_stiffness>`\ (\ index\: :ref:`int<class_int>`, stiffness\: :ref:`float<class_float>`\ )                                                                                  |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+   | |void|                                                         | :ref:`set_stiffness_damping_curve<class_SpringBoneSimulator3D_method_set_stiffness_damping_curve>`\ (\ index\: :ref:`int<class_int>`, curve\: :ref:`Curve<class_Curve>`\ )                                                          |   +----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+.. rst-class:: classref-section-separator----.. rst-class:: classref-descriptions-groupEnumerations------------.. _enum_SpringBoneSimulator3D_BoneDirection:.. rst-class:: classref-enumerationenum **BoneDirection**: :ref:`๐<enum_SpringBoneSimulator3D_BoneDirection>`.. _class_SpringBoneSimulator3D_constant_BONE_DIRECTION_PLUS_X:.. rst-class:: classref-enumeration-constant:ref:`BoneDirection<enum_SpringBoneSimulator3D_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<enum_SpringBoneSimulator3D_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<enum_SpringBoneSimulator3D_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<enum_SpringBoneSimulator3D_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<enum_SpringBoneSimulator3D_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<enum_SpringBoneSimulator3D_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<enum_SpringBoneSimulator3D_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-enumerationenum **CenterFrom**: :ref:`๐<enum_SpringBoneSimulator3D_CenterFrom>`.. _class_SpringBoneSimulator3D_constant_CENTER_FROM_WORLD_ORIGIN:.. rst-class:: classref-enumeration-constant:ref:`CenterFrom<enum_SpringBoneSimulator3D_CenterFrom>` **CENTER_FROM_WORLD_ORIGIN** = ``0``The world origin is defined as center... _class_SpringBoneSimulator3D_constant_CENTER_FROM_NODE:.. rst-class:: classref-enumeration-constant:ref:`CenterFrom<enum_SpringBoneSimulator3D_CenterFrom>` **CENTER_FROM_NODE** = ``1``The :ref:`Node3D<class_Node3D>` specified by :ref:`set_center_node()<class_SpringBoneSimulator3D_method_set_center_node>` is defined as center.If :ref:`Node3D<class_Node3D>` is not found, the parent :ref:`Skeleton3D<class_Skeleton3D>` is treated as center... _class_SpringBoneSimulator3D_constant_CENTER_FROM_BONE:.. rst-class:: classref-enumeration-constant:ref:`CenterFrom<enum_SpringBoneSimulator3D_CenterFrom>` **CENTER_FROM_BONE** = ``2``The bone pose origin of the parent :ref:`Skeleton3D<class_Skeleton3D>` specified by :ref:`set_center_bone()<class_SpringBoneSimulator3D_method_set_center_bone>` is defined as center.If :ref:`Node3D<class_Node3D>` is not found, the parent :ref:`Skeleton3D<class_Skeleton3D>` is treated as center... rst-class:: classref-item-separator----.. _enum_SpringBoneSimulator3D_RotationAxis:.. rst-class:: classref-enumerationenum **RotationAxis**: :ref:`๐<enum_SpringBoneSimulator3D_RotationAxis>`.. _class_SpringBoneSimulator3D_constant_ROTATION_AXIS_X:.. rst-class:: classref-enumeration-constant:ref:`RotationAxis<enum_SpringBoneSimulator3D_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<enum_SpringBoneSimulator3D_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<enum_SpringBoneSimulator3D_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<enum_SpringBoneSimulator3D_RotationAxis>` **ROTATION_AXIS_ALL** = ``3``Enumerated value for the unconstrained rotation... _class_SpringBoneSimulator3D_constant_ROTATION_AXIS_CUSTOM:.. rst-class:: classref-enumeration-constant:ref:`RotationAxis<enum_SpringBoneSimulator3D_RotationAxis>` **ROTATION_AXIS_CUSTOM** = ``4``Enumerated value for an optional rotation axis. See also :ref:`set_joint_rotation_axis_vector()<class_SpringBoneSimulator3D_method_set_joint_rotation_axis_vector>`... rst-class:: classref-section-separator----.. rst-class:: classref-descriptions-groupProperty Descriptions---------------------.. _class_SpringBoneSimulator3D_property_external_force:.. rst-class:: classref-property:ref:`Vector3<class_Vector3>` **external_force** = ``Vector3(0, 0, 0)`` :ref:`๐<class_SpringBoneSimulator3D_property_external_force>`.. rst-class:: classref-property-setget- |void| **set_external_force**\ (\ value\: :ref:`Vector3<class_Vector3>`\ )- :ref:`Vector3<class_Vector3>` **get_external_force**\ (\ )The constant force that always affected bones. It is equal to the result when the parent :ref:`Skeleton3D<class_Skeleton3D>` moves at this speed in the opposite direction.This is useful for effects such as wind and anti-gravity... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_property_setting_count:.. rst-class:: classref-property:ref:`int<class_int>` **setting_count** = ``0`` :ref:`๐<class_SpringBoneSimulator3D_property_setting_count>`.. rst-class:: classref-property-setget- |void| **set_setting_count**\ (\ value\: :ref:`int<class_int>`\ )- :ref:`int<class_int>` **get_setting_count**\ (\ )The number of settings... rst-class:: classref-section-separator----.. rst-class:: classref-descriptions-groupMethod Descriptions-------------------.. _class_SpringBoneSimulator3D_method_are_all_child_collisions_enabled:.. rst-class:: classref-method:ref:`bool<class_bool>` **are_all_child_collisions_enabled**\ (\ index\: :ref:`int<class_int>`\ ) |const| :ref:`๐<class_SpringBoneSimulator3D_method_are_all_child_collisions_enabled>`Returns ``true`` if all child :ref:`SpringBoneCollision3D<class_SpringBoneCollision3D>`\ s are contained in the collision list at ``index`` in the settings... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_clear_collisions:.. rst-class:: classref-method|void| **clear_collisions**\ (\ index\: :ref:`int<class_int>`\ ) :ref:`๐<class_SpringBoneSimulator3D_method_clear_collisions>`Clears all collisions from the collision list at ``index`` in the settings when :ref:`are_all_child_collisions_enabled()<class_SpringBoneSimulator3D_method_are_all_child_collisions_enabled>` is ``false``... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_clear_exclude_collisions:.. rst-class:: classref-method|void| **clear_exclude_collisions**\ (\ index\: :ref:`int<class_int>`\ ) :ref:`๐<class_SpringBoneSimulator3D_method_clear_exclude_collisions>`Clears all exclude collisions from the collision list at ``index`` in the settings when :ref:`are_all_child_collisions_enabled()<class_SpringBoneSimulator3D_method_are_all_child_collisions_enabled>` is ``true``... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_clear_settings:.. rst-class:: classref-method|void| **clear_settings**\ (\ ) :ref:`๐<class_SpringBoneSimulator3D_method_clear_settings>`Clears all settings... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_get_center_bone:.. rst-class:: classref-method:ref:`int<class_int>` **get_center_bone**\ (\ index\: :ref:`int<class_int>`\ ) |const| :ref:`๐<class_SpringBoneSimulator3D_method_get_center_bone>`Returns the center bone index of the bone chain... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_get_center_bone_name:.. rst-class:: classref-method:ref:`String<class_String>` **get_center_bone_name**\ (\ index\: :ref:`int<class_int>`\ ) |const| :ref:`๐<class_SpringBoneSimulator3D_method_get_center_bone_name>`Returns the center bone name of the bone chain... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_get_center_from:.. rst-class:: classref-method:ref:`CenterFrom<enum_SpringBoneSimulator3D_CenterFrom>` **get_center_from**\ (\ index\: :ref:`int<class_int>`\ ) |const| :ref:`๐<class_SpringBoneSimulator3D_method_get_center_from>`Returns what the center originates from in the bone chain... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_get_center_node:.. rst-class:: classref-method:ref:`NodePath<class_NodePath>` **get_center_node**\ (\ index\: :ref:`int<class_int>`\ ) |const| :ref:`๐<class_SpringBoneSimulator3D_method_get_center_node>`Returns the center node path of the bone chain... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_get_collision_count:.. rst-class:: classref-method:ref:`int<class_int>` **get_collision_count**\ (\ index\: :ref:`int<class_int>`\ ) |const| :ref:`๐<class_SpringBoneSimulator3D_method_get_collision_count>`Returns the collision count of the bone chain's collision list when :ref:`are_all_child_collisions_enabled()<class_SpringBoneSimulator3D_method_are_all_child_collisions_enabled>` is ``false``... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_get_collision_path:.. rst-class:: classref-method:ref:`NodePath<class_NodePath>` **get_collision_path**\ (\ index\: :ref:`int<class_int>`, collision\: :ref:`int<class_int>`\ ) |const| :ref:`๐<class_SpringBoneSimulator3D_method_get_collision_path>`Returns the node path of the :ref:`SpringBoneCollision3D<class_SpringBoneCollision3D>` at ``collision`` in the bone chain's collision list when :ref:`are_all_child_collisions_enabled()<class_SpringBoneSimulator3D_method_are_all_child_collisions_enabled>` is ``false``... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_get_drag:.. rst-class:: classref-method:ref:`float<class_float>` **get_drag**\ (\ index\: :ref:`int<class_int>`\ ) |const| :ref:`๐<class_SpringBoneSimulator3D_method_get_drag>`Returns the drag force damping curve of the bone chain... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_get_drag_damping_curve:.. rst-class:: classref-method:ref:`Curve<class_Curve>` **get_drag_damping_curve**\ (\ index\: :ref:`int<class_int>`\ ) |const| :ref:`๐<class_SpringBoneSimulator3D_method_get_drag_damping_curve>`Returns the drag force damping curve of the bone chain... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_get_end_bone:.. rst-class:: classref-method:ref:`int<class_int>` **get_end_bone**\ (\ index\: :ref:`int<class_int>`\ ) |const| :ref:`๐<class_SpringBoneSimulator3D_method_get_end_bone>`Returns the end bone index of the bone chain... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_get_end_bone_direction:.. rst-class:: classref-method:ref:`BoneDirection<enum_SpringBoneSimulator3D_BoneDirection>` **get_end_bone_direction**\ (\ index\: :ref:`int<class_int>`\ ) |const| :ref:`๐<class_SpringBoneSimulator3D_method_get_end_bone_direction>`Returns the end bone's tail direction of the bone chain when :ref:`is_end_bone_extended()<class_SpringBoneSimulator3D_method_is_end_bone_extended>` is ``true``... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_get_end_bone_length:.. rst-class:: classref-method:ref:`float<class_float>` **get_end_bone_length**\ (\ index\: :ref:`int<class_int>`\ ) |const| :ref:`๐<class_SpringBoneSimulator3D_method_get_end_bone_length>`Returns the end bone's tail length of the bone chain when :ref:`is_end_bone_extended()<class_SpringBoneSimulator3D_method_is_end_bone_extended>` is ``true``... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_get_end_bone_name:.. rst-class:: classref-method:ref:`String<class_String>` **get_end_bone_name**\ (\ index\: :ref:`int<class_int>`\ ) |const| :ref:`๐<class_SpringBoneSimulator3D_method_get_end_bone_name>`Returns the end bone name of the bone chain... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_get_exclude_collision_count:.. rst-class:: classref-method:ref:`int<class_int>` **get_exclude_collision_count**\ (\ index\: :ref:`int<class_int>`\ ) |const| :ref:`๐<class_SpringBoneSimulator3D_method_get_exclude_collision_count>`Returns the exclude collision count of the bone chain's exclude collision list when :ref:`are_all_child_collisions_enabled()<class_SpringBoneSimulator3D_method_are_all_child_collisions_enabled>` is ``true``... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_get_exclude_collision_path:.. rst-class:: classref-method:ref:`NodePath<class_NodePath>` **get_exclude_collision_path**\ (\ index\: :ref:`int<class_int>`, collision\: :ref:`int<class_int>`\ ) |const| :ref:`๐<class_SpringBoneSimulator3D_method_get_exclude_collision_path>`Returns the node path of the :ref:`SpringBoneCollision3D<class_SpringBoneCollision3D>` at ``collision`` in the bone chain's exclude collision list when :ref:`are_all_child_collisions_enabled()<class_SpringBoneSimulator3D_method_are_all_child_collisions_enabled>` is ``true``... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_get_gravity:.. rst-class:: classref-method:ref:`float<class_float>` **get_gravity**\ (\ index\: :ref:`int<class_int>`\ ) |const| :ref:`๐<class_SpringBoneSimulator3D_method_get_gravity>`Returns the gravity amount of the bone chain... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_get_gravity_damping_curve:.. rst-class:: classref-method:ref:`Curve<class_Curve>` **get_gravity_damping_curve**\ (\ index\: :ref:`int<class_int>`\ ) |const| :ref:`๐<class_SpringBoneSimulator3D_method_get_gravity_damping_curve>`Returns the gravity amount damping curve of the bone chain... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_get_gravity_direction:.. rst-class:: classref-method:ref:`Vector3<class_Vector3>` **get_gravity_direction**\ (\ index\: :ref:`int<class_int>`\ ) |const| :ref:`๐<class_SpringBoneSimulator3D_method_get_gravity_direction>`Returns the gravity direction of the bone chain... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_get_joint_bone:.. rst-class:: classref-method:ref:`int<class_int>` **get_joint_bone**\ (\ index\: :ref:`int<class_int>`, joint\: :ref:`int<class_int>`\ ) |const| :ref:`๐<class_SpringBoneSimulator3D_method_get_joint_bone>`Returns the bone index at ``joint`` in the bone chain's joint list... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_get_joint_bone_name:.. rst-class:: classref-method:ref:`String<class_String>` **get_joint_bone_name**\ (\ index\: :ref:`int<class_int>`, joint\: :ref:`int<class_int>`\ ) |const| :ref:`๐<class_SpringBoneSimulator3D_method_get_joint_bone_name>`Returns the bone name at ``joint`` in the bone chain's joint list... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_get_joint_count:.. rst-class:: classref-method:ref:`int<class_int>` **get_joint_count**\ (\ index\: :ref:`int<class_int>`\ ) |const| :ref:`๐<class_SpringBoneSimulator3D_method_get_joint_count>`Returns the joint count of the bone chain's joint list... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_get_joint_drag:.. rst-class:: classref-method:ref:`float<class_float>` **get_joint_drag**\ (\ index\: :ref:`int<class_int>`, joint\: :ref:`int<class_int>`\ ) |const| :ref:`๐<class_SpringBoneSimulator3D_method_get_joint_drag>`Returns the drag force at ``joint`` in the bone chain's joint list... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_get_joint_gravity:.. rst-class:: classref-method:ref:`float<class_float>` **get_joint_gravity**\ (\ index\: :ref:`int<class_int>`, joint\: :ref:`int<class_int>`\ ) |const| :ref:`๐<class_SpringBoneSimulator3D_method_get_joint_gravity>`Returns the gravity amount at ``joint`` in the bone chain's joint list... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_get_joint_gravity_direction:.. rst-class:: classref-method:ref:`Vector3<class_Vector3>` **get_joint_gravity_direction**\ (\ index\: :ref:`int<class_int>`, joint\: :ref:`int<class_int>`\ ) |const| :ref:`๐<class_SpringBoneSimulator3D_method_get_joint_gravity_direction>`Returns the gravity direction at ``joint`` in the bone chain's joint list... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_get_joint_radius:.. rst-class:: classref-method:ref:`float<class_float>` **get_joint_radius**\ (\ index\: :ref:`int<class_int>`, joint\: :ref:`int<class_int>`\ ) |const| :ref:`๐<class_SpringBoneSimulator3D_method_get_joint_radius>`Returns the radius at ``joint`` in the bone chain's joint list... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_get_joint_rotation_axis:.. rst-class:: classref-method:ref:`RotationAxis<enum_SpringBoneSimulator3D_RotationAxis>` **get_joint_rotation_axis**\ (\ index\: :ref:`int<class_int>`, joint\: :ref:`int<class_int>`\ ) |const| :ref:`๐<class_SpringBoneSimulator3D_method_get_joint_rotation_axis>`Returns the rotation axis at ``joint`` in the bone chain's joint list... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_get_joint_rotation_axis_vector:.. rst-class:: classref-method:ref:`Vector3<class_Vector3>` **get_joint_rotation_axis_vector**\ (\ index\: :ref:`int<class_int>`, joint\: :ref:`int<class_int>`\ ) |const| :ref:`๐<class_SpringBoneSimulator3D_method_get_joint_rotation_axis_vector>`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()<class_SpringBoneSimulator3D_method_get_joint_rotation_axis>` is :ref:`ROTATION_AXIS_ALL<class_SpringBoneSimulator3D_constant_ROTATION_AXIS_ALL>`, this method returns ``Vector3(0, 0, 0)``... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_get_joint_stiffness:.. rst-class:: classref-method:ref:`float<class_float>` **get_joint_stiffness**\ (\ index\: :ref:`int<class_int>`, joint\: :ref:`int<class_int>`\ ) |const| :ref:`๐<class_SpringBoneSimulator3D_method_get_joint_stiffness>`Returns the stiffness force at ``joint`` in the bone chain's joint list... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_get_radius:.. rst-class:: classref-method:ref:`float<class_float>` **get_radius**\ (\ index\: :ref:`int<class_int>`\ ) |const| :ref:`๐<class_SpringBoneSimulator3D_method_get_radius>`Returns the joint radius of the bone chain... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_get_radius_damping_curve:.. rst-class:: classref-method:ref:`Curve<class_Curve>` **get_radius_damping_curve**\ (\ index\: :ref:`int<class_int>`\ ) |const| :ref:`๐<class_SpringBoneSimulator3D_method_get_radius_damping_curve>`Returns the joint radius damping curve of the bone chain... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_get_root_bone:.. rst-class:: classref-method:ref:`int<class_int>` **get_root_bone**\ (\ index\: :ref:`int<class_int>`\ ) |const| :ref:`๐<class_SpringBoneSimulator3D_method_get_root_bone>`Returns the root bone index of the bone chain... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_get_root_bone_name:.. rst-class:: classref-method:ref:`String<class_String>` **get_root_bone_name**\ (\ index\: :ref:`int<class_int>`\ ) |const| :ref:`๐<class_SpringBoneSimulator3D_method_get_root_bone_name>`Returns the root bone name of the bone chain... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_get_rotation_axis:.. rst-class:: classref-method:ref:`RotationAxis<enum_SpringBoneSimulator3D_RotationAxis>` **get_rotation_axis**\ (\ index\: :ref:`int<class_int>`\ ) |const| :ref:`๐<class_SpringBoneSimulator3D_method_get_rotation_axis>`Returns the rotation axis of the bone chain... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_get_rotation_axis_vector:.. rst-class:: classref-method:ref:`Vector3<class_Vector3>` **get_rotation_axis_vector**\ (\ index\: :ref:`int<class_int>`\ ) |const| :ref:`๐<class_SpringBoneSimulator3D_method_get_rotation_axis_vector>`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()<class_SpringBoneSimulator3D_method_get_rotation_axis>` is :ref:`ROTATION_AXIS_ALL<class_SpringBoneSimulator3D_constant_ROTATION_AXIS_ALL>`, this method returns ``Vector3(0, 0, 0)``... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_get_stiffness:.. rst-class:: classref-method:ref:`float<class_float>` **get_stiffness**\ (\ index\: :ref:`int<class_int>`\ ) |const| :ref:`๐<class_SpringBoneSimulator3D_method_get_stiffness>`Returns the stiffness force of the bone chain... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_get_stiffness_damping_curve:.. rst-class:: classref-method:ref:`Curve<class_Curve>` **get_stiffness_damping_curve**\ (\ index\: :ref:`int<class_int>`\ ) |const| :ref:`๐<class_SpringBoneSimulator3D_method_get_stiffness_damping_curve>`Returns the stiffness force damping curve of the bone chain... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_is_config_individual:.. rst-class:: classref-method:ref:`bool<class_bool>` **is_config_individual**\ (\ index\: :ref:`int<class_int>`\ ) |const| :ref:`๐<class_SpringBoneSimulator3D_method_is_config_individual>`Returns ``true`` if the config can be edited individually for each joint... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_is_end_bone_extended:.. rst-class:: classref-method:ref:`bool<class_bool>` **is_end_bone_extended**\ (\ index\: :ref:`int<class_int>`\ ) |const| :ref:`๐<class_SpringBoneSimulator3D_method_is_end_bone_extended>`Returns ``true`` if the end bone is extended to have the tail... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_reset:.. rst-class:: classref-method|void| **reset**\ (\ ) :ref:`๐<class_SpringBoneSimulator3D_method_reset>`Resets a simulating state with respect to the current bone pose.It is useful to prevent the simulation result getting violent. For example, calling this immediately after a call to :ref:`AnimationPlayer.play()<class_AnimationPlayer_method_play>` without a fading, or within the previous :ref:`SkeletonModifier3D.modification_processed<class_SkeletonModifier3D_signal_modification_processed>` signal if it's condition changes significantly... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_set_center_bone:.. rst-class:: classref-method|void| **set_center_bone**\ (\ index\: :ref:`int<class_int>`, bone\: :ref:`int<class_int>`\ ) :ref:`๐<class_SpringBoneSimulator3D_method_set_center_bone>`Sets the center bone index of the bone chain... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_set_center_bone_name:.. rst-class:: classref-method|void| **set_center_bone_name**\ (\ index\: :ref:`int<class_int>`, bone_name\: :ref:`String<class_String>`\ ) :ref:`๐<class_SpringBoneSimulator3D_method_set_center_bone_name>`Sets the center bone name of the bone chain... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_set_center_from:.. rst-class:: classref-method|void| **set_center_from**\ (\ index\: :ref:`int<class_int>`, center_from\: :ref:`CenterFrom<enum_SpringBoneSimulator3D_CenterFrom>`\ ) :ref:`๐<class_SpringBoneSimulator3D_method_set_center_from>`Sets what the center originates from in the bone chain.Bone movement is calculated based on the difference in relative distance between center and bone in the previous and next frames.For example, if the parent :ref:`Skeleton3D<class_Skeleton3D>` is used as the center, the bones are considered to have not moved if the :ref:`Skeleton3D<class_Skeleton3D>` moves in the world.In this case, only a change in the bone pose is considered to be a bone movement... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_set_center_node:.. rst-class:: classref-method|void| **set_center_node**\ (\ index\: :ref:`int<class_int>`, node_path\: :ref:`NodePath<class_NodePath>`\ ) :ref:`๐<class_SpringBoneSimulator3D_method_set_center_node>`Sets the center node path of the bone chain... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_set_collision_count:.. rst-class:: classref-method|void| **set_collision_count**\ (\ index\: :ref:`int<class_int>`, count\: :ref:`int<class_int>`\ ) :ref:`๐<class_SpringBoneSimulator3D_method_set_collision_count>`Sets the number of collisions in the collision list at ``index`` in the settings when :ref:`are_all_child_collisions_enabled()<class_SpringBoneSimulator3D_method_are_all_child_collisions_enabled>` is ``false``... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_set_collision_path:.. rst-class:: classref-method|void| **set_collision_path**\ (\ index\: :ref:`int<class_int>`, collision\: :ref:`int<class_int>`, node_path\: :ref:`NodePath<class_NodePath>`\ ) :ref:`๐<class_SpringBoneSimulator3D_method_set_collision_path>`Sets the node path of the :ref:`SpringBoneCollision3D<class_SpringBoneCollision3D>` at ``collision`` in the bone chain's collision list when :ref:`are_all_child_collisions_enabled()<class_SpringBoneSimulator3D_method_are_all_child_collisions_enabled>` is ``false``... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_set_drag:.. rst-class:: classref-method|void| **set_drag**\ (\ index\: :ref:`int<class_int>`, drag\: :ref:`float<class_float>`\ ) :ref:`๐<class_SpringBoneSimulator3D_method_set_drag>`Sets the drag force of the bone chain. The greater the value, the more suppressed the wiggling.The value is scaled by :ref:`set_drag_damping_curve()<class_SpringBoneSimulator3D_method_set_drag_damping_curve>` and cached in each joint setting in the joint list... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_set_drag_damping_curve:.. rst-class:: classref-method|void| **set_drag_damping_curve**\ (\ index\: :ref:`int<class_int>`, curve\: :ref:`Curve<class_Curve>`\ ) :ref:`๐<class_SpringBoneSimulator3D_method_set_drag_damping_curve>`Sets the drag force damping curve of the bone chain... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_set_enable_all_child_collisions:.. rst-class:: classref-method|void| **set_enable_all_child_collisions**\ (\ index\: :ref:`int<class_int>`, enabled\: :ref:`bool<class_bool>`\ ) :ref:`๐<class_SpringBoneSimulator3D_method_set_enable_all_child_collisions>`If ``enabled`` is ``true``, all child :ref:`SpringBoneCollision3D<class_SpringBoneCollision3D>`\ s are colliding and :ref:`set_exclude_collision_path()<class_SpringBoneSimulator3D_method_set_exclude_collision_path>` is enabled as an exclusion list at ``index`` in the settings.If ``enabled`` is ``false``, you need to manually register all valid collisions with :ref:`set_collision_path()<class_SpringBoneSimulator3D_method_set_collision_path>`... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_set_end_bone:.. rst-class:: classref-method|void| **set_end_bone**\ (\ index\: :ref:`int<class_int>`, bone\: :ref:`int<class_int>`\ ) :ref:`๐<class_SpringBoneSimulator3D_method_set_end_bone>`Sets the end bone index of the bone chain... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_set_end_bone_direction:.. rst-class:: classref-method|void| **set_end_bone_direction**\ (\ index\: :ref:`int<class_int>`, bone_direction\: :ref:`BoneDirection<enum_SpringBoneSimulator3D_BoneDirection>`\ ) :ref:`๐<class_SpringBoneSimulator3D_method_set_end_bone_direction>`Sets the end bone tail direction of the bone chain when :ref:`is_end_bone_extended()<class_SpringBoneSimulator3D_method_is_end_bone_extended>` is ``true``... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_set_end_bone_length:.. rst-class:: classref-method|void| **set_end_bone_length**\ (\ index\: :ref:`int<class_int>`, length\: :ref:`float<class_float>`\ ) :ref:`๐<class_SpringBoneSimulator3D_method_set_end_bone_length>`Sets the end bone tail length of the bone chain when :ref:`is_end_bone_extended()<class_SpringBoneSimulator3D_method_is_end_bone_extended>` is ``true``... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_set_end_bone_name:.. rst-class:: classref-method|void| **set_end_bone_name**\ (\ index\: :ref:`int<class_int>`, bone_name\: :ref:`String<class_String>`\ ) :ref:`๐<class_SpringBoneSimulator3D_method_set_end_bone_name>`Sets the end bone name of the bone chain.\ **Note:** 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()<class_SpringBoneSimulator3D_method_set_extend_end_bone>` to jiggle the bone... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_set_exclude_collision_count:.. rst-class:: classref-method|void| **set_exclude_collision_count**\ (\ index\: :ref:`int<class_int>`, count\: :ref:`int<class_int>`\ ) :ref:`๐<class_SpringBoneSimulator3D_method_set_exclude_collision_count>`Sets the number of exclude collisions in the exclude collision list at ``index`` in the settings when :ref:`are_all_child_collisions_enabled()<class_SpringBoneSimulator3D_method_are_all_child_collisions_enabled>` is ``true``... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_set_exclude_collision_path:.. rst-class:: classref-method|void| **set_exclude_collision_path**\ (\ index\: :ref:`int<class_int>`, collision\: :ref:`int<class_int>`, node_path\: :ref:`NodePath<class_NodePath>`\ ) :ref:`๐<class_SpringBoneSimulator3D_method_set_exclude_collision_path>`Sets the node path of the :ref:`SpringBoneCollision3D<class_SpringBoneCollision3D>` at ``collision`` in the bone chain's exclude collision list when :ref:`are_all_child_collisions_enabled()<class_SpringBoneSimulator3D_method_are_all_child_collisions_enabled>` is ``true``... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_set_extend_end_bone:.. rst-class:: classref-method|void| **set_extend_end_bone**\ (\ index\: :ref:`int<class_int>`, enabled\: :ref:`bool<class_bool>`\ ) :ref:`๐<class_SpringBoneSimulator3D_method_set_extend_end_bone>`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.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... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_set_gravity:.. rst-class:: classref-method|void| **set_gravity**\ (\ index\: :ref:`int<class_int>`, gravity\: :ref:`float<class_float>`\ ) :ref:`๐<class_SpringBoneSimulator3D_method_set_gravity>`Sets the gravity amount of the bone chain. This value is not an acceleration, but a constant velocity of movement in :ref:`set_gravity_direction()<class_SpringBoneSimulator3D_method_set_gravity_direction>`.If ``gravity`` is not ``0``, the modified pose will not return to the original pose since it is always affected by gravity.The value is scaled by :ref:`set_gravity_damping_curve()<class_SpringBoneSimulator3D_method_set_gravity_damping_curve>` and cached in each joint setting in the joint list... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_set_gravity_damping_curve:.. rst-class:: classref-method|void| **set_gravity_damping_curve**\ (\ index\: :ref:`int<class_int>`, curve\: :ref:`Curve<class_Curve>`\ ) :ref:`๐<class_SpringBoneSimulator3D_method_set_gravity_damping_curve>`Sets the gravity amount damping curve of the bone chain... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_set_gravity_direction:.. rst-class:: classref-method|void| **set_gravity_direction**\ (\ index\: :ref:`int<class_int>`, gravity_direction\: :ref:`Vector3<class_Vector3>`\ ) :ref:`๐<class_SpringBoneSimulator3D_method_set_gravity_direction>`Sets the gravity direction of the bone chain. This value is internally normalized and then multiplied by :ref:`set_gravity()<class_SpringBoneSimulator3D_method_set_gravity>`.The value is cached in each joint setting in the joint list... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_set_individual_config:.. rst-class:: classref-method|void| **set_individual_config**\ (\ index\: :ref:`int<class_int>`, enabled\: :ref:`bool<class_bool>`\ ) :ref:`๐<class_SpringBoneSimulator3D_method_set_individual_config>`If ``enabled`` is ``true``, the config can be edited individually for each joint... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_set_joint_drag:.. rst-class:: classref-method|void| **set_joint_drag**\ (\ index\: :ref:`int<class_int>`, joint\: :ref:`int<class_int>`, drag\: :ref:`float<class_float>`\ ) :ref:`๐<class_SpringBoneSimulator3D_method_set_joint_drag>`Sets the drag force at ``joint`` in the bone chain's joint list when :ref:`is_config_individual()<class_SpringBoneSimulator3D_method_is_config_individual>` is ``true``... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_set_joint_gravity:.. rst-class:: classref-method|void| **set_joint_gravity**\ (\ index\: :ref:`int<class_int>`, joint\: :ref:`int<class_int>`, gravity\: :ref:`float<class_float>`\ ) :ref:`๐<class_SpringBoneSimulator3D_method_set_joint_gravity>`Sets the gravity amount at ``joint`` in the bone chain's joint list when :ref:`is_config_individual()<class_SpringBoneSimulator3D_method_is_config_individual>` is ``true``... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_set_joint_gravity_direction:.. rst-class:: classref-method|void| **set_joint_gravity_direction**\ (\ index\: :ref:`int<class_int>`, joint\: :ref:`int<class_int>`, gravity_direction\: :ref:`Vector3<class_Vector3>`\ ) :ref:`๐<class_SpringBoneSimulator3D_method_set_joint_gravity_direction>`Sets the gravity direction at ``joint`` in the bone chain's joint list when :ref:`is_config_individual()<class_SpringBoneSimulator3D_method_is_config_individual>` is ``true``... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_set_joint_radius:.. rst-class:: classref-method|void| **set_joint_radius**\ (\ index\: :ref:`int<class_int>`, joint\: :ref:`int<class_int>`, radius\: :ref:`float<class_float>`\ ) :ref:`๐<class_SpringBoneSimulator3D_method_set_joint_radius>`Sets the joint radius at ``joint`` in the bone chain's joint list when :ref:`is_config_individual()<class_SpringBoneSimulator3D_method_is_config_individual>` is ``true``... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_set_joint_rotation_axis:.. rst-class:: classref-method|void| **set_joint_rotation_axis**\ (\ index\: :ref:`int<class_int>`, joint\: :ref:`int<class_int>`, axis\: :ref:`RotationAxis<enum_SpringBoneSimulator3D_RotationAxis>`\ ) :ref:`๐<class_SpringBoneSimulator3D_method_set_joint_rotation_axis>`Sets the rotation axis at ``joint`` in the bone chain's joint list when :ref:`is_config_individual()<class_SpringBoneSimulator3D_method_is_config_individual>` is ``true``.The axes are based on the :ref:`Skeleton3D.get_bone_rest()<class_Skeleton3D_method_get_bone_rest>`'s space, if ``axis`` is :ref:`ROTATION_AXIS_CUSTOM<class_SpringBoneSimulator3D_constant_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... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_set_joint_rotation_axis_vector:.. rst-class:: classref-method|void| **set_joint_rotation_axis_vector**\ (\ index\: :ref:`int<class_int>`, joint\: :ref:`int<class_int>`, vector\: :ref:`Vector3<class_Vector3>`\ ) :ref:`๐<class_SpringBoneSimulator3D_method_set_joint_rotation_axis_vector>`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<class_SpringBoneSimulator3D_constant_ROTATION_AXIS_ALL>`... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_set_joint_stiffness:.. rst-class:: classref-method|void| **set_joint_stiffness**\ (\ index\: :ref:`int<class_int>`, joint\: :ref:`int<class_int>`, stiffness\: :ref:`float<class_float>`\ ) :ref:`๐<class_SpringBoneSimulator3D_method_set_joint_stiffness>`Sets the stiffness force at ``joint`` in the bone chain's joint list when :ref:`is_config_individual()<class_SpringBoneSimulator3D_method_is_config_individual>` is ``true``... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_set_radius:.. rst-class:: classref-method|void| **set_radius**\ (\ index\: :ref:`int<class_int>`, radius\: :ref:`float<class_float>`\ ) :ref:`๐<class_SpringBoneSimulator3D_method_set_radius>`Sets the joint radius of the bone chain. It is used to move and slide with the :ref:`SpringBoneCollision3D<class_SpringBoneCollision3D>` in the collision list.The value is scaled by :ref:`set_radius_damping_curve()<class_SpringBoneSimulator3D_method_set_radius_damping_curve>` and cached in each joint setting in the joint list... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_set_radius_damping_curve:.. rst-class:: classref-method|void| **set_radius_damping_curve**\ (\ index\: :ref:`int<class_int>`, curve\: :ref:`Curve<class_Curve>`\ ) :ref:`๐<class_SpringBoneSimulator3D_method_set_radius_damping_curve>`Sets the joint radius damping curve of the bone chain... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_set_root_bone:.. rst-class:: classref-method|void| **set_root_bone**\ (\ index\: :ref:`int<class_int>`, bone\: :ref:`int<class_int>`\ ) :ref:`๐<class_SpringBoneSimulator3D_method_set_root_bone>`Sets the root bone index of the bone chain... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_set_root_bone_name:.. rst-class:: classref-method|void| **set_root_bone_name**\ (\ index\: :ref:`int<class_int>`, bone_name\: :ref:`String<class_String>`\ ) :ref:`๐<class_SpringBoneSimulator3D_method_set_root_bone_name>`Sets the root bone name of the bone chain... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_set_rotation_axis:.. rst-class:: classref-method|void| **set_rotation_axis**\ (\ index\: :ref:`int<class_int>`, axis\: :ref:`RotationAxis<enum_SpringBoneSimulator3D_RotationAxis>`\ ) :ref:`๐<class_SpringBoneSimulator3D_method_set_rotation_axis>`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()<class_Skeleton3D_method_get_bone_rest>`'s space, if ``axis`` is :ref:`ROTATION_AXIS_CUSTOM<class_SpringBoneSimulator3D_constant_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... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_set_rotation_axis_vector:.. rst-class:: classref-method|void| **set_rotation_axis_vector**\ (\ index\: :ref:`int<class_int>`, vector\: :ref:`Vector3<class_Vector3>`\ ) :ref:`๐<class_SpringBoneSimulator3D_method_set_rotation_axis_vector>`Sets the rotation axis vector of the bone chain. The value is cached in each joint setting in the joint list.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<class_SpringBoneSimulator3D_constant_ROTATION_AXIS_ALL>`... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_set_stiffness:.. rst-class:: classref-method|void| **set_stiffness**\ (\ index\: :ref:`int<class_int>`, stiffness\: :ref:`float<class_float>`\ ) :ref:`๐<class_SpringBoneSimulator3D_method_set_stiffness>`Sets the stiffness force of the bone chain. The greater the value, the faster it recovers to its initial pose.If ``stiffness`` is ``0``, the modified pose will not return to the original pose.The value is scaled by :ref:`set_stiffness_damping_curve()<class_SpringBoneSimulator3D_method_set_stiffness_damping_curve>` and cached in each joint setting in the joint list... rst-class:: classref-item-separator----.. _class_SpringBoneSimulator3D_method_set_stiffness_damping_curve:.. rst-class:: classref-method|void| **set_stiffness_damping_curve**\ (\ index\: :ref:`int<class_int>`, curve\: :ref:`Curve<class_Curve>`\ ) :ref:`๐<class_SpringBoneSimulator3D_method_set_stiffness_damping_curve>`Sets the stiffness force damping curve 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.)`
 |