Attention: Here be dragons
This is the latest
(unstable) version of this documentation, which may document features
not available in or compatible with released stable versions of Godot.
Checking the stable version of the documentation...
PhysicsTestMotionParameters3D¶
继承: RefCounted < Object
为 PhysicsServer3D.body_test_motion 提供参数。
描述¶
更改该对象的运动等属性可以配置 PhysicsServer3D.body_test_motion 的参数。
属性¶
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
属性说明¶
bool collide_separation_ray = false
如果设置为 true
,则 PhysicsServer3D.SHAPE_SEPARATION_RAY 类型的形状用于检测碰撞,并可以停止运动。吸附到地面时很有用。
如果设置为 false
,则 PhysicsServer3D.SHAPE_SEPARATION_RAY 类型的形状仅在与其他物体重叠时用于分离。这是分离射线形状的主要用途。
RID[] exclude_bodies = []
可选的物体 RID 数组,会排除与这些物体的碰撞。请使用 CollisionObject3D.get_rid 来获取与派生自 CollisionObject3D 的节点关联的 RID。
int[] exclude_objects = []
可选的对象唯一实例 ID 数组,会排除与这些实例的碰撞。见 Object.get_instance_id。
Transform3D from = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0)
void set_from ( Transform3D value )
Transform3D get_from ( )
运动开始处的全局空间变换。通常设为 Node3D.global_transform,使用当前物体的变换。
float margin = 0.001
增加碰撞检测中涉及的形状的大小。
int max_collisions = 1
返回碰撞的最大数量,在 1
和 32
之间。始终返回检测到的最深碰撞。
Vector3 motion = Vector3(0, 0, 0)
运动向量,定义要测试的运动的长度和方向。
bool recovery_as_collision = false
如果设置为 true
,则把恢复阶段的穿透汇报为碰撞;使用场景包括 CharacterBody3D 提升地面吸附阶段的地面检测。
如果设置为 false
,则只会汇报移动造成的碰撞,一般符合预期行为。