Node2D
Успадковує: CanvasItem < Node < Object
Успадковано від: AnimatedSprite2D, AudioListener2D, AudioStreamPlayer2D, BackBufferCopy, Bone2D, Camera2D, CanvasGroup, CanvasModulate, CollisionObject2D, CollisionPolygon2D, CollisionShape2D, CPUParticles2D, GPUParticles2D, Joint2D, Light2D, LightOccluder2D, Line2D, Marker2D, MeshInstance2D, MultiMeshInstance2D, NavigationLink2D, NavigationObstacle2D, NavigationRegion2D, Parallax2D, ParallaxLayer, Path2D, PathFollow2D, Polygon2D, RayCast2D, RemoteTransform2D, ShapeCast2D, Skeleton2D, Sprite2D, TileMap, TileMapLayer, TouchScreenButton, VisibleOnScreenNotifier2D
Двовимірний ігровий об’єкт, успадкований усіма двовимірними вузлами. Має положення, поворот, масштаб і нахил.
Опис
Двовимірний ігровий об’єкт із трансформацією (положення, обертання та масштаб). Усі 2D-вузли, включаючи фізичні об’єкти та спрайти, успадковуються від Node2D. Використовуйте Node2D як батьківський вузол для переміщення, масштабування та повороту дочірніх елементів у 2D-проекті. Також дає змогу керувати порядком візуалізації вузла.
Примітка: Оскільки Node2D і Control успадковують CanvasItem, вони мають спільні концепції з класу, наприклад властивості CanvasItem.z_index і CanvasItem.visible.
Посібники
Властивості
|
||
|
||
|
||
|
||
Методи
void |
apply_scale(ratio: Vector2) |
get_angle_to(point: Vector2) const |
|
get_relative_transform_to_parent(parent: Node) const |
|
void |
global_translate(offset: Vector2) |
void |
|
void |
move_local_x(delta: float, scaled: bool = false) |
void |
move_local_y(delta: float, scaled: bool = false) |
void |
|
void |
Описи властивостей
Глобальна позиція. Див. також position.
Глобальне обертання в радіанах. Див. також rotation.
float global_rotation_degrees 🔗
Допоміжна властивість для доступу до global_rotation у градусах замість радіан. Дивіться також rotation_degrees.
Глобальний масштаб. Див. також scale.
Глобальний перекіс у радіанах. Дивіться також skew.
Transform2D global_transform 🔗
void set_global_transform(value: Transform2D)
Transform2D get_global_transform()
Глобальне Transform2D. Див. також transform.
Vector2 position = Vector2(0, 0) 🔗
Позиція відносно батьківського вузла. Див. також global_position.
Поворот у радіанах відносно батьківського вузла. Дивіться також global_rotation.
Примітка: Ця властивість редагується в інспекторі в градусах. Якщо ви хочете використовувати градуси в сценарії, використовуйте rotation_degrees.
Допоміжна властивість для доступу до rotation у градусах замість радіанів. Див. також global_rotation_degrees.
Vector2 scale = Vector2(1, 1) 🔗
Масштаб вузла відносно батьківського вузла. Немасштабоване значення: (1, 1). Дивіться також global_scale.
**Примітка: ** Негативні шкали X у 2D не можна розкласти з матриці трансформації. Завдяки способу представлення масштабу за допомогою матриць трансформації в Godot, негативні масштаби на осі X будуть змінені на негативні масштаби на осі Y і поворот на 180 градусів під час розкладання.
Якщо встановлено ненульове значення, нахиляє вузол в тому чи іншому напрямку. Це можна використовувати для псевдо-3D-ефектів. Дивіться також global_skew.
**Примітка: ** Нахил виконується лише на осі X і між обертанням і масштабуванням.
Примітка: Ця властивість редагується в інспекторі в градусах. Якщо ви хочете використовувати градуси в скрипті, використовуйте skew = deg_to_rad(value_in_degrees).
Transform2D transform 🔗
void set_transform(value: Transform2D)
Transform2D get_transform()
Transform2D вузла відносно батьківського вузла. Дивіться також global_transform.
Описи методів
void apply_scale(ratio: Vector2) 🔗
Множить поточний масштаб на вектор ratio.
float get_angle_to(point: Vector2) const 🔗
Повертає кут між вузлом та point у радіанах.
Transform2D get_relative_transform_to_parent(parent: Node) const 🔗
Повертаємо Transform2D відносно цього материнського вузла.
void global_translate(offset: Vector2) 🔗
Додає вектор offset до глобальної позиції вузла.
void look_at(point: Vector2) 🔗
Повертає вузол так, щоб його локальна вісь +X була спрямована до точки point, яка, як очікується, використовуватиме глобальні координати.
point не повинен збігатися з позицією вузла, інакше вузол завжди дивиться праворуч.
void move_local_x(delta: float, scaled: bool = false) 🔗
Застосовує локальне зміщення по осі X вузла на величину, вказану в delta. Якщо scaled має значення false, нормалізує рух, щоб він відбувався незалежно від scale вузла.
void move_local_y(delta: float, scaled: bool = false) 🔗
Застосовує локальне зміщення по осі Y вузла на величину, вказану в delta. Якщо scaled має значення false, нормалізує рух, щоб він відбувався незалежно від scale вузла.
Застосовується обертання в вузол, в радіях, починаючи від її поточного обертання.
Vector2 to_global(local_point: Vector2) const 🔗
Забезпечує місцеву позицію у глобальному координаційному просторі. Введення очікувано буде локальним відносно Node2D. Наприклад: Застосувати цей метод на позиції дочірньих вузлів правильно перетворювати свої позиції в глобальну координацію простору, але застосувати його до власної позиції вершини дасть некоректний результат, оскільки він буде включати в себе власне перетворення вершини в її глобальну позицію.
Vector2 to_local(global_point: Vector2) const 🔗
Перетворює надану глобальну позицію у місцевому координаційному просторі. Вихід буде локальним відносно Node2D його називають. Наприклад: Для визначення позицій дочірніх вузлів, але не підходить для визначення власної позиції щодо її батьків.
void translate(offset: Vector2) 🔗
Зміщує вузол на заданий offset у локальних координатах.