PhysicsDirectBodyState

继承: Object

继承人: BulletPhysicsDirectBodyState

类别: 核心

简要说明

直接访问物理体的对象 PhysicsServer .

方法

无效

add_central_force ( Vector3 force )

无效

add_force ( Vector3 force, Vector3 position )

无效

add_torque ( Vector3 torque )

无效

apply_central_impulse ( Vector3 j )

无效

apply_impulse ( Vector3 position, Vector3 j )

无效

apply_torque_impulse ( Vector3 j )

RID

get_contact_collider ( int contact_idx ) const

int

get_contact_collider_id ( int contact_idx ) const

Object

get_contact_collider_object ( int contact_idx ) const

Vector3

get_contact_collider_position ( int contact_idx ) const

int

get_contact_collider_shape ( int contact_idx ) const

Vector3

get_contact_collider_velocity_at_position ( int contact_idx ) const

int

get_contact_count ( ) const

float

get_contact_impulse ( int contact_idx ) const

Vector3

get_contact_local_normal ( int contact_idx ) const

Vector3

get_contact_local_position ( int contact_idx ) const

int

get_contact_local_shape ( int contact_idx ) const

PhysicsDirectSpaceState

get_space_state ( )

无效

integrate_forces ( )

描述

提供直接访问 PhysicsServer 允许对物理属性进行安全更改。此对象通过刚性/字符体的直接状态回调传递,用于更改该体的直接状态。见 RigidBody._integrate_forces .

属性描述

设定器

设置角速度(值)

吸气剂

得到角速度

物体的旋转速度。

吸气剂

获得质量中心

吸气剂

得到逆惯性

物体惯性的倒数。

吸气剂

得到质量倒数

物体质量的倒数。

设定器

设置线性速度(值)

吸气剂

得到线性速度

物体的线速度。

  • Basis principal_inertia_axes

吸气剂

获取主惯性轴

设定器

设置睡眠状态(值)

吸气剂

你在睡觉吗?

如果 true ,此身体当前正在睡眠(未激活)。

吸气剂

获取步骤()

用于模拟的时间步长(delta)。

  • float total_angular_damp

吸气剂

得到总角度阻尼

物体停止旋转的速率,如果没有其他力移动它。

吸气剂

得到总重力

当前应用于该物体的总重力矢量。

  • float total_linear_damp

吸气剂

得到总线性阻尼

物体停止运动的速率,如果没有任何其他力移动它。

设定器

设置转换(值)

吸气剂

获取转换()

身体的变换矩阵。

方法说明

  • void add_central_force ( Vector3 force )

在不影响旋转的情况下添加恒定的方向力。

这相当于 add_force(force, Vector3(0,0,0)) .

向主体添加定位力。力和与物体原点的偏移都在全局坐标中。

  • void add_torque ( Vector3 torque )

在不影响位置的情况下添加恒定的旋转力。

  • void apply_central_impulse ( Vector3 j )

在不影响旋转的情况下应用单向脉冲。

这相当于 apply_impulse(Vector3(0, 0, 0), impulse) .

对身体施加定位脉冲。冲动与时间无关!施加一个脉冲,每帧都会产生一个与帧速率相关的力。因此,只能在模拟一次性影响时使用。位置使用全局坐标系的旋转,但以对象的原点为中心。

  • void apply_torque_impulse ( Vector3 j )

施加扭矩脉冲(会受到车身质量和形状的影响)。这会使物体绕着向量旋转。 j 作为参数传递。

  • RID get_contact_collider ( int contact_idx ) const

返回碰撞器的 RID .

  • int get_contact_collider_id ( int contact_idx ) const

返回碰撞器的对象ID。

  • Object get_contact_collider_object ( int contact_idx ) const

返回碰撞器对象。

  • Vector3 get_contact_collider_position ( int contact_idx ) const

返回碰撞器中的接触位置。

  • int get_contact_collider_shape ( int contact_idx ) const

返回碰撞器的形状索引。

  • Vector3 get_contact_collider_velocity_at_position ( int contact_idx ) const

返回碰撞器接触点处的线性速度矢量。

  • int get_contact_count ( ) const

返回此正文与其他正文的联系人数。

注: 默认情况下,除非主体配置为监视联系人,否则返回0。见 RigidBody.contact_monitor .

  • float get_contact_impulse ( int contact_idx ) const

触点产生的脉冲。仅适用于子弹物理。

  • Vector3 get_contact_local_normal ( int contact_idx ) const

返回接触点的局部正常值。

  • Vector3 get_contact_local_position ( int contact_idx ) const

返回接触点的本地位置。

  • int get_contact_local_shape ( int contact_idx ) const

返回碰撞的局部形状索引。

返回空间的当前状态,对于查询很有用。

  • void integrate_forces ( )

调用内置的强制集成代码。