mirror of
https://github.com/godotengine/godot-docs-l10n.git
synced 2025-12-31 09:49:22 +03:00
1116 lines
88 KiB
ReStructuredText
1116 lines
88 KiB
ReStructuredText
:github_url: hide
|
||
|
||
.. meta::
|
||
:keywords: spatial
|
||
|
||
.. _class_Node3D:
|
||
|
||
Node3D
|
||
======
|
||
|
||
**Наследует:** :ref:`Node<class_Node>` **<** :ref:`Object<class_Object>`
|
||
|
||
**Наследуется от:** :ref:`AudioListener3D<class_AudioListener3D>`, :ref:`AudioStreamPlayer3D<class_AudioStreamPlayer3D>`, :ref:`BoneAttachment3D<class_BoneAttachment3D>`, :ref:`Camera3D<class_Camera3D>`, :ref:`CollisionObject3D<class_CollisionObject3D>`, :ref:`CollisionPolygon3D<class_CollisionPolygon3D>`, :ref:`CollisionShape3D<class_CollisionShape3D>`, :ref:`GridMap<class_GridMap>`, :ref:`ImporterMeshInstance3D<class_ImporterMeshInstance3D>`, :ref:`Joint3D<class_Joint3D>`, :ref:`LightmapProbe<class_LightmapProbe>`, :ref:`Marker3D<class_Marker3D>`, :ref:`NavigationLink3D<class_NavigationLink3D>`, :ref:`NavigationObstacle3D<class_NavigationObstacle3D>`, :ref:`NavigationRegion3D<class_NavigationRegion3D>`, :ref:`OpenXRCompositionLayer<class_OpenXRCompositionLayer>`, :ref:`OpenXRHand<class_OpenXRHand>`, :ref:`OpenXRRenderModel<class_OpenXRRenderModel>`, :ref:`OpenXRRenderModelManager<class_OpenXRRenderModelManager>`, :ref:`Path3D<class_Path3D>`, :ref:`PathFollow3D<class_PathFollow3D>`, :ref:`RayCast3D<class_RayCast3D>`, :ref:`RemoteTransform3D<class_RemoteTransform3D>`, :ref:`ShapeCast3D<class_ShapeCast3D>`, :ref:`Skeleton3D<class_Skeleton3D>`, :ref:`SkeletonModifier3D<class_SkeletonModifier3D>`, :ref:`SpringArm3D<class_SpringArm3D>`, :ref:`SpringBoneCollision3D<class_SpringBoneCollision3D>`, :ref:`VehicleWheel3D<class_VehicleWheel3D>`, :ref:`VisualInstance3D<class_VisualInstance3D>`, :ref:`XRFaceModifier3D<class_XRFaceModifier3D>`, :ref:`XRNode3D<class_XRNode3D>`, :ref:`XROrigin3D<class_XROrigin3D>`
|
||
|
||
Базовый объект в трехмерном пространстве, наследуемый всеми трехмерными узлами.
|
||
|
||
.. rst-class:: classref-introduction-group
|
||
|
||
Описание
|
||
----------------
|
||
|
||
Узел **Node3D** является базовым представлением узла в трехмерном пространстве. Все остальные трехмерные узлы наследуются от этого класса.
|
||
|
||
Аффинные операции (перемещение, вращение, масштабирование) вычисляются в системе координат относительно родительского узла, если только :ref:`top_level<class_Node3D_property_top_level>` **Node3D** не равен ``true``. В этой системе координат аффинные операции соответствуют прямым аффинным операциям над :ref:`transform<class_Node3D_property_transform>` **Node3D**. Термин *родительское пространство* относится к этой системе координат. Система координат, прикрепленная к самому **Node3D**, называется локальной системой координат объекта или *локальным пространством*.
|
||
|
||
\ **Примечание:** Если не указано иное, все методы, которым требуются параметры угла, должны получать углы в *радианах*. Чтобы преобразовать градусы в радианы, используйте :ref:`@GlobalScope.deg_to_rad()<class_@GlobalScope_method_deg_to_rad>`.
|
||
|
||
\ **Примечание:** В Godot 3 и более ранних версиях **Node3D** назывался *Spatial*.
|
||
|
||
.. rst-class:: classref-introduction-group
|
||
|
||
Обучающие материалы
|
||
--------------------------------------
|
||
|
||
- :doc:`Введение в 3D <../tutorials/3d/introduction_to_3d>`
|
||
|
||
- `Все демоверсии 3D <https://github.com/godotengine/godot-demo-projects/tree/master/3d>`__
|
||
|
||
.. rst-class:: classref-reftable-group
|
||
|
||
Свойства
|
||
----------------
|
||
|
||
.. table::
|
||
:widths: auto
|
||
|
||
+-------------------------------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------------+
|
||
| :ref:`Basis<class_Basis>` | :ref:`basis<class_Node3D_property_basis>` | |
|
||
+-------------------------------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------------+
|
||
| :ref:`Basis<class_Basis>` | :ref:`global_basis<class_Node3D_property_global_basis>` | |
|
||
+-------------------------------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------------+
|
||
| :ref:`Vector3<class_Vector3>` | :ref:`global_position<class_Node3D_property_global_position>` | |
|
||
+-------------------------------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------------+
|
||
| :ref:`Vector3<class_Vector3>` | :ref:`global_rotation<class_Node3D_property_global_rotation>` | |
|
||
+-------------------------------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------------+
|
||
| :ref:`Vector3<class_Vector3>` | :ref:`global_rotation_degrees<class_Node3D_property_global_rotation_degrees>` | |
|
||
+-------------------------------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------------+
|
||
| :ref:`Transform3D<class_Transform3D>` | :ref:`global_transform<class_Node3D_property_global_transform>` | |
|
||
+-------------------------------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------------+
|
||
| :ref:`Vector3<class_Vector3>` | :ref:`position<class_Node3D_property_position>` | ``Vector3(0, 0, 0)`` |
|
||
+-------------------------------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------------+
|
||
| :ref:`Quaternion<class_Quaternion>` | :ref:`quaternion<class_Node3D_property_quaternion>` | |
|
||
+-------------------------------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------------+
|
||
| :ref:`Vector3<class_Vector3>` | :ref:`rotation<class_Node3D_property_rotation>` | ``Vector3(0, 0, 0)`` |
|
||
+-------------------------------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------------+
|
||
| :ref:`Vector3<class_Vector3>` | :ref:`rotation_degrees<class_Node3D_property_rotation_degrees>` | |
|
||
+-------------------------------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------------+
|
||
| :ref:`RotationEditMode<enum_Node3D_RotationEditMode>` | :ref:`rotation_edit_mode<class_Node3D_property_rotation_edit_mode>` | ``0`` |
|
||
+-------------------------------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------------+
|
||
| :ref:`EulerOrder<enum_@GlobalScope_EulerOrder>` | :ref:`rotation_order<class_Node3D_property_rotation_order>` | ``2`` |
|
||
+-------------------------------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------------+
|
||
| :ref:`Vector3<class_Vector3>` | :ref:`scale<class_Node3D_property_scale>` | ``Vector3(1, 1, 1)`` |
|
||
+-------------------------------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------------+
|
||
| :ref:`bool<class_bool>` | :ref:`top_level<class_Node3D_property_top_level>` | ``false`` |
|
||
+-------------------------------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------------+
|
||
| :ref:`Transform3D<class_Transform3D>` | :ref:`transform<class_Node3D_property_transform>` | ``Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0)`` |
|
||
+-------------------------------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------------+
|
||
| :ref:`NodePath<class_NodePath>` | :ref:`visibility_parent<class_Node3D_property_visibility_parent>` | ``NodePath("")`` |
|
||
+-------------------------------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------------+
|
||
| :ref:`bool<class_bool>` | :ref:`visible<class_Node3D_property_visible>` | ``true`` |
|
||
+-------------------------------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------------+
|
||
|
||
.. rst-class:: classref-reftable-group
|
||
|
||
Методы
|
||
------------
|
||
|
||
.. table::
|
||
:widths: auto
|
||
|
||
+--------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`add_gizmo<class_Node3D_method_add_gizmo>`\ (\ gizmo\: :ref:`Node3DGizmo<class_Node3DGizmo>`\ ) |
|
||
+--------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`clear_gizmos<class_Node3D_method_clear_gizmos>`\ (\ ) |
|
||
+--------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`clear_subgizmo_selection<class_Node3D_method_clear_subgizmo_selection>`\ (\ ) |
|
||
+--------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`force_update_transform<class_Node3D_method_force_update_transform>`\ (\ ) |
|
||
+--------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`Array<class_Array>`\[:ref:`Node3DGizmo<class_Node3DGizmo>`\] | :ref:`get_gizmos<class_Node3D_method_get_gizmos>`\ (\ ) |const| |
|
||
+--------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`Transform3D<class_Transform3D>` | :ref:`get_global_transform_interpolated<class_Node3D_method_get_global_transform_interpolated>`\ (\ ) |
|
||
+--------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`Node3D<class_Node3D>` | :ref:`get_parent_node_3d<class_Node3D_method_get_parent_node_3d>`\ (\ ) |const| |
|
||
+--------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`World3D<class_World3D>` | :ref:`get_world_3d<class_Node3D_method_get_world_3d>`\ (\ ) |const| |
|
||
+--------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`global_rotate<class_Node3D_method_global_rotate>`\ (\ axis\: :ref:`Vector3<class_Vector3>`, angle\: :ref:`float<class_float>`\ ) |
|
||
+--------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`global_scale<class_Node3D_method_global_scale>`\ (\ scale\: :ref:`Vector3<class_Vector3>`\ ) |
|
||
+--------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`global_translate<class_Node3D_method_global_translate>`\ (\ offset\: :ref:`Vector3<class_Vector3>`\ ) |
|
||
+--------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`hide<class_Node3D_method_hide>`\ (\ ) |
|
||
+--------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`bool<class_bool>` | :ref:`is_local_transform_notification_enabled<class_Node3D_method_is_local_transform_notification_enabled>`\ (\ ) |const| |
|
||
+--------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`bool<class_bool>` | :ref:`is_scale_disabled<class_Node3D_method_is_scale_disabled>`\ (\ ) |const| |
|
||
+--------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`bool<class_bool>` | :ref:`is_transform_notification_enabled<class_Node3D_method_is_transform_notification_enabled>`\ (\ ) |const| |
|
||
+--------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`bool<class_bool>` | :ref:`is_visible_in_tree<class_Node3D_method_is_visible_in_tree>`\ (\ ) |const| |
|
||
+--------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`look_at<class_Node3D_method_look_at>`\ (\ target\: :ref:`Vector3<class_Vector3>`, up\: :ref:`Vector3<class_Vector3>` = Vector3(0, 1, 0), use_model_front\: :ref:`bool<class_bool>` = false\ ) |
|
||
+--------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`look_at_from_position<class_Node3D_method_look_at_from_position>`\ (\ position\: :ref:`Vector3<class_Vector3>`, target\: :ref:`Vector3<class_Vector3>`, up\: :ref:`Vector3<class_Vector3>` = Vector3(0, 1, 0), use_model_front\: :ref:`bool<class_bool>` = false\ ) |
|
||
+--------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`orthonormalize<class_Node3D_method_orthonormalize>`\ (\ ) |
|
||
+--------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`rotate<class_Node3D_method_rotate>`\ (\ axis\: :ref:`Vector3<class_Vector3>`, angle\: :ref:`float<class_float>`\ ) |
|
||
+--------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`rotate_object_local<class_Node3D_method_rotate_object_local>`\ (\ axis\: :ref:`Vector3<class_Vector3>`, angle\: :ref:`float<class_float>`\ ) |
|
||
+--------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`rotate_x<class_Node3D_method_rotate_x>`\ (\ angle\: :ref:`float<class_float>`\ ) |
|
||
+--------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`rotate_y<class_Node3D_method_rotate_y>`\ (\ angle\: :ref:`float<class_float>`\ ) |
|
||
+--------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`rotate_z<class_Node3D_method_rotate_z>`\ (\ angle\: :ref:`float<class_float>`\ ) |
|
||
+--------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`scale_object_local<class_Node3D_method_scale_object_local>`\ (\ scale\: :ref:`Vector3<class_Vector3>`\ ) |
|
||
+--------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`set_disable_scale<class_Node3D_method_set_disable_scale>`\ (\ disable\: :ref:`bool<class_bool>`\ ) |
|
||
+--------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`set_identity<class_Node3D_method_set_identity>`\ (\ ) |
|
||
+--------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`set_ignore_transform_notification<class_Node3D_method_set_ignore_transform_notification>`\ (\ enabled\: :ref:`bool<class_bool>`\ ) |
|
||
+--------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`set_notify_local_transform<class_Node3D_method_set_notify_local_transform>`\ (\ enable\: :ref:`bool<class_bool>`\ ) |
|
||
+--------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`set_notify_transform<class_Node3D_method_set_notify_transform>`\ (\ enable\: :ref:`bool<class_bool>`\ ) |
|
||
+--------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`set_subgizmo_selection<class_Node3D_method_set_subgizmo_selection>`\ (\ gizmo\: :ref:`Node3DGizmo<class_Node3DGizmo>`, id\: :ref:`int<class_int>`, transform\: :ref:`Transform3D<class_Transform3D>`\ ) |
|
||
+--------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`show<class_Node3D_method_show>`\ (\ ) |
|
||
+--------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`Vector3<class_Vector3>` | :ref:`to_global<class_Node3D_method_to_global>`\ (\ local_point\: :ref:`Vector3<class_Vector3>`\ ) |const| |
|
||
+--------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`Vector3<class_Vector3>` | :ref:`to_local<class_Node3D_method_to_local>`\ (\ global_point\: :ref:`Vector3<class_Vector3>`\ ) |const| |
|
||
+--------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`translate<class_Node3D_method_translate>`\ (\ offset\: :ref:`Vector3<class_Vector3>`\ ) |
|
||
+--------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`translate_object_local<class_Node3D_method_translate_object_local>`\ (\ offset\: :ref:`Vector3<class_Vector3>`\ ) |
|
||
+--------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`update_gizmos<class_Node3D_method_update_gizmos>`\ (\ ) |
|
||
+--------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
|
||
.. rst-class:: classref-section-separator
|
||
|
||
----
|
||
|
||
.. rst-class:: classref-descriptions-group
|
||
|
||
Сигналы
|
||
--------------
|
||
|
||
.. _class_Node3D_signal_visibility_changed:
|
||
|
||
.. rst-class:: classref-signal
|
||
|
||
**visibility_changed**\ (\ ) :ref:`🔗<class_Node3D_signal_visibility_changed>`
|
||
|
||
Выдается при изменении видимости этого узла (см. :ref:`visible<class_Node3D_property_visible>` и :ref:`is_visible_in_tree()<class_Node3D_method_is_visible_in_tree>`).
|
||
|
||
Этот сигнал выдается *после* связанного :ref:`NOTIFICATION_VISIBILITY_CHANGED<class_Node3D_constant_NOTIFICATION_VISIBILITY_CHANGED>` уведомления.
|
||
|
||
.. rst-class:: classref-section-separator
|
||
|
||
----
|
||
|
||
.. rst-class:: classref-descriptions-group
|
||
|
||
Перечисления
|
||
------------------------
|
||
|
||
.. _enum_Node3D_RotationEditMode:
|
||
|
||
.. rst-class:: classref-enumeration
|
||
|
||
enum **RotationEditMode**: :ref:`🔗<enum_Node3D_RotationEditMode>`
|
||
|
||
.. _class_Node3D_constant_ROTATION_EDIT_MODE_EULER:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`RotationEditMode<enum_Node3D_RotationEditMode>` **ROTATION_EDIT_MODE_EULER** = ``0``
|
||
|
||
Вращение редактируется с помощью :ref:`Vector3<class_Vector3>` в `Углах Эйлера <https://en.wikipedia.org/wiki/Euler_angles>`__.
|
||
|
||
.. _class_Node3D_constant_ROTATION_EDIT_MODE_QUATERNION:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`RotationEditMode<enum_Node3D_RotationEditMode>` **ROTATION_EDIT_MODE_QUATERNION** = ``1``
|
||
|
||
Вращение редактируется с помощью :ref:`Quaternion<class_Quaternion>`.
|
||
|
||
.. _class_Node3D_constant_ROTATION_EDIT_MODE_BASIS:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`RotationEditMode<enum_Node3D_RotationEditMode>` **ROTATION_EDIT_MODE_BASIS** = ``2``
|
||
|
||
Вращение редактируется с использованием :ref:`Basis<class_Basis>`. В этом режиме оси необработанного :ref:`basis<class_Node3D_property_basis>` могут быть свободно изменены, но свойство :ref:`scale<class_Node3D_property_scale>` недоступно.
|
||
|
||
.. rst-class:: classref-section-separator
|
||
|
||
----
|
||
|
||
.. rst-class:: classref-descriptions-group
|
||
|
||
Константы
|
||
------------------
|
||
|
||
.. _class_Node3D_constant_NOTIFICATION_TRANSFORM_CHANGED:
|
||
|
||
.. rst-class:: classref-constant
|
||
|
||
**NOTIFICATION_TRANSFORM_CHANGED** = ``2000`` :ref:`🔗<class_Node3D_constant_NOTIFICATION_TRANSFORM_CHANGED>`
|
||
|
||
Уведомление получено, когда :ref:`global_transform<class_Node3D_property_global_transform>` этого узла изменяется, если :ref:`is_transform_notification_enabled()<class_Node3D_method_is_transform_notification_enabled>` имеет значение ``true``. См. также :ref:`set_notify_transform()<class_Node3D_method_set_notify_transform>`.
|
||
|
||
\ **Примечание:** Большинство 3D-узлов, таких как :ref:`VisualInstance3D<class_VisualInstance3D>` или :ref:`CollisionObject3D<class_CollisionObject3D>`, автоматически включают это для корректной работы.
|
||
|
||
\ **Примечание:** В редакторе узлы будут распространять это уведомление своим дочерним элементам, если присоединен гизмо (см. :ref:`add_gizmo()<class_Node3D_method_add_gizmo>`).
|
||
|
||
.. _class_Node3D_constant_NOTIFICATION_ENTER_WORLD:
|
||
|
||
.. rst-class:: classref-constant
|
||
|
||
**NOTIFICATION_ENTER_WORLD** = ``41`` :ref:`🔗<class_Node3D_constant_NOTIFICATION_ENTER_WORLD>`
|
||
|
||
Уведомление получено, когда этот узел зарегистрирован в новом :ref:`World3D<class_World3D>` (см. :ref:`get_world_3d()<class_Node3D_method_get_world_3d>`).
|
||
|
||
.. _class_Node3D_constant_NOTIFICATION_EXIT_WORLD:
|
||
|
||
.. rst-class:: classref-constant
|
||
|
||
**NOTIFICATION_EXIT_WORLD** = ``42`` :ref:`🔗<class_Node3D_constant_NOTIFICATION_EXIT_WORLD>`
|
||
|
||
Notification received when this node is unregistered from the current :ref:`World3D<class_World3D>` (see :ref:`get_world_3d()<class_Node3D_method_get_world_3d>`).
|
||
|
||
This notification is sent in reversed order.
|
||
|
||
.. _class_Node3D_constant_NOTIFICATION_VISIBILITY_CHANGED:
|
||
|
||
.. rst-class:: classref-constant
|
||
|
||
**NOTIFICATION_VISIBILITY_CHANGED** = ``43`` :ref:`🔗<class_Node3D_constant_NOTIFICATION_VISIBILITY_CHANGED>`
|
||
|
||
Уведомление получено, когда видимость этого узла изменяется (см. :ref:`visible<class_Node3D_property_visible>` и :ref:`is_visible_in_tree()<class_Node3D_method_is_visible_in_tree>`).
|
||
|
||
Это уведомление получено *до* связанного сигнала :ref:`visibility_changed<class_Node3D_signal_visibility_changed>`.
|
||
|
||
.. _class_Node3D_constant_NOTIFICATION_LOCAL_TRANSFORM_CHANGED:
|
||
|
||
.. rst-class:: classref-constant
|
||
|
||
**NOTIFICATION_LOCAL_TRANSFORM_CHANGED** = ``44`` :ref:`🔗<class_Node3D_constant_NOTIFICATION_LOCAL_TRANSFORM_CHANGED>`
|
||
|
||
Уведомление получено, когда изменяется :ref:`transform<class_Node3D_property_transform>` этого узла, если :ref:`is_local_transform_notification_enabled()<class_Node3D_method_is_local_transform_notification_enabled>` равно ``true``. Это не получено, когда изменяется :ref:`transform<class_Node3D_property_transform>` родительского **Node3D**. См. также :ref:`set_notify_local_transform()<class_Node3D_method_set_notify_local_transform>`.
|
||
|
||
\ **Примечание:** Некоторые 3D-узлы, такие как :ref:`CSGShape3D<class_CSGShape3D>` или :ref:`CollisionShape3D<class_CollisionShape3D>`, автоматически включают это для правильной работы.
|
||
|
||
.. rst-class:: classref-section-separator
|
||
|
||
----
|
||
|
||
.. rst-class:: classref-descriptions-group
|
||
|
||
Описания свойств
|
||
--------------------------------
|
||
|
||
.. _class_Node3D_property_basis:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`Basis<class_Basis>` **basis** :ref:`🔗<class_Node3D_property_basis>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_basis**\ (\ value\: :ref:`Basis<class_Basis>`\ )
|
||
- :ref:`Basis<class_Basis>` **get_basis**\ (\ )
|
||
|
||
Базис свойства :ref:`transform<class_Node3D_property_transform>`. Представляет поворот, масштаб и сдвиг этого узла в родительском пространстве (относительно родительского узла).
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_property_global_basis:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`Basis<class_Basis>` **global_basis** :ref:`🔗<class_Node3D_property_global_basis>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_global_basis**\ (\ value\: :ref:`Basis<class_Basis>`\ )
|
||
- :ref:`Basis<class_Basis>` **get_global_basis**\ (\ )
|
||
|
||
Базис свойства :ref:`global_transform<class_Node3D_property_global_transform>`. Представляет поворот, масштаб и сдвиг этого узла в глобальном пространстве (относительно мира).
|
||
|
||
\ **Примечание:** Если узел не находится внутри дерева, получение этого свойства завершается неудачей и возвращается :ref:`Basis.IDENTITY<class_Basis_constant_IDENTITY>`.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_property_global_position:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`Vector3<class_Vector3>` **global_position** :ref:`🔗<class_Node3D_property_global_position>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_global_position**\ (\ value\: :ref:`Vector3<class_Vector3>`\ )
|
||
- :ref:`Vector3<class_Vector3>` **get_global_position**\ (\ )
|
||
|
||
Глобальное положение (перемещение) этого узла в глобальном пространстве (относительно мира). Это эквивалентно :ref:`global_transform<class_Node3D_property_global_transform>` и :ref:`Transform3D.origin<class_Transform3D_property_origin>`.
|
||
|
||
\ **Примечание:** Если узел не находится внутри дерева, получение этого свойства завершается неудачей и возвращается :ref:`Vector3.ZERO<class_Vector3_constant_ZERO>`.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_property_global_rotation:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`Vector3<class_Vector3>` **global_rotation** :ref:`🔗<class_Node3D_property_global_rotation>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_global_rotation**\ (\ value\: :ref:`Vector3<class_Vector3>`\ )
|
||
- :ref:`Vector3<class_Vector3>` **get_global_rotation**\ (\ )
|
||
|
||
Глобальное вращение этого узла как `углы Эйлера <https://en.wikipedia.org/wiki/Euler_angles>`__, в радианах и в глобальном пространстве (относительно мира). Это значение получается из вращения :ref:`global_basis<class_Node3D_property_global_basis>`.
|
||
|
||
- :ref:`Vector3.x<class_Vector3_property_x>` — это угол вокруг глобальной оси X (pitch);
|
||
|
||
- :ref:`Vector3.y<class_Vector3_property_y>` — это угол вокруг глобальной оси Y (yaw);
|
||
|
||
- :ref:`Vector3.z<class_Vector3_property_z>` — это угол вокруг глобальной оси Z (roll).
|
||
|
||
\ **Примечание:** В отличие от :ref:`rotation<class_Node3D_property_rotation>`, это свойство всегда следует соглашению YXZ (:ref:`@GlobalScope.EULER_ORDER_YXZ<class_@GlobalScope_constant_EULER_ORDER_YXZ>`).
|
||
|
||
\ **Примечание:** Если узел не находится внутри дерева, получение этого свойства завершается ошибкой и возвращается :ref:`Vector3.ZERO<class_Vector3_constant_ZERO>`.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_property_global_rotation_degrees:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`Vector3<class_Vector3>` **global_rotation_degrees** :ref:`🔗<class_Node3D_property_global_rotation_degrees>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_global_rotation_degrees**\ (\ value\: :ref:`Vector3<class_Vector3>`\ )
|
||
- :ref:`Vector3<class_Vector3>` **get_global_rotation_degrees**\ (\ )
|
||
|
||
:ref:`global_rotation<class_Node3D_property_global_rotation>` этого узла в градусах вместо радиан.
|
||
|
||
\ **Примечание:** Если узел не находится внутри дерева, получение этого свойства завершается неудачей и возвращается :ref:`Vector3.ZERO<class_Vector3_constant_ZERO>`.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_property_global_transform:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`Transform3D<class_Transform3D>` **global_transform** :ref:`🔗<class_Node3D_property_global_transform>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_global_transform**\ (\ value\: :ref:`Transform3D<class_Transform3D>`\ )
|
||
- :ref:`Transform3D<class_Transform3D>` **get_global_transform**\ (\ )
|
||
|
||
Преобразование этого узла в глобальном пространстве (относительно мира). Содержит и представляет :ref:`global_position<class_Node3D_property_global_position>`, :ref:`global_rotation<class_Node3D_property_global_rotation>` и глобальный масштаб этого узла.
|
||
|
||
\ **Примечание:** Если узел не находится внутри дерева, получение этого свойства завершается неудачей и возвращается :ref:`Transform3D.IDENTITY<class_Transform3D_constant_IDENTITY>`.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_property_position:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`Vector3<class_Vector3>` **position** = ``Vector3(0, 0, 0)`` :ref:`🔗<class_Node3D_property_position>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_position**\ (\ value\: :ref:`Vector3<class_Vector3>`\ )
|
||
- :ref:`Vector3<class_Vector3>` **get_position**\ (\ )
|
||
|
||
Положение (перемещение) этого узла в родительском пространстве (относительно родительского узла). Это эквивалентно :ref:`transform<class_Node3D_property_transform>` :ref:`Transform3D.origin<class_Transform3D_property_origin>`.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_property_quaternion:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`Quaternion<class_Quaternion>` **quaternion** :ref:`🔗<class_Node3D_property_quaternion>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_quaternion**\ (\ value\: :ref:`Quaternion<class_Quaternion>`\ )
|
||
- :ref:`Quaternion<class_Quaternion>` **get_quaternion**\ (\ )
|
||
|
||
Вращение этого узла, представленного как :ref:`Quaternion<class_Quaternion>` в родительском пространстве (относительно родительского узла). Это значение получается из вращения :ref:`basic<class_Node3D_property_basic>`.
|
||
|
||
\ **Примечание:** Кватернионы гораздо больше подходят для трехмерной математики, но менее интуитивны. Установка этого свойства может быть полезна для интерполяции (см. :ref:`Quaternion.slerp()<class_Quaternion_method_slerp>`).
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_property_rotation:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`Vector3<class_Vector3>` **rotation** = ``Vector3(0, 0, 0)`` :ref:`🔗<class_Node3D_property_rotation>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_rotation**\ (\ value\: :ref:`Vector3<class_Vector3>`\ )
|
||
- :ref:`Vector3<class_Vector3>` **get_rotation**\ (\ )
|
||
|
||
Вращение этого узла как `углы Эйлера <https://en.wikipedia.org/wiki/Euler_angles>`__, в радианах и в родительском пространстве (относительно родительского узла). Это значение получается из вращения :ref:`basic<class_Node3D_property_basic>`.
|
||
|
||
- :ref:`Vector3.x<class_Vector3_property_x>` - это угол вокруг локальной оси X (тангаж);
|
||
|
||
- :ref:`Vector3.y<class_Vector3_property_y>` - это угол вокруг локальной оси Y (рыскание);
|
||
|
||
- :ref:`Vector3.z<class_Vector3_property_z>` - это угол вокруг локальной оси Z (крен).
|
||
|
||
Порядок каждого последовательного вращения можно изменить с помощью :ref:`rotation_order<class_Node3D_property_rotation_order>` (см. константы :ref:`EulerOrder<enum_@GlobalScope_EulerOrder>`). По умолчанию используется соглашение YXZ (:ref:`@GlobalScope.EULER_ORDER_YXZ<class_@GlobalScope_constant_EULER_ORDER_YXZ>`).
|
||
|
||
\ **Примечание:** Это свойство редактируется в градусах в инспекторе. Если вы хотите использовать градусы в скрипте, используйте :ref:`rotation_degrees<class_Node3D_property_rotation_degrees>`.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_property_rotation_degrees:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`Vector3<class_Vector3>` **rotation_degrees** :ref:`🔗<class_Node3D_property_rotation_degrees>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_rotation_degrees**\ (\ value\: :ref:`Vector3<class_Vector3>`\ )
|
||
- :ref:`Vector3<class_Vector3>` **get_rotation_degrees**\ (\ )
|
||
|
||
:ref:`rotation<class_Node3D_property_rotation>` этого узла в градусах вместо радиан.
|
||
|
||
\ **Примечание:** Это **не** свойство, доступное во вкладке инспектора.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_property_rotation_edit_mode:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`RotationEditMode<enum_Node3D_RotationEditMode>` **rotation_edit_mode** = ``0`` :ref:`🔗<class_Node3D_property_rotation_edit_mode>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_rotation_edit_mode**\ (\ value\: :ref:`RotationEditMode<enum_Node3D_RotationEditMode>`\ )
|
||
- :ref:`RotationEditMode<enum_Node3D_RotationEditMode>` **get_rotation_edit_mode**\ (\ )
|
||
|
||
Как поворот и масштаб этого узла отображаются в доке инспектора.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_property_rotation_order:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`EulerOrder<enum_@GlobalScope_EulerOrder>` **rotation_order** = ``2`` :ref:`🔗<class_Node3D_property_rotation_order>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_rotation_order**\ (\ value\: :ref:`EulerOrder<enum_@GlobalScope_EulerOrder>`\ )
|
||
- :ref:`EulerOrder<enum_@GlobalScope_EulerOrder>` **get_rotation_order**\ (\ )
|
||
|
||
Порядок вращения осей свойства :ref:`rotation<class_Node3D_property_rotation>`. Окончательная ориентация вычисляется путем вращения вокруг локальных осей X, Y и Z в этом порядке.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_property_scale:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`Vector3<class_Vector3>` **scale** = ``Vector3(1, 1, 1)`` :ref:`🔗<class_Node3D_property_scale>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_scale**\ (\ value\: :ref:`Vector3<class_Vector3>`\ )
|
||
- :ref:`Vector3<class_Vector3>` **get_scale**\ (\ )
|
||
|
||
Масштаб этого узла в локальном пространстве (относительно этого узла). Это значение получается из масштаба :ref:`basis<class_Node3D_property_basis>`.
|
||
|
||
\ **Примечание:** Поведение некоторых типов 3D-узлов не зависит от этого свойства. К ним относятся :ref:`Light3D<class_Light3D>`, :ref:`Camera3D<class_Camera3D>`, :ref:`AudioStreamPlayer3D<class_AudioStreamPlayer3D>` и другие.
|
||
|
||
\ **Предупреждение:** Компоненты масштаба должны быть либо все положительными, либо все отрицательными и **не** точно ``0.0``. В противном случае будет невозможно получить масштаб из :ref:`basis<class_Node3D_property_basis>`. Это может привести к потере предполагаемого масштаба при перезагрузке с диска и потенциально к другому нестабильному поведению.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_property_top_level:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`bool<class_bool>` **top_level** = ``false`` :ref:`🔗<class_Node3D_property_top_level>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_as_top_level**\ (\ value\: :ref:`bool<class_bool>`\ )
|
||
- :ref:`bool<class_bool>` **is_set_as_top_level**\ (\ )
|
||
|
||
Если ``true``, узел не наследует свои преобразования от своего родителя. Таким образом, преобразования узлов будут только в глобальном пространстве, что также означает, что :ref:`global_transform<class_Node3D_property_global_transform>` и :ref:`transform<class_Node3D_property_transform>` будут идентичны.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_property_transform:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`Transform3D<class_Transform3D>` **transform** = ``Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0)`` :ref:`🔗<class_Node3D_property_transform>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_transform**\ (\ value\: :ref:`Transform3D<class_Transform3D>`\ )
|
||
- :ref:`Transform3D<class_Transform3D>` **get_transform**\ (\ )
|
||
|
||
Локальное преобразование этого узла в родительском пространстве (относительно родительского узла). Содержит и представляет :ref:`position<class_Node3D_property_position>`, :ref:`rotation<class_Node3D_property_rotation>` и :ref:`scale<class_Node3D_property_scale>` этого узла.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_property_visibility_parent:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`NodePath<class_NodePath>` **visibility_parent** = ``NodePath("")`` :ref:`🔗<class_Node3D_property_visibility_parent>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_visibility_parent**\ (\ value\: :ref:`NodePath<class_NodePath>`\ )
|
||
- :ref:`NodePath<class_NodePath>` **get_visibility_parent**\ (\ )
|
||
|
||
Путь к родительскому узлу диапазона видимости для данного узла и его дочерних элементов. Родителем видимости должен быть :ref:`GeometryInstance3D<class_GeometryInstance3D>`.
|
||
|
||
Любой визуальный экземпляр будет видимым только если его родитель видимости (и все вышестоящие элементы в иерархии видимости) скрыты из-за приближения к камере ближе, чем указано в :ref:`GeometryInstance3D.visibility_range_begin<class_GeometryInstance3D_property_visibility_range_begin>`. Узлы, скрытые через свойство :ref:`visible<class_Node3D_property_visible>`, фактически исключаются из дерева зависимостей видимости, поэтому зависимые экземпляры не учитывают скрытый узел или его дочерние элементы.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_property_visible:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`bool<class_bool>` **visible** = ``true`` :ref:`🔗<class_Node3D_property_visible>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_visible**\ (\ value\: :ref:`bool<class_bool>`\ )
|
||
- :ref:`bool<class_bool>` **is_visible**\ (\ )
|
||
|
||
Если ``true``, этот узел может быть видимым. Узел отображается только тогда, когда все его предки также видны. Это означает, что :ref:`is_visible_in_tree()<class_Node3D_method_is_visible_in_tree>` должен возвращать ``true``.
|
||
|
||
.. rst-class:: classref-section-separator
|
||
|
||
----
|
||
|
||
.. rst-class:: classref-descriptions-group
|
||
|
||
Описания метода
|
||
------------------------------
|
||
|
||
.. _class_Node3D_method_add_gizmo:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **add_gizmo**\ (\ gizmo\: :ref:`Node3DGizmo<class_Node3DGizmo>`\ ) :ref:`🔗<class_Node3D_method_add_gizmo>`
|
||
|
||
Прикрепляет заданный ``gizmo`` к этому узлу. Работает только в редакторе.
|
||
|
||
\ **Примечание:** ``gizmo`` должен быть :ref:`EditorNode3DGizmo<class_EditorNode3DGizmo>`. Тип аргумента — :ref:`Node3DGizmo<class_Node3DGizmo>`, чтобы избежать зависимости от классов редактора в **Node3D**.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_method_clear_gizmos:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **clear_gizmos**\ (\ ) :ref:`🔗<class_Node3D_method_clear_gizmos>`
|
||
|
||
Очищает все объекты :ref:`EditorNode3DGizmo<class_EditorNode3DGizmo>`, прикрепленные к этому узлу. Работает только в редакторе.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_method_clear_subgizmo_selection:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **clear_subgizmo_selection**\ (\ ) :ref:`🔗<class_Node3D_method_clear_subgizmo_selection>`
|
||
|
||
Отменяет выбор всех подэлементов для этого узла. Полезно вызывать, когда выбранный подэлемент может больше не существовать после изменения свойства. Работает только в редакторе.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_method_force_update_transform:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **force_update_transform**\ (\ ) :ref:`🔗<class_Node3D_method_force_update_transform>`
|
||
|
||
Заставляет обновить :ref:`global_transform<class_Node3D_property_global_transform>` узла, отправляя :ref:`NOTIFICATION_TRANSFORM_CHANGED<class_Node3D_constant_NOTIFICATION_TRANSFORM_CHANGED>`. Не удается, если узел не находится внутри дерева.
|
||
|
||
\ **Примечание:** Из соображений производительности изменения преобразования обычно накапливаются и применяются *один раз* в конце кадра. Обновление также распространяется на дочерние элементы **Node3D**. Поэтому используйте этот метод только тогда, когда вам нужно актуальное преобразование (например, во время физических операций).
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_method_get_gizmos:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`Array<class_Array>`\[:ref:`Node3DGizmo<class_Node3DGizmo>`\] **get_gizmos**\ (\ ) |const| :ref:`🔗<class_Node3D_method_get_gizmos>`
|
||
|
||
Возвращает все объекты :ref:`EditorNode3DGizmo<class_EditorNode3DGizmo>`, прикрепленные к этому узлу. Работает только в редакторе.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_method_get_global_transform_interpolated:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`Transform3D<class_Transform3D>` **get_global_transform_interpolated**\ (\ ) :ref:`🔗<class_Node3D_method_get_global_transform_interpolated>`
|
||
|
||
При использовании интерполяции физики могут возникнуть обстоятельства, в которых вам захочется узнать интерполированное (отображаемое) преобразование узла, а не стандартное преобразование (которое может быть точным только до последнего физического тика).
|
||
|
||
Это особенно важно для кадровых операций, которые выполняются в :ref:`Node._process()<class_Node_private_method__process>`, а не в :ref:`Node._physics_process()<class_Node_private_method__physics_process>`. Примерами являются :ref:`Camera3D<class_Camera3D>`-ы, фокусирующиеся на узле, или поиск места для стрельбы лазерами в кадре, а не в такте физики.
|
||
|
||
\ **Примечание:** Эта функция создает интерполяционный насос на **Node3D** при первом вызове, который может реагировать на сбросы интерполяции физики. Если у вас возникли проблемы с "полосами" при первоначальном следовании **Node3D**, обязательно вызовите :ref:`get_global_transform_interpolated()<class_Node3D_method_get_global_transform_interpolated>` хотя бы один раз *перед* сбросом интерполяции физики **Node3D**.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_method_get_parent_node_3d:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`Node3D<class_Node3D>` **get_parent_node_3d**\ (\ ) |const| :ref:`🔗<class_Node3D_method_get_parent_node_3d>`
|
||
|
||
Возвращает родительский **Node3D**, который напрямую влияет на :ref:`global_transform<class_Node3D_property_global_transform>` этого узла. Возвращает ``null``, если родительского элемента не существует, родительский элемент не является **Node3D** или :ref:`top_level<class_Node3D_property_top_level>` равен ``true``.
|
||
|
||
\ **Примечание:** Этот метод не всегда эквивалентен :ref:`Node.get_parent()<class_Node_method_get_parent>`, который не учитывает :ref:`top_level<class_Node3D_property_top_level>`.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_method_get_world_3d:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`World3D<class_World3D>` **get_world_3d**\ (\ ) |const| :ref:`🔗<class_Node3D_method_get_world_3d>`
|
||
|
||
Возвращает :ref:`World3D<class_World3D>`, в котором зарегистрирован этот узел.
|
||
|
||
Обычно это то же самое, что и мир, используемый областью просмотра этого узла (см. :ref:`Node.get_viewport()<class_Node_method_get_viewport>` и :ref:`Viewport.find_world_3d()<class_Viewport_method_find_world_3d>`).
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_method_global_rotate:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **global_rotate**\ (\ axis\: :ref:`Vector3<class_Vector3>`, angle\: :ref:`float<class_float>`\ ) :ref:`🔗<class_Node3D_method_global_rotate>`
|
||
|
||
Поворачивает :ref:`global_basis<class_Node3D_property_global_basis>` этого узла вокруг глобальной ``axis`` на заданный ``angle``, в радианах. Эта операция вычисляется в глобальном пространстве (относительно мира) и сохраняет :ref:`global_position<class_Node3D_property_global_position>`.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_method_global_scale:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **global_scale**\ (\ scale\: :ref:`Vector3<class_Vector3>`\ ) :ref:`🔗<class_Node3D_method_global_scale>`
|
||
|
||
Масштабирует :ref:`global_basis<class_Node3D_property_global_basis>` этого узла на заданный коэффициент ``scale``. Эта операция вычисляется в глобальном пространстве (относительно мира) и сохраняет :ref:`global_position<class_Node3D_property_global_position>`.
|
||
|
||
\ **Примечание:** Этот метод не следует путать со свойством :ref:`scale<class_Node3D_property_scale>`.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_method_global_translate:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **global_translate**\ (\ offset\: :ref:`Vector3<class_Vector3>`\ ) :ref:`🔗<class_Node3D_method_global_translate>`
|
||
|
||
Добавляет заданное перемещение ``offset`` к :ref:`global_position<class_Node3D_property_global_position>` узла в глобальном пространстве (относительно мира).
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_method_hide:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **hide**\ (\ ) :ref:`🔗<class_Node3D_method_hide>`
|
||
|
||
Предотвращает отображение этого узла. Эквивалентно установке :ref:`visible<class_Node3D_property_visible>` в ``false``. Это противоположно :ref:`show()<class_Node3D_method_show>`.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_method_is_local_transform_notification_enabled:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`bool<class_bool>` **is_local_transform_notification_enabled**\ (\ ) |const| :ref:`🔗<class_Node3D_method_is_local_transform_notification_enabled>`
|
||
|
||
Возвращает ``true``, если узел получает :ref:`NOTIFICATION_LOCAL_TRANSFORM_CHANGED<class_Node3D_constant_NOTIFICATION_LOCAL_TRANSFORM_CHANGED>` всякий раз, когда изменяется :ref:`transform<class_Node3D_property_transform>`. Это включается с помощью :ref:`set_notify_local_transform()<class_Node3D_method_set_notify_local_transform>`.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_method_is_scale_disabled:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`bool<class_bool>` **is_scale_disabled**\ (\ ) |const| :ref:`🔗<class_Node3D_method_is_scale_disabled>`
|
||
|
||
Возвращает ``true``, если :ref:`global_transform<class_Node3D_property_global_transform>` этого узла автоматически ортонормализован. Это приводит к тому, что этот узел не выглядит искаженным, как если бы его глобальный масштаб был установлен на :ref:`Vector3.ONE<class_Vector3_constant_ONE>` (или его отрицательный аналог). См. также :ref:`set_disable_scale()<class_Node3D_method_set_disable_scale>` и :ref:`orthonormalize()<class_Node3D_method_orthonormalize>`.
|
||
|
||
\ **Примечание:** :ref:`transform<class_Node3D_property_transform>` не затрагивается этой настройкой.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_method_is_transform_notification_enabled:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`bool<class_bool>` **is_transform_notification_enabled**\ (\ ) |const| :ref:`🔗<class_Node3D_method_is_transform_notification_enabled>`
|
||
|
||
Возвращает ``true``, если узел получает :ref:`NOTIFICATION_TRANSFORM_CHANGED<class_Node3D_constant_NOTIFICATION_TRANSFORM_CHANGED>` всякий раз, когда изменяется :ref:`global_transform<class_Node3D_property_global_transform>`. Это включается с помощью :ref:`set_notify_transform()<class_Node3D_method_set_notify_transform>`.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_method_is_visible_in_tree:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`bool<class_bool>` **is_visible_in_tree**\ (\ ) |const| :ref:`🔗<class_Node3D_method_is_visible_in_tree>`
|
||
|
||
Возвращает ``true``, если этот узел находится внутри дерева сцены и свойство :ref:`visible<class_Node3D_property_visible>` равно ``true`` для этого узла и всех его предков **Node3D** *в последовательности*. Предок любого другого типа (например, :ref:`Node<class_Node>` или :ref:`Node2D<class_Node2D>`) нарушает последовательность. См. также :ref:`Node.get_parent()<class_Node_method_get_parent>`.
|
||
|
||
\ **Примечание:** Этот метод не может учитывать :ref:`VisualInstance3D.layers<class_VisualInstance3D_property_layers>`, поэтому даже если этот метод возвращает ``true``, узел может не быть отрисован.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_method_look_at:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **look_at**\ (\ target\: :ref:`Vector3<class_Vector3>`, up\: :ref:`Vector3<class_Vector3>` = Vector3(0, 1, 0), use_model_front\: :ref:`bool<class_bool>` = false\ ) :ref:`🔗<class_Node3D_method_look_at>`
|
||
|
||
Поворачивает узел так, чтобы локальная прямая ось (-Z, :ref:`Vector3.FORWARD<class_Vector3_constant_FORWARD>`) указывала на позицию ``target``. Эта операция вычисляется в глобальном пространстве (относительно мира).
|
||
|
||
Локальная ось вверх (+Y) указывает как можно ближе к вектору ``up``, оставаясь перпендикулярной локальной прямой оси. Результирующее преобразование ортогонально, и масштаб сохраняется. Неравномерное масштабирование может работать некорректно.
|
||
|
||
Позиция ``target`` не может совпадать с позицией узла, вектор ``up`` не может быть :ref:`Vector3.ZERO<class_Vector3_constant_ZERO>`. Кроме того, направление от позиции узла к позиции ``target`` не может быть параллельным вектору ``up``, чтобы избежать непреднамеренного вращения вокруг локальной оси Z.
|
||
|
||
Если ``use_model_front`` равно ``true``, ось +Z (фронт актива) рассматривается как прямая (подразумевается, что +X слева) и указывает на позицию ``target``. По умолчанию ось -Z (камера вперед) рассматривается как передняя (подразумевается, что +X справа).
|
||
|
||
\ **Примечание:** Этот метод не работает, если узел не находится в дереве сцены. При необходимости используйте вместо этого :ref:`look_at_from_position()<class_Node3D_method_look_at_from_position>`.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_method_look_at_from_position:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **look_at_from_position**\ (\ position\: :ref:`Vector3<class_Vector3>`, target\: :ref:`Vector3<class_Vector3>`, up\: :ref:`Vector3<class_Vector3>` = Vector3(0, 1, 0), use_model_front\: :ref:`bool<class_bool>` = false\ ) :ref:`🔗<class_Node3D_method_look_at_from_position>`
|
||
|
||
Перемещает узел в указанное ``position``, затем поворачивает узел так, чтобы он указывал на позицию ``target``, аналогично :ref:`look_at()<class_Node3D_method_look_at>`. Эта операция вычисляется в глобальном пространстве (относительно мира).
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_method_orthonormalize:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **orthonormalize**\ (\ ) :ref:`🔗<class_Node3D_method_orthonormalize>`
|
||
|
||
Ортонормализует :ref:`basis<class_Node3D_property_basis>` этого узла. Этот метод устанавливает :ref:`scale<class_Node3D_property_scale>` этого узла на :ref:`Vector3.ONE<class_Vector3_constant_ONE>` (или ее отрицательный эквивалент), но сохраняет :ref:`position<class_Node3D_property_position>` и :ref:`rotation<class_Node3D_property_rotation>`. См. также :ref:`Transform3D.orthonormalized()<class_Transform3D_method_orthonormalized>`.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_method_rotate:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **rotate**\ (\ axis\: :ref:`Vector3<class_Vector3>`, angle\: :ref:`float<class_float>`\ ) :ref:`🔗<class_Node3D_method_rotate>`
|
||
|
||
Поворачивает :ref:`basis<class_Node3D_property_basis>` этого узла вокруг ``axis`` на заданный ``angle`` в радианах. Эта операция вычисляется в родительском пространстве (относительно родителя) и сохраняет :ref:`position<class_Node3D_property_position>`.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_method_rotate_object_local:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **rotate_object_local**\ (\ axis\: :ref:`Vector3<class_Vector3>`, angle\: :ref:`float<class_float>`\ ) :ref:`🔗<class_Node3D_method_rotate_object_local>`
|
||
|
||
Поворачивает :ref:`basis<class_Node3D_property_basis>` этого узла вокруг ``axis`` на заданный ``angle`` в радианах. Эта операция вычисляется в локальном пространстве (относительно этого узла) и сохраняет :ref:`position<class_Node3D_property_position>`.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_method_rotate_x:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **rotate_x**\ (\ angle\: :ref:`float<class_float>`\ ) :ref:`🔗<class_Node3D_method_rotate_x>`
|
||
|
||
Поворачивает :ref:`basis<class_Node3D_property_basis>` этого узла вокруг оси X на заданный ``angle`` в радианах. Эта операция вычисляется в родительском пространстве (относительно родителя) и сохраняет :ref:`position<class_Node3D_property_position>`.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_method_rotate_y:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **rotate_y**\ (\ angle\: :ref:`float<class_float>`\ ) :ref:`🔗<class_Node3D_method_rotate_y>`
|
||
|
||
Поворачивает :ref:`basis<class_Node3D_property_basis>` этого узла вокруг оси Y на заданный ``angle`` в радианах. Эта операция вычисляется в родительском пространстве (относительно родителя) и сохраняет :ref:`position<class_Node3D_property_position>`.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_method_rotate_z:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **rotate_z**\ (\ angle\: :ref:`float<class_float>`\ ) :ref:`🔗<class_Node3D_method_rotate_z>`
|
||
|
||
Поворачивает :ref:`basis<class_Node3D_property_basis>` этого узла вокруг оси Z на заданный ``angle`` в радианах. Эта операция вычисляется в родительском пространстве (относительно родителя) и сохраняет :ref:`position<class_Node3D_property_position>`.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_method_scale_object_local:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **scale_object_local**\ (\ scale\: :ref:`Vector3<class_Vector3>`\ ) :ref:`🔗<class_Node3D_method_scale_object_local>`
|
||
|
||
Масштабирует :ref:`basis<class_Node3D_property_basis>` этого узла на заданный фактор ``scale``. Эта операция вычисляется в локальном пространстве (относительно этого узла) и сохраняет :ref:`position<class_Node3D_property_position>`.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_method_set_disable_scale:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **set_disable_scale**\ (\ disable\: :ref:`bool<class_bool>`\ ) :ref:`🔗<class_Node3D_method_set_disable_scale>`
|
||
|
||
Если ``true``, :ref:`global_transform<class_Node3D_property_global_transform>` этого узла автоматически ортонормализуется. Это приводит к тому, что этот узел не выглядит искаженным, как если бы его глобальный масштаб был установлен на :ref:`Vector3.ONE<class_Vector3_constant_ONE>` (или его отрицательный аналог). См. также :ref:`is_scale_disabled()<class_Node3D_method_is_scale_disabled>` и :ref:`orthonormalize()<class_Node3D_method_orthonormalize>`.
|
||
|
||
\ **Примечание:** :ref:`transform<class_Node3D_property_transform>` не затрагивается этой настройкой.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_method_set_identity:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **set_identity**\ (\ ) :ref:`🔗<class_Node3D_method_set_identity>`
|
||
|
||
Устанавливает :ref:`transform<class_Node3D_property_transform>` этого узла в :ref:`Transform3D.IDENTITY<class_Transform3D_constant_IDENTITY>`, что сбрасывает все преобразования в родительском пространстве (:ref:`position<class_Node3D_property_position>`, :ref:`rotation<class_Node3D_property_rotation>` и :ref:`scale<class_Node3D_property_scale>`).
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_method_set_ignore_transform_notification:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **set_ignore_transform_notification**\ (\ enabled\: :ref:`bool<class_bool>`\ ) :ref:`🔗<class_Node3D_method_set_ignore_transform_notification>`
|
||
|
||
Если ``true``, узел не получит :ref:`NOTIFICATION_TRANSFORM_CHANGED<class_Node3D_constant_NOTIFICATION_TRANSFORM_CHANGED>` или :ref:`NOTIFICATION_LOCAL_TRANSFORM_CHANGED<class_Node3D_constant_NOTIFICATION_LOCAL_TRANSFORM_CHANGED>`.
|
||
|
||
Может быть полезно вызвать этот метод при обработке этих уведомлений, чтобы предотвратить бесконечную рекурсию.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_method_set_notify_local_transform:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **set_notify_local_transform**\ (\ enable\: :ref:`bool<class_bool>`\ ) :ref:`🔗<class_Node3D_method_set_notify_local_transform>`
|
||
|
||
Если ``true``, узел будет получать :ref:`NOTIFICATION_LOCAL_TRANSFORM_CHANGED<class_Node3D_constant_NOTIFICATION_LOCAL_TRANSFORM_CHANGED>` всякий раз, когда изменяется :ref:`transform<class_Node3D_property_transform>`.
|
||
|
||
\ **Примечание:** Некоторые 3D-узлы, такие как :ref:`CSGShape3D<class_CSGShape3D>` или :ref:`CollisionShape3D<class_CollisionShape3D>`, автоматически включают это для правильной работы.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_method_set_notify_transform:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **set_notify_transform**\ (\ enable\: :ref:`bool<class_bool>`\ ) :ref:`🔗<class_Node3D_method_set_notify_transform>`
|
||
|
||
Если ``true``, узел будет получать :ref:`NOTIFICATION_TRANSFORM_CHANGED<class_Node3D_constant_NOTIFICATION_TRANSFORM_CHANGED>` всякий раз, когда изменяется :ref:`global_transform<class_Node3D_property_global_transform>`.
|
||
|
||
\ **Примечание:** Большинство 3D-узлов, таких как :ref:`VisualInstance3D<class_VisualInstance3D>` или :ref:`CollisionObject3D<class_CollisionObject3D>`, автоматически включают это для корректной работы.
|
||
|
||
\ **Примечание:** В редакторе узлы будут распространять это уведомление своим дочерним элементам, если присоединен гизмо (см. :ref:`add_gizmo()<class_Node3D_method_add_gizmo>`).
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_method_set_subgizmo_selection:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **set_subgizmo_selection**\ (\ gizmo\: :ref:`Node3DGizmo<class_Node3DGizmo>`, id\: :ref:`int<class_int>`, transform\: :ref:`Transform3D<class_Transform3D>`\ ) :ref:`🔗<class_Node3D_method_set_subgizmo_selection>`
|
||
|
||
Выбирает подэлемент ``gizmo`` с заданным ``id`` и задает его преобразование. Работает только в редакторе.
|
||
|
||
\ **Примечание:** Объект gizmo обычно является экземпляром :ref:`EditorNode3DGizmo<class_EditorNode3DGizmo>`, но тип аргумента сохраняется общим, чтобы избежать создания зависимости от классов редактора в **Node3D**.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_method_show:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **show**\ (\ ) :ref:`🔗<class_Node3D_method_show>`
|
||
|
||
Позволяет отображать этот узел. Эквивалентно установке :ref:`visible<class_Node3D_property_visible>` в ``true``. Это противоположно :ref:`hide()<class_Node3D_method_hide>`.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_method_to_global:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`Vector3<class_Vector3>` **to_global**\ (\ local_point\: :ref:`Vector3<class_Vector3>`\ ) |const| :ref:`🔗<class_Node3D_method_to_global>`
|
||
|
||
Возвращает ``local_point``, преобразованный из локального пространства этого узла в глобальное пространство. Это противоположно :ref:`to_local()<class_Node3D_method_to_local>`.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_method_to_local:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`Vector3<class_Vector3>` **to_local**\ (\ global_point\: :ref:`Vector3<class_Vector3>`\ ) |const| :ref:`🔗<class_Node3D_method_to_local>`
|
||
|
||
Возвращает ``global_point``, преобразованный из глобального пространства в локальное пространство этого узла. Это противоположно :ref:`to_global()<class_Node3D_method_to_global>`.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_method_translate:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **translate**\ (\ offset\: :ref:`Vector3<class_Vector3>`\ ) :ref:`🔗<class_Node3D_method_translate>`
|
||
|
||
Добавляет заданное смещение ``offset`` к позиции узла в локальном пространстве (относительно этого узла).
|
||
|
||
\ **Примечание:** Вместо этого предпочтительнее использовать :ref:`translate_object_local()<class_Node3D_method_translate_object_local>`, так как этот метод может быть изменен в будущем выпуске.
|
||
|
||
\ **Примечание:** Несмотря на соглашение об именовании, эта операция **не** вычисляется в родительском пространстве по соображениям совместимости. Чтобы перевести в родительском пространстве, добавьте ``offset`` к :ref:`position<class_Node3D_property_position>` (``node_3d.position += offset``).
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_method_translate_object_local:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **translate_object_local**\ (\ offset\: :ref:`Vector3<class_Vector3>`\ ) :ref:`🔗<class_Node3D_method_translate_object_local>`
|
||
|
||
Добавляет заданное смещение ``offset`` к положению узла в локальном пространстве (относительно этого узла).
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Node3D_method_update_gizmos:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **update_gizmos**\ (\ ) :ref:`🔗<class_Node3D_method_update_gizmos>`
|
||
|
||
Обновляет все объекты :ref:`EditorNode3DGizmo<class_EditorNode3DGizmo>`, прикрепленные к этому узлу. Работает только в редакторе.
|
||
|
||
.. |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 (Нет возвращаемого значения.)`
|