PhysicsDirectSpaceState2D
Успадковує: Object
Успадковано від: PhysicsDirectSpaceState2DExtension
Забезпечує прямий доступ до фізичного простору в PhysicsServer2D.
Опис
Надає прямий доступ до фізичного простору в PhysicsServer2D. Він використовується переважно для виконання запитів до об'єктів та областей, що знаходяться в заданому просторі.
Примітка: Цей клас не призначений для безпосереднього створення екземплярів. Використовуйте World2D.direct_space_state, щоб отримати стан фізичного двовимірного простору світу.
Посібники
Методи
cast_motion(parameters: PhysicsShapeQueryParameters2D) |
|
collide_shape(parameters: PhysicsShapeQueryParameters2D, max_results: int = 32) |
|
get_rest_info(parameters: PhysicsShapeQueryParameters2D) |
|
intersect_point(parameters: PhysicsPointQueryParameters2D, max_results: int = 32) |
|
intersect_ray(parameters: PhysicsRayQueryParameters2D) |
|
intersect_shape(parameters: PhysicsShapeQueryParameters2D, max_results: int = 32) |
Описи методів
PackedFloat32Array cast_motion(parameters: PhysicsShapeQueryParameters2D) 🔗
Перевіряє, як далеко Shape2D може переміщатися без узгодження. Всі параметри для запиту, включаючи форму і рух, поставляються через об'єкт PhysicsShapeQueryParameters2D.
Повертає масив з безпечними і небезпечними пропорціями (закінчення 0 і 1) руху. Безпечна пропорція - максимальна дробова частка руху, яка може бути виконана без зіткнення. Небезпечна пропорція є мінімальною часткою відстані, яка повинна бути перенесена на зіткнення. Якщо ви не виявите результат [1.0, 1.0] буде повернено.
Примітка: Будь-який Shape2D, що форма вже співає з e.g. всередині, буде ігноруватися. Використовуйте collide_shape() для визначення Shape2D, що форма вже відповідає.
Array[Vector2] collide_shape(parameters: PhysicsShapeQueryParameters2D, max_results: int = 32) 🔗
Перевіряє перехрестя форми, надані через об'єкт PhysicsShapeQueryParameters2D. Отриманий масив містить список точок, де форма перетинає інший. Як і з intersect_shape(), кількість отриманих результатів можна обмежити час обробки.
Повернення очок - список пар контактних точок. Для кожної пари перша у формі, що пропущена в PhysicsShapeQueryParameters2D об'єкт, другий - у складеній формі з фізичного простору.
Dictionary get_rest_info(parameters: PhysicsShapeQueryParameters2D) 🔗
Перевіряє перетини фігури, заданої через об'єкт PhysicsShapeQueryParameters2D, з простором. Якщо фігура стикається з кількома фігурами, вибирається найближча. Повернений об'єкт – це словник, що містить такі поля:
collider_id: Ідентифікатор об'єкта, що стикається.
linear_velocity: Швидкість об'єкта, що стикається Vector2. Якщо об'єкт є Area2D, результатом є (0, 0).
normal: Нормаль зіткнення фігури запиту в точці перетину, спрямована від об'єкта, що стикається.
point: Точка перетину.
rid: RID об'єкта, що стикається.
shape: Індекс фігури, що стикається.
Якщо фігура нічого не перетинала, то повертається порожній словник.
Array[Dictionary] intersect_point(parameters: PhysicsPointQueryParameters2D, max_results: int = 32) 🔗
Перевірте, чи є точка всередині будь-якої твердої форми. Положення та інші параметри визначаються за допомогою PhysicsPointQueryParameters2D. Форми точки всередині подаються в масиві, що містить словники з наступними полями:
collider: Об'єкт зв'язку.
collider_id: Код об'єкта.
rid: Інтерсекційний об'єкт RID.
`` форма``: Індекс форми згортання форми.
Кількість перехрестя може бути обмежена параметром max_results, щоб скоротити час обробки.
Примітка: ConcavePolygonShape2D і CollisionPolygon2D в Сегменти режим побудови не твердих форм. Тому вони не будуть виявлені.
Dictionary intersect_ray(parameters: PhysicsRayQueryParameters2D) 🔗
Включає промінь в заданому просторі. Рентгенівська позиція та інші параметри визначаються за допомогою PhysicsRayQueryParameters2D. Повернутий об'єкт є словником з наступними полями:
collider: Об'єкт зв'язку.
collider_id: Код об'єкта.
нормальний: Нормальна поверхня об'єкта на місці перетину, або Vector2(0, 0), якщо промен починається всередині форми і PhysicsShapeQueryParameters2D.hit_from_inside true.
позиція: Точка перетину.
rid: Інтерсекційний об'єкт RID.
`` форма``: Індекс форми згортання форми.
Якщо промен не перев'язував нічого, то повернувся порожній словник.
Array[Dictionary] intersect_shape(parameters: PhysicsShapeQueryParameters2D, max_results: int = 32) 🔗
Перевіряє перехрестя форми, надані через об'єкт PhysicsShapeQueryParameters2D. У масиві, що містить словники з наступними полями:
collider: Об'єкт зв'язку.
collider_id: Код об'єкта.
rid: Інтерсекційний об'єкт RID.
`` форма ``: Індекс форми згортання форми.
Кількість перехрестя може бути обмежена параметром max_results, щоб скоротити час обробки.