PhysicsRayQueryParameters3D

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

Надає параметри для PhysicsDirectSpaceState3D.intersect_ray().

Опис

При зміні різних властивостей цього об'єкта, таких як положення про променя, можна налаштувати параметри для PhysicsDirectSpaceState3D.intersect_ray().

Властивості

bool

collide_with_areas

false

bool

collide_with_bodies

true

int

collision_mask

4294967295

Array[RID]

exclude

[]

Vector3

from

Vector3(0, 0, 0)

bool

hit_back_faces

true

bool

hit_from_inside

false

Vector3

to

Vector3(0, 0, 0)

Методи

PhysicsRayQueryParameters3D

create(from: Vector3, to: Vector3, collision_mask: int = 4294967295, exclude: Array[RID] = []) static


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

bool collide_with_areas = false 🔗

  • void set_collide_with_areas(value: bool)

  • bool is_collide_with_areas_enabled()

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


bool collide_with_bodies = true 🔗

  • void set_collide_with_bodies(value: bool)

  • bool is_collide_with_bodies_enabled()

Якщо true, запит буде прийняти ФізикаBody3D врахування.


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.

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


Vector3 from = Vector3(0, 0, 0) 🔗

Початкова точка променя, яка передається у глобальних координатах.


bool hit_back_faces = true 🔗

  • void set_hit_back_faces(value: bool)

  • bool is_hit_back_faces_enabled()

Якщо true, запит буде повернутися назад обличчям з конденсованими формами полігону з задньою особою, ввімкненими або висотними формами.


bool hit_from_inside = false 🔗

  • void set_hit_from_inside(value: bool)

  • bool is_hit_from_inside_enabled()

Якщо true, запит буде виявляти удар при запуску внутрішніх форм. У цьому випадку норма зіткнення буде Vector3(0, 0, 0). Чи не впливає конденсатна форма або форма карти висоти.


Vector3 to = Vector3(0, 0, 0) 🔗

З точки зору закінчення променя, що передається у глобальних координатах.


Описи методів

PhysicsRayQueryParameters3D create(from: Vector3, to: Vector3, collision_mask: int = 4294967295, exclude: Array[RID] = []) static 🔗

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

var query = PhysicsRayQueryParameters3D.create(position, position + Vector3(0, -10, 0))
var collision = get_world_3d().direct_space_state.intersect_ray(query)