Files
godot-docs-l10n/classes/ru/class_physicstestmotionparameters3d.rst

199 lines
12 KiB
ReStructuredText
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

:github_url: hide
.. _class_PhysicsTestMotionParameters3D:
PhysicsTestMotionParameters3D
=============================
**Наследует:** :ref:`RefCounted<class_RefCounted>` **<** :ref:`Object<class_Object>`
Предоставляет параметры для :ref:`PhysicsServer3D.body_test_motion()<class_PhysicsServer3D_method_body_test_motion>`.
.. rst-class:: classref-introduction-group
Описание
----------------
Изменяя различные свойства этого объекта, такие как движение, вы можете настроить параметры для :ref:`PhysicsServer3D.body_test_motion()<class_PhysicsServer3D_method_body_test_motion>`.
.. rst-class:: classref-reftable-group
Свойства
----------------
.. table::
:widths: auto
+----------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`collide_separation_ray<class_PhysicsTestMotionParameters3D_property_collide_separation_ray>` | ``false`` |
+----------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------------------------------------+
| :ref:`Array<class_Array>`\[:ref:`RID<class_RID>`\] | :ref:`exclude_bodies<class_PhysicsTestMotionParameters3D_property_exclude_bodies>` | ``[]`` |
+----------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------------------------------------+
| :ref:`Array<class_Array>`\[:ref:`int<class_int>`\] | :ref:`exclude_objects<class_PhysicsTestMotionParameters3D_property_exclude_objects>` | ``[]`` |
+----------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------------------------------------+
| :ref:`Transform3D<class_Transform3D>` | :ref:`from<class_PhysicsTestMotionParameters3D_property_from>` | ``Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0)`` |
+----------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------------------------------------+
| :ref:`float<class_float>` | :ref:`margin<class_PhysicsTestMotionParameters3D_property_margin>` | ``0.001`` |
+----------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------------------------------------+
| :ref:`int<class_int>` | :ref:`max_collisions<class_PhysicsTestMotionParameters3D_property_max_collisions>` | ``1`` |
+----------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------------------------------------+
| :ref:`Vector3<class_Vector3>` | :ref:`motion<class_PhysicsTestMotionParameters3D_property_motion>` | ``Vector3(0, 0, 0)`` |
+----------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`recovery_as_collision<class_PhysicsTestMotionParameters3D_property_recovery_as_collision>` | ``false`` |
+----------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------------------------------------+
.. rst-class:: classref-section-separator
----
.. rst-class:: classref-descriptions-group
Описания свойств
--------------------------------
.. _class_PhysicsTestMotionParameters3D_property_collide_separation_ray:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **collide_separation_ray** = ``false`` :ref:`🔗<class_PhysicsTestMotionParameters3D_property_collide_separation_ray>`
.. rst-class:: classref-property-setget
- |void| **set_collide_separation_ray_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_collide_separation_ray_enabled**\ (\ )
Если установлено значение ``true``, формы типа :ref:`PhysicsServer3D.SHAPE_SEPARATION_RAY<class_PhysicsServer3D_constant_SHAPE_SEPARATION_RAY>` используются для обнаружения столкновений и могут остановить движение. Может быть полезно при привязке к земле.
Если установлено значение ``false``, формы типа :ref:`PhysicsServer3D.SHAPE_SEPARATION_RAY<class_PhysicsServer3D_constant_SHAPE_SEPARATION_RAY>` используются только для разделения при перекрытии с другими телами. Это основное применение форм лучей разделения.
.. rst-class:: classref-item-separator
----
.. _class_PhysicsTestMotionParameters3D_property_exclude_bodies:
.. rst-class:: classref-property
:ref:`Array<class_Array>`\[:ref:`RID<class_RID>`\] **exclude_bodies** = ``[]`` :ref:`🔗<class_PhysicsTestMotionParameters3D_property_exclude_bodies>`
.. rst-class:: classref-property-setget
- |void| **set_exclude_bodies**\ (\ value\: :ref:`Array<class_Array>`\[:ref:`RID<class_RID>`\]\ )
- :ref:`Array<class_Array>`\[:ref:`RID<class_RID>`\] **get_exclude_bodies**\ (\ )
Необязательный массив тела :ref:`RID<class_RID>` для исключения из столкновения. Используйте :ref:`CollisionObject3D.get_rid()<class_CollisionObject3D_method_get_rid>`, чтобы получить :ref:`RID<class_RID>`, связанный с узлом, производным от :ref:`CollisionObject3D<class_CollisionObject3D>`.
.. rst-class:: classref-item-separator
----
.. _class_PhysicsTestMotionParameters3D_property_exclude_objects:
.. rst-class:: classref-property
:ref:`Array<class_Array>`\[:ref:`int<class_int>`\] **exclude_objects** = ``[]`` :ref:`🔗<class_PhysicsTestMotionParameters3D_property_exclude_objects>`
.. rst-class:: classref-property-setget
- |void| **set_exclude_objects**\ (\ value\: :ref:`Array<class_Array>`\[:ref:`int<class_int>`\]\ )
- :ref:`Array<class_Array>`\[:ref:`int<class_int>`\] **get_exclude_objects**\ (\ )
Необязательный массив уникальных идентификаторов экземпляров объектов для исключения из коллизии. См. :ref:`Object.get_instance_id()<class_Object_method_get_instance_id>`.
.. rst-class:: classref-item-separator
----
.. _class_PhysicsTestMotionParameters3D_property_from:
.. rst-class:: classref-property
:ref:`Transform3D<class_Transform3D>` **from** = ``Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0)`` :ref:`🔗<class_PhysicsTestMotionParameters3D_property_from>`
.. rst-class:: classref-property-setget
- |void| **set_from**\ (\ value\: :ref:`Transform3D<class_Transform3D>`\ )
- :ref:`Transform3D<class_Transform3D>` **get_from**\ (\ )
Преобразование в глобальном пространстве, где должно начаться движение. Обычно устанавливается на :ref:`Node3D.global_transform<class_Node3D_property_global_transform>` для преобразования текущего тела.
.. rst-class:: classref-item-separator
----
.. _class_PhysicsTestMotionParameters3D_property_margin:
.. rst-class:: classref-property
:ref:`float<class_float>` **margin** = ``0.001`` :ref:`🔗<class_PhysicsTestMotionParameters3D_property_margin>`
.. rst-class:: classref-property-setget
- |void| **set_margin**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_margin**\ (\ )
Увеличивает размер фигур, участвующих в обнаружении столкновений.
.. rst-class:: classref-item-separator
----
.. _class_PhysicsTestMotionParameters3D_property_max_collisions:
.. rst-class:: classref-property
:ref:`int<class_int>` **max_collisions** = ``1`` :ref:`🔗<class_PhysicsTestMotionParameters3D_property_max_collisions>`
.. rst-class:: classref-property-setget
- |void| **set_max_collisions**\ (\ value\: :ref:`int<class_int>`\ )
- :ref:`int<class_int>` **get_max_collisions**\ (\ )
Максимальное количество возвращаемых столкновений, между ``1`` и ``32``. Всегда возвращает самые глубокие обнаруженные столкновения.
.. rst-class:: classref-item-separator
----
.. _class_PhysicsTestMotionParameters3D_property_motion:
.. rst-class:: classref-property
:ref:`Vector3<class_Vector3>` **motion** = ``Vector3(0, 0, 0)`` :ref:`🔗<class_PhysicsTestMotionParameters3D_property_motion>`
.. rst-class:: classref-property-setget
- |void| **set_motion**\ (\ value\: :ref:`Vector3<class_Vector3>`\ )
- :ref:`Vector3<class_Vector3>` **get_motion**\ (\ )
Вектор движения для определения длины и направления проверяемого движения.
.. rst-class:: classref-item-separator
----
.. _class_PhysicsTestMotionParameters3D_property_recovery_as_collision:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **recovery_as_collision** = ``false`` :ref:`🔗<class_PhysicsTestMotionParameters3D_property_recovery_as_collision>`
.. rst-class:: classref-property-setget
- |void| **set_recovery_as_collision_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_recovery_as_collision_enabled**\ (\ )
Если установлено значение ``true``, любое отклонение от фазы восстановления сообщается как столкновение; это используется, например, :ref:`CharacterBody3D<class_CharacterBody3D>` для улучшения обнаружения пола во время привязки к полу.
Если установлено значение ``false``, сообщаются только столкновения, возникающие в результате движения, что обычно является желаемым поведением.
.. |virtual| replace:: :abbr:`virtual (Этот метод обычно должен быть переопределен пользователем, чтобы иметь какой-либо эффект.)`
.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)`
.. |const| replace:: :abbr:`const (Этот метод не имеет побочных эффектов. Он не изменяет ни одну из переменных-членов экземпляра.)`
.. |vararg| replace:: :abbr:`vararg (Этот метод принимает любое количество аргументов после описанных здесь.)`
.. |constructor| replace:: :abbr:`constructor (Этот метод используется для создания типа.)`
.. |static| replace:: :abbr:`static (Этот метод не нуждается в вызове экземпляра, поэтому его можно вызвать напрямую, используя имя класса.)`
.. |operator| replace:: :abbr:`operator (Этот метод описывает допустимый оператор для использования с этим типом в качестве левого операнда.)`
.. |bitfield| replace:: :abbr:`BitField (Это значение является целым числом, составленным как битовая маска следующих флагов.)`
.. |void| replace:: :abbr:`void (Нет возвращаемого значения.)`