PhysicsShapeQueryParameters2D

Успадковує: RefCounted < Object

Надає параметри для методів PhysicsDirectSpaceState2D.

Опис

Змінюючи різні властивості цього об'єкта, такі як форма, можна налаштувати параметри для методів PhysicsDirectSpaceState2D.

Властивості

bool

collide_with_areas

false

bool

collide_with_bodies

true

int

collision_mask

4294967295

Array[RID]

exclude

[]

float

margin

0.0

Vector2

motion

Vector2(0, 0)

Resource

shape

RID

shape_rid

RID()

Transform2D

transform

Transform2D(1, 0, 0, 1, 0, 0)


Описи властивостей

bool collide_with_areas = false 🔗

  • void set_collide_with_areas(value: bool)

  • bool is_collide_with_areas_enabled()

Якщо true, запит буде враховуватися Area2D.


bool collide_with_bodies = true 🔗

  • void set_collide_with_bodies(value: bool)

  • bool is_collide_with_bodies_enabled()

Якщо true, запит враховуватиме PhysicsBody2D.


int collision_mask = 4294967295 🔗

  • void set_collision_mask(value: int)

  • int get_collision_mask()

Фізика шарів запиту виявить (як трохимаска). За замовчуванням виявляються всі шари зіткнення. Див. Коллізійні шари та маски в документації для отримання додаткової інформації.


Array[RID] exclude = [] 🔗

Список об'єктів RID, які будуть виключені з зіткнення. Використовуйте CollisionObject2D.get_rid(), щоб отримати RID, пов'язаний з CollisionObject2D-derived node.

Примітка: Повернутий масив копіюється і будь-які зміни до нього не будуть оновлювати оригінальну вартість майна. Для оновлення значення потрібно змінити повернутий масив, а потім знову призначити його в власність.


float margin = 0.0 🔗

  • void set_margin(value: float)

  • float get_margin()

Зіткнення поля для форми.


Vector2 motion = Vector2(0, 0) 🔗

Рух форми, що передається.


Resource shape 🔗

Shape2D, який буде використовуватися для зіткнень/інтерсекційних запитів. Це зберігає актуальну довідку, яка уникає форми, щоб бути вилученою, коли використовується для запитів, тому завжди віддає перевагу використанню цього над shape_rid.


RID shape_rid = RID() 🔗

  • void set_shape_rid(value: RID)

  • RID get_shape_rid()

RID запитуваної фігури, яка використовуватиметься для запитів зіткнення/перетину. Використовуйте це замість shape, якщо ви хочете оптимізувати продуктивність за допомогою Servers API:

var shape_rid = PhysicsServer2D.circle_shape_create()
де радіус = 64
PhysicsServer2D.shape_set_data(shape_rid, radius)

var params = PhysicsShapeQueryParameters2D.new()
params.shape_rid = shape_rid

# Виконуйте тут фізичні запити...

# Відпустіть фігуру, коли закінчите з фізичними запитами.
PhysicsServer2D.free_rid(shape_rid)

Transform2D transform = Transform2D(1, 0, 0, 1, 0, 0) 🔗

Матриця трансформованої форми.