mirror of
https://github.com/godotengine/godot-docs-l10n.git
synced 2025-12-31 09:49:22 +03:00
563 lines
28 KiB
ReStructuredText
563 lines
28 KiB
ReStructuredText
:github_url: hide
|
||
|
||
.. meta::
|
||
:keywords: ragdoll
|
||
|
||
.. _class_PhysicalBone3D:
|
||
|
||
PhysicalBone3D
|
||
==============
|
||
|
||
**Hérite de :** :ref:`PhysicsBody3D<class_PhysicsBody3D>` **<** :ref:`CollisionObject3D<class_CollisionObject3D>` **<** :ref:`Node3D<class_Node3D>` **<** :ref:`Node<class_Node>` **<** :ref:`Object<class_Object>`
|
||
|
||
Un corps physique utilisé pour faire que des os dans un :ref:`Skeleton3D<class_Skeleton3D>` réagissent à la physique.
|
||
|
||
.. rst-class:: classref-introduction-group
|
||
|
||
Description
|
||
-----------
|
||
|
||
Le nœud **PhysicalBone3D** est un corps physique qui peut être utilisé pour faire que des os dans un :ref:`Skeleton3D<class_Skeleton3D>` réagissent à la physique.
|
||
|
||
\ **Note :** Pour détecter des os physiques avec des raycasts, la propriété :ref:`SkeletonModifier3D.active<class_SkeletonModifier3D_property_active>` du :ref:`PhysicalBoneSimulator3D<class_PhysicalBoneSimulator3D>` parent doit être ``true`` et l'os du :ref:`Skeleton3D<class_Skeleton3D>` doit être attribué au **PhysicalBone3D** correctement, cela signifie que :ref:`get_bone_id()<class_PhysicalBone3D_method_get_bone_id>` devrait renvoyer un identifiant valide (``>=0``).
|
||
|
||
.. rst-class:: classref-introduction-group
|
||
|
||
Tutoriels
|
||
------------------
|
||
|
||
- :doc:`Ragdoll System <../tutorials/physics/ragdoll_system>`
|
||
|
||
.. rst-class:: classref-reftable-group
|
||
|
||
Propriétés
|
||
--------------------
|
||
|
||
.. table::
|
||
:widths: auto
|
||
|
||
+-------------------------------------------------+---------------------------------------------------------------------------+-----------------------------------------------------+
|
||
| :ref:`float<class_float>` | :ref:`angular_damp<class_PhysicalBone3D_property_angular_damp>` | ``0.0`` |
|
||
+-------------------------------------------------+---------------------------------------------------------------------------+-----------------------------------------------------+
|
||
| :ref:`DampMode<enum_PhysicalBone3D_DampMode>` | :ref:`angular_damp_mode<class_PhysicalBone3D_property_angular_damp_mode>` | ``0`` |
|
||
+-------------------------------------------------+---------------------------------------------------------------------------+-----------------------------------------------------+
|
||
| :ref:`Vector3<class_Vector3>` | :ref:`angular_velocity<class_PhysicalBone3D_property_angular_velocity>` | ``Vector3(0, 0, 0)`` |
|
||
+-------------------------------------------------+---------------------------------------------------------------------------+-----------------------------------------------------+
|
||
| :ref:`Transform3D<class_Transform3D>` | :ref:`body_offset<class_PhysicalBone3D_property_body_offset>` | ``Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0)`` |
|
||
+-------------------------------------------------+---------------------------------------------------------------------------+-----------------------------------------------------+
|
||
| :ref:`float<class_float>` | :ref:`bounce<class_PhysicalBone3D_property_bounce>` | ``0.0`` |
|
||
+-------------------------------------------------+---------------------------------------------------------------------------+-----------------------------------------------------+
|
||
| :ref:`bool<class_bool>` | :ref:`can_sleep<class_PhysicalBone3D_property_can_sleep>` | ``true`` |
|
||
+-------------------------------------------------+---------------------------------------------------------------------------+-----------------------------------------------------+
|
||
| :ref:`bool<class_bool>` | :ref:`custom_integrator<class_PhysicalBone3D_property_custom_integrator>` | ``false`` |
|
||
+-------------------------------------------------+---------------------------------------------------------------------------+-----------------------------------------------------+
|
||
| :ref:`float<class_float>` | :ref:`friction<class_PhysicalBone3D_property_friction>` | ``1.0`` |
|
||
+-------------------------------------------------+---------------------------------------------------------------------------+-----------------------------------------------------+
|
||
| :ref:`float<class_float>` | :ref:`gravity_scale<class_PhysicalBone3D_property_gravity_scale>` | ``1.0`` |
|
||
+-------------------------------------------------+---------------------------------------------------------------------------+-----------------------------------------------------+
|
||
| :ref:`Transform3D<class_Transform3D>` | :ref:`joint_offset<class_PhysicalBone3D_property_joint_offset>` | ``Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0)`` |
|
||
+-------------------------------------------------+---------------------------------------------------------------------------+-----------------------------------------------------+
|
||
| :ref:`Vector3<class_Vector3>` | :ref:`joint_rotation<class_PhysicalBone3D_property_joint_rotation>` | ``Vector3(0, 0, 0)`` |
|
||
+-------------------------------------------------+---------------------------------------------------------------------------+-----------------------------------------------------+
|
||
| :ref:`JointType<enum_PhysicalBone3D_JointType>` | :ref:`joint_type<class_PhysicalBone3D_property_joint_type>` | ``0`` |
|
||
+-------------------------------------------------+---------------------------------------------------------------------------+-----------------------------------------------------+
|
||
| :ref:`float<class_float>` | :ref:`linear_damp<class_PhysicalBone3D_property_linear_damp>` | ``0.0`` |
|
||
+-------------------------------------------------+---------------------------------------------------------------------------+-----------------------------------------------------+
|
||
| :ref:`DampMode<enum_PhysicalBone3D_DampMode>` | :ref:`linear_damp_mode<class_PhysicalBone3D_property_linear_damp_mode>` | ``0`` |
|
||
+-------------------------------------------------+---------------------------------------------------------------------------+-----------------------------------------------------+
|
||
| :ref:`Vector3<class_Vector3>` | :ref:`linear_velocity<class_PhysicalBone3D_property_linear_velocity>` | ``Vector3(0, 0, 0)`` |
|
||
+-------------------------------------------------+---------------------------------------------------------------------------+-----------------------------------------------------+
|
||
| :ref:`float<class_float>` | :ref:`mass<class_PhysicalBone3D_property_mass>` | ``1.0`` |
|
||
+-------------------------------------------------+---------------------------------------------------------------------------+-----------------------------------------------------+
|
||
|
||
.. rst-class:: classref-reftable-group
|
||
|
||
Méthodes
|
||
----------------
|
||
|
||
.. table::
|
||
:widths: auto
|
||
|
||
+-------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`_integrate_forces<class_PhysicalBone3D_private_method__integrate_forces>`\ (\ state\: :ref:`PhysicsDirectBodyState3D<class_PhysicsDirectBodyState3D>`\ ) |virtual| |
|
||
+-------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`apply_central_impulse<class_PhysicalBone3D_method_apply_central_impulse>`\ (\ impulse\: :ref:`Vector3<class_Vector3>`\ ) |
|
||
+-------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`apply_impulse<class_PhysicalBone3D_method_apply_impulse>`\ (\ impulse\: :ref:`Vector3<class_Vector3>`, position\: :ref:`Vector3<class_Vector3>` = Vector3(0, 0, 0)\ ) |
|
||
+-------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`int<class_int>` | :ref:`get_bone_id<class_PhysicalBone3D_method_get_bone_id>`\ (\ ) |const| |
|
||
+-------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`bool<class_bool>` | :ref:`get_simulate_physics<class_PhysicalBone3D_method_get_simulate_physics>`\ (\ ) |
|
||
+-------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`bool<class_bool>` | :ref:`is_simulating_physics<class_PhysicalBone3D_method_is_simulating_physics>`\ (\ ) |
|
||
+-------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
|
||
.. rst-class:: classref-section-separator
|
||
|
||
----
|
||
|
||
.. rst-class:: classref-descriptions-group
|
||
|
||
Énumérations
|
||
------------------------
|
||
|
||
.. _enum_PhysicalBone3D_DampMode:
|
||
|
||
.. rst-class:: classref-enumeration
|
||
|
||
enum **DampMode**: :ref:`🔗<enum_PhysicalBone3D_DampMode>`
|
||
|
||
.. _class_PhysicalBone3D_constant_DAMP_MODE_COMBINE:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`DampMode<enum_PhysicalBone3D_DampMode>` **DAMP_MODE_COMBINE** = ``0``
|
||
|
||
Dans ce mode, la valeur d'amortissement du corps est ajoutée à toute valeur définie dans les zones ou la valeur par défaut.
|
||
|
||
.. _class_PhysicalBone3D_constant_DAMP_MODE_REPLACE:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`DampMode<enum_PhysicalBone3D_DampMode>` **DAMP_MODE_REPLACE** = ``1``
|
||
|
||
Dans ce mode, la valeur d'amortissement du corps remplace toute valeur définie dans les zones ou la valeur par défaut.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _enum_PhysicalBone3D_JointType:
|
||
|
||
.. rst-class:: classref-enumeration
|
||
|
||
enum **JointType**: :ref:`🔗<enum_PhysicalBone3D_JointType>`
|
||
|
||
.. _class_PhysicalBone3D_constant_JOINT_TYPE_NONE:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`JointType<enum_PhysicalBone3D_JointType>` **JOINT_TYPE_NONE** = ``0``
|
||
|
||
Aucune liaison n'est appliquée au PhysicalBone3D.
|
||
|
||
.. _class_PhysicalBone3D_constant_JOINT_TYPE_PIN:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`JointType<enum_PhysicalBone3D_JointType>` **JOINT_TYPE_PIN** = ``1``
|
||
|
||
A pin joint is applied to the PhysicsBone3D.
|
||
|
||
.. _class_PhysicalBone3D_constant_JOINT_TYPE_CONE:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`JointType<enum_PhysicalBone3D_JointType>` **JOINT_TYPE_CONE** = ``2``
|
||
|
||
Une liaison conique est appliquée au PhysicalBone3D.
|
||
|
||
.. _class_PhysicalBone3D_constant_JOINT_TYPE_HINGE:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`JointType<enum_PhysicalBone3D_JointType>` **JOINT_TYPE_HINGE** = ``3``
|
||
|
||
Une liaison avec charnière est appliquée au PhysicalBone3D.
|
||
|
||
.. _class_PhysicalBone3D_constant_JOINT_TYPE_SLIDER:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`JointType<enum_PhysicalBone3D_JointType>` **JOINT_TYPE_SLIDER** = ``4``
|
||
|
||
Une liaison glissière est appliquée au PhysicalBone3D.
|
||
|
||
.. _class_PhysicalBone3D_constant_JOINT_TYPE_6DOF:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`JointType<enum_PhysicalBone3D_JointType>` **JOINT_TYPE_6DOF** = ``5``
|
||
|
||
Une liaison à 6 degrés de liberté est appliquée au PhysicalBone3D.
|
||
|
||
.. rst-class:: classref-section-separator
|
||
|
||
----
|
||
|
||
.. rst-class:: classref-descriptions-group
|
||
|
||
Descriptions des propriétés
|
||
------------------------------------------------------
|
||
|
||
.. _class_PhysicalBone3D_property_angular_damp:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`float<class_float>` **angular_damp** = ``0.0`` :ref:`🔗<class_PhysicalBone3D_property_angular_damp>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_angular_damp**\ (\ value\: :ref:`float<class_float>`\ )
|
||
- :ref:`float<class_float>` **get_angular_damp**\ (\ )
|
||
|
||
Amortit la rotation du corps. Par défaut, le corps utilisera le paramètre de projet :ref:`ProjectSettings.physics/3d/default_angular_damp<class_ProjectSettings_property_physics/3d/default_angular_damp>` ou toute redéfinition de valeur définie par une :ref:`Area3D<class_Area3D>` où se trouve le corps. Selon :ref:`angular_damp_mode<class_PhysicalBone3D_property_angular_damp_mode>`, vous pouvez définir que :ref:`angular_damp<class_PhysicalBone3D_property_angular_damp>` soit ajouté à ou va remplacer la valeur d'amortissement du corps.
|
||
|
||
Voir :ref:`ProjectSettings.physics/3d/default_angular_damp<class_ProjectSettings_property_physics/3d/default_angular_damp>` pour plus de détails sur l'amortissement.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_PhysicalBone3D_property_angular_damp_mode:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`DampMode<enum_PhysicalBone3D_DampMode>` **angular_damp_mode** = ``0`` :ref:`🔗<class_PhysicalBone3D_property_angular_damp_mode>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_angular_damp_mode**\ (\ value\: :ref:`DampMode<enum_PhysicalBone3D_DampMode>`\ )
|
||
- :ref:`DampMode<enum_PhysicalBone3D_DampMode>` **get_angular_damp_mode**\ (\ )
|
||
|
||
Définit comment :ref:`angular_damp<class_PhysicalBone3D_property_angular_damp>` est appliqué.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_PhysicalBone3D_property_angular_velocity:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`Vector3<class_Vector3>` **angular_velocity** = ``Vector3(0, 0, 0)`` :ref:`🔗<class_PhysicalBone3D_property_angular_velocity>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_angular_velocity**\ (\ value\: :ref:`Vector3<class_Vector3>`\ )
|
||
- :ref:`Vector3<class_Vector3>` **get_angular_velocity**\ (\ )
|
||
|
||
La vitesse de rotation du PhysicalBone3D en *radians* par seconde.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_PhysicalBone3D_property_body_offset:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`Transform3D<class_Transform3D>` **body_offset** = ``Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0)`` :ref:`🔗<class_PhysicalBone3D_property_body_offset>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_body_offset**\ (\ value\: :ref:`Transform3D<class_Transform3D>`\ )
|
||
- :ref:`Transform3D<class_Transform3D>` **get_body_offset**\ (\ )
|
||
|
||
Définit la transformation du corps.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_PhysicalBone3D_property_bounce:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`float<class_float>` **bounce** = ``0.0`` :ref:`🔗<class_PhysicalBone3D_property_bounce>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_bounce**\ (\ value\: :ref:`float<class_float>`\ )
|
||
- :ref:`float<class_float>` **get_bounce**\ (\ )
|
||
|
||
La capacité du corps à rebondir. Les valeurs vont de ``0`` (pas de rebond) à ``1`` (rebond complet).
|
||
|
||
\ **Note :** Même avec :ref:`bounce<class_PhysicalBone3D_property_bounce>` défini à ``1.0``, une partie de l'énergie sera perdue au cours du temps en raison de l'amortissement linéaire et angulaire. Pour avoir un **PhysicalBone3D** qui conserve toute son énergie au cours du temps, définissez :ref:`bounce<class_PhysicalBone3D_property_bounce>` à ``1.0``, :ref:`linear_damp_mode<class_PhysicalBone3D_property_linear_damp_mode>` à :ref:`DAMP_MODE_REPLACE<class_PhysicalBone3D_constant_DAMP_MODE_REPLACE>` à ``0.0``, :ref:`angular_damp_mode<class_PhysicalBone3D_property_angular_damp_mode>` à :ref:`DAMP_MODE_REPLACE<class_PhysicalBone3D_constant_DAMP_MODE_REPLACE>`, et :ref:`angular_damp<class_PhysicalBone3D_property_angular_damp>` à ``0.0``.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_PhysicalBone3D_property_can_sleep:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`bool<class_bool>` **can_sleep** = ``true`` :ref:`🔗<class_PhysicalBone3D_property_can_sleep>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_can_sleep**\ (\ value\: :ref:`bool<class_bool>`\ )
|
||
- :ref:`bool<class_bool>` **is_able_to_sleep**\ (\ )
|
||
|
||
Si ``true``, le corps est désactivé lorsqu'il n'y a pas de mouvement, ainsi il ne participera pas à la simulation jusqu'à ce qu'il soit réveillé par une force externe.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_PhysicalBone3D_property_custom_integrator:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`bool<class_bool>` **custom_integrator** = ``false`` :ref:`🔗<class_PhysicalBone3D_property_custom_integrator>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_use_custom_integrator**\ (\ value\: :ref:`bool<class_bool>`\ )
|
||
- :ref:`bool<class_bool>` **is_using_custom_integrator**\ (\ )
|
||
|
||
Si ``true``, l'intégration des forces standardes (comme la gravité ou l'amortissement) sera désactivée pour ce corps. En dehors de la réponse à la collision, le corps ne se déplacera que selon la méthode :ref:`_integrate_forces()<class_PhysicalBone3D_private_method__integrate_forces>`, si cette méthode virtuelle est surchargée.
|
||
|
||
Définir cette propriété appellera la méthode :ref:`PhysicsServer3D.body_set_omit_force_integration()<class_PhysicsServer3D_method_body_set_omit_force_integration>` en interne.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_PhysicalBone3D_property_friction:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`float<class_float>` **friction** = ``1.0`` :ref:`🔗<class_PhysicalBone3D_property_friction>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_friction**\ (\ value\: :ref:`float<class_float>`\ )
|
||
- :ref:`float<class_float>` **get_friction**\ (\ )
|
||
|
||
La friction du corps, de ``0`` (sans friction) à ``1`` (friction maximale).
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_PhysicalBone3D_property_gravity_scale:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`float<class_float>` **gravity_scale** = ``1.0`` :ref:`🔗<class_PhysicalBone3D_property_gravity_scale>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_gravity_scale**\ (\ value\: :ref:`float<class_float>`\ )
|
||
- :ref:`float<class_float>` **get_gravity_scale**\ (\ )
|
||
|
||
Ceci est multiplié par :ref:`ProjectSettings.physics/3d/default_gravity<class_ProjectSettings_property_physics/3d/default_gravity>` pour produire la gravité de ce corps. Par exemple, une valeur de ``1.0`` appliquera la gravité normale, ``2.0`` appliquera le double de la gravité, et ``0.5`` appliquera la moitié de la gravité à ce corps.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_PhysicalBone3D_property_joint_offset:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`Transform3D<class_Transform3D>` **joint_offset** = ``Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0)`` :ref:`🔗<class_PhysicalBone3D_property_joint_offset>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_joint_offset**\ (\ value\: :ref:`Transform3D<class_Transform3D>`\ )
|
||
- :ref:`Transform3D<class_Transform3D>` **get_joint_offset**\ (\ )
|
||
|
||
Définit la transformation de l'articulation.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_PhysicalBone3D_property_joint_rotation:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`Vector3<class_Vector3>` **joint_rotation** = ``Vector3(0, 0, 0)`` :ref:`🔗<class_PhysicalBone3D_property_joint_rotation>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_joint_rotation**\ (\ value\: :ref:`Vector3<class_Vector3>`\ )
|
||
- :ref:`Vector3<class_Vector3>` **get_joint_rotation**\ (\ )
|
||
|
||
Définit la rotation de la liaison en radians.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_PhysicalBone3D_property_joint_type:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`JointType<enum_PhysicalBone3D_JointType>` **joint_type** = ``0`` :ref:`🔗<class_PhysicalBone3D_property_joint_type>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_joint_type**\ (\ value\: :ref:`JointType<enum_PhysicalBone3D_JointType>`\ )
|
||
- :ref:`JointType<enum_PhysicalBone3D_JointType>` **get_joint_type**\ (\ )
|
||
|
||
Définit le type de liaison.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_PhysicalBone3D_property_linear_damp:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`float<class_float>` **linear_damp** = ``0.0`` :ref:`🔗<class_PhysicalBone3D_property_linear_damp>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_linear_damp**\ (\ value\: :ref:`float<class_float>`\ )
|
||
- :ref:`float<class_float>` **get_linear_damp**\ (\ )
|
||
|
||
Amortit le mouvement du corps. Par défaut, le corps utilisera :ref:`ProjectSettings.physics/3d/default_linear_damp<class_ProjectSettings_property_physics/3d/default_linear_damp>` ou toute redéfinition de valeur définie par une :ref:`Area3D<class_Area3D>` où se trouve le corps. Selon :ref:`linear_damp_mode<class_PhysicalBone3D_property_linear_damp_mode>`, :ref:`linear_damp<class_PhysicalBone3D_property_linear_damp>` peut être ajouté ou remplacer la valeur d'amortissement du corps.
|
||
|
||
Voir :ref:`ProjectSettings.physics/3d/default_linear_damp<class_ProjectSettings_property_physics/3d/default_linear_damp>` pour plus de détails sur l'amortissement.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_PhysicalBone3D_property_linear_damp_mode:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`DampMode<enum_PhysicalBone3D_DampMode>` **linear_damp_mode** = ``0`` :ref:`🔗<class_PhysicalBone3D_property_linear_damp_mode>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_linear_damp_mode**\ (\ value\: :ref:`DampMode<enum_PhysicalBone3D_DampMode>`\ )
|
||
- :ref:`DampMode<enum_PhysicalBone3D_DampMode>` **get_linear_damp_mode**\ (\ )
|
||
|
||
Définit comment :ref:`linear_damp<class_PhysicalBone3D_property_linear_damp>` est appliqué.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_PhysicalBone3D_property_linear_velocity:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`Vector3<class_Vector3>` **linear_velocity** = ``Vector3(0, 0, 0)`` :ref:`🔗<class_PhysicalBone3D_property_linear_velocity>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_linear_velocity**\ (\ value\: :ref:`Vector3<class_Vector3>`\ )
|
||
- :ref:`Vector3<class_Vector3>` **get_linear_velocity**\ (\ )
|
||
|
||
La vitesse linéaire du corps en unités par seconde. Peut être utilisé sporadiquement, mais **ne pas définir à chaque trame**, car la physique peut s'exécuter dans un autre fil d'exécution et s'exécute à une granularité différente. Utilisez :ref:`_integrate_forces()<class_PhysicalBone3D_private_method__integrate_forces>` comme boucle de traitement pour un contrôle précis de l'état du corps.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_PhysicalBone3D_property_mass:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`float<class_float>` **mass** = ``1.0`` :ref:`🔗<class_PhysicalBone3D_property_mass>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_mass**\ (\ value\: :ref:`float<class_float>`\ )
|
||
- :ref:`float<class_float>` **get_mass**\ (\ )
|
||
|
||
La masse du corps.
|
||
|
||
.. rst-class:: classref-section-separator
|
||
|
||
----
|
||
|
||
.. rst-class:: classref-descriptions-group
|
||
|
||
Descriptions des méthodes
|
||
--------------------------------------------------
|
||
|
||
.. _class_PhysicalBone3D_private_method__integrate_forces:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **_integrate_forces**\ (\ state\: :ref:`PhysicsDirectBodyState3D<class_PhysicsDirectBodyState3D>`\ ) |virtual| :ref:`🔗<class_PhysicalBone3D_private_method__integrate_forces>`
|
||
|
||
Appelé pendant le traitement physique, vous permettant de lire et de modifier en toute sécurité l'état de simulation de l'objet. Par défaut, elle est appelée avant l'intégration des forces standardes, mais la propriété :ref:`custom_integrator<class_PhysicalBone3D_property_custom_integrator>` vous permet de désactiver l'intégration des forces standardes et de faire une intégration des forces entièrement personnalisée pour un corps.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_PhysicalBone3D_method_apply_central_impulse:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **apply_central_impulse**\ (\ impulse\: :ref:`Vector3<class_Vector3>`\ ) :ref:`🔗<class_PhysicalBone3D_method_apply_central_impulse>`
|
||
|
||
Applique une impulsion directionnelle n'affectant pas la rotation.
|
||
|
||
Une impulsion est indépendante du temps ! Appliquer une impulsion à chaque trame entraînerait une force dépendante du taux de rafraîchissement. Pour cette raison, elle ne devrait être utilisée que pour simuler des impacts ponctuels (utilisez les fonctions "_integrate_forces" sinon).
|
||
|
||
Ceci est équivalent à utiliser :ref:`apply_impulse()<class_PhysicalBone3D_method_apply_impulse>` au centre de masse du corps.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_PhysicalBone3D_method_apply_impulse:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **apply_impulse**\ (\ impulse\: :ref:`Vector3<class_Vector3>`, position\: :ref:`Vector3<class_Vector3>` = Vector3(0, 0, 0)\ ) :ref:`🔗<class_PhysicalBone3D_method_apply_impulse>`
|
||
|
||
Applique une impulsion positionnelle au PhysicalBone3D.
|
||
|
||
Une impulsion est indépendante du temps ! Appliquer une impulsion à chaque trame entraînerait une force dépendante du taux de rafraîchissement. Pour cette raison, elle ne devrait être utilisée que pour simuler des impacts ponctuels (utilisez les fonctions "_integrate_forces" sinon).
|
||
|
||
\ ``position`` est le décalage depuis l'origine du **PhysicalBone3D** en coordonnées globales.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_PhysicalBone3D_method_get_bone_id:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`int<class_int>` **get_bone_id**\ (\ ) |const| :ref:`🔗<class_PhysicalBone3D_method_get_bone_id>`
|
||
|
||
Renvoie l'identifiant unique du PhysicalBone3D.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_PhysicalBone3D_method_get_simulate_physics:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`bool<class_bool>` **get_simulate_physics**\ (\ ) :ref:`🔗<class_PhysicalBone3D_method_get_simulate_physics>`
|
||
|
||
Renvoie ``true`` si le PhysicalBone3D est autorisé à simuler la physique.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_PhysicalBone3D_method_is_simulating_physics:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`bool<class_bool>` **is_simulating_physics**\ (\ ) :ref:`🔗<class_PhysicalBone3D_method_is_simulating_physics>`
|
||
|
||
Renvoie ``true`` si le PhysicalBone3D simule actuellement la physique.
|
||
|
||
.. |virtual| replace:: :abbr:`virtual (Cette méthode doit typiquement être redéfinie par l'utilisateur pour avoir un effet.)`
|
||
.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)`
|
||
.. |const| replace:: :abbr:`const (Cette méthode n'a pas d'effets de bord. Elle ne modifie aucune des variables membres de l'instance.)`
|
||
.. |vararg| replace:: :abbr:`vararg (Cette méthode accepte n'importe quel nombre d'arguments après ceux décris ici.)`
|
||
.. |constructor| replace:: :abbr:`constructor (Cette méthode est utilisée pour construire un type.)`
|
||
.. |static| replace:: :abbr:`static (Cette méthode n'a pas besoin d'instance pour être appelée, elle peut donc être directement appelée en utilisant le nom de la classe.)`
|
||
.. |operator| replace:: :abbr:`operator (Cette méthode décrit un opérateur valide à utiliser avec ce type en tant qu'opérande gauche.)`
|
||
.. |bitfield| replace:: :abbr:`BitField (Cette valeur est un nombre entier composé d'un masque de bits des options suivantes.)`
|
||
.. |void| replace:: :abbr:`void (Aucune valeur de retour.)`
|