pub unsafe extern "C" fn PxArticulationReducedCoordinate_isSleeping(
    self_: *const PxArticulationReducedCoordinate
) -> bool
Expand description

Returns true if this articulation is sleeping.

When an actor does not move for a period of time, it is no longer simulated in order to save time. This state is called sleeping. However, because the object automatically wakes up when it is either touched by an awake object, or a sleep-affecting property is changed by the user, the entire sleep mechanism should be transparent to the user.

An articulation can only go to sleep if all links are ready for sleeping. An articulation is guaranteed to be awake if at least one of the following holds:

The wake counter is positive (see setWakeCounter).

The linear or angular velocity of any link is non-zero.

A non-zero force or torque has been applied to the articulation or any of its links.

If an articulation is sleeping, the following state is guaranteed:

The wake counter is zero.

The linear and angular velocity of all links is zero.

There is no force update pending.

When an articulation gets inserted into a scene, it will be considered asleep if all the points above hold, else it will be treated as awake.

If an articulation is asleep after the call to PxScene::fetchResults returns, it is guaranteed that the poses of the links were not changed. You can use this information to avoid updating the transforms of associated objects.

True if the articulation is sleeping.

This call may only be made on articulations that are in a scene, and may not be made during simulation, except in a split simulation in-between [PxScene::fetchCollision] and #PxScene::advance.