PhysicsShapeQueryParameters3D
Наследует: RefCounted < Object
Предоставляет параметры для методов PhysicsDirectSpaceState3D.
Описание
Изменяя различные свойства этого объекта, такие как форма, вы можете настраивать параметры методов PhysicsDirectSpaceState3D.
Свойства
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
Описания свойств
bool collide_with_areas = false 🔗
Если true, запрос будет учитывать Area3D.
bool collide_with_bodies = true 🔗
Если true, запрос будет учитывать PhysicsBody3D.
int collision_mask = 4294967295 🔗
Слои физики, которые запрос обнаружит (как битовую маску). По умолчанию обнаруживаются все слои столкновений. Для получения дополнительной информации см. Слои и маски столкновений в документации.
Список RID объектов, которые будут исключены из столкновений. Используйте CollisionObject3D.get_rid(), чтобы получить RID, связанный с узлом, производным от CollisionObject3D.
Примечание: Возвращаемый массив копируется, и любые изменения в нем не обновят исходное значение свойства. Чтобы обновить значение, вам нужно изменить возвращаемый массив, а затем снова назначить его свойству.
Граница столкновения для формы.
Vector3 motion = Vector3(0, 0, 0) 🔗
Движение запрашиваемой формы.
Shape3D, который будет использоваться для запросов на столкновение/пересечение. Он хранит фактическую ссылку, которая позволяет избежать освобождения формы при использовании для запросов, поэтому всегда предпочитайте использовать его вместо shape_rid.
Идентификатор RID запрашиваемой фигуры, который будет использоваться для запросов на столкновения/пересечения. Используйте его вместо shape, если хотите оптимизировать производительность с помощью API серверов:
var shape_rid = PhysicsServer3D.sphere_shape_create()
var radius = 2.0
PhysicsServer3D.shape_set_data(shape_rid, radius)
var params = PhysicsShapeQueryParameters3D.new()
params.shape_rid = shape_rid
# Выполняйте физические запросы здесь...
# После завершения выполнения физических запросов освободите форму.
PhysicsServer3D.free_rid(shape_rid)
RID shapeRid = PhysicsServer3D.SphereShapeCreate();
float radius = 2.0f;
PhysicsServer3D.ShapeSetData(shapeRid, radius);
var params = new PhysicsShapeQueryParameters3D();
params.ShapeRid = shapeRid;
// Выполняйте физические запросы здесь...
// После завершения выполнения физических запросов освободите форму.
PhysicsServer3D.FreeRid(shapeRid);
Transform3D transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) 🔗
void set_transform(value: Transform3D)
Transform3D get_transform()
Матрица преобразования запрашиваемой формы.