Skip to main content

collider_active_hooks

Physics hooks are user-defined callbacks used to filter-out some contact pairs, or modify contacts, based on arbitrary user code. In order to enable a physics hook for a pair of colliders, at least one of the involved colliders must have the corresponding hook set as active. A hook is activated for a collider by setting its corresponding active hooks bit to 1:

  • Setting the ActiveHooks::FILTER_CONTACT_PAIRActiveHooks.FILTER_CONTACT_PAIR bit to 1 enables the manual filtering of all the contact pairs involving the collider.
  • Setting the ActiveHooks::FILTER_INTERSECTION_PAIRActiveHooks.FILTER_INTERSECTION_PAIRbit to 1 enables the manual filtering of all the contact pairs involving the collider. - Setting the ActiveHooks::MODIFY_SOLVER_CONTACTS bit to 1 enables the manual contact modification for all the contact manifolds involving the collider.

The active hooks of a collider can be set when the collider is created or after its creation:

<load path='/2d/rust/examples/rs_colliders2.rs' marker='ActiveHooks1' />
<load path='/2d/rust/examples/rs_colliders2.rs' marker='ActiveHooks2' />
<load path='/2d/bevy/examples/colliders2.rs' marker='ActiveHooks1' />
<load path='/2d/bevy/examples/colliders2.rs' marker='ActiveHooks2' />
<load path='/2d/javascript/src/snippets/colliders.ts' marker='ActiveHooks1' />
<load path='/2d/javascript/src/snippets/colliders.ts' marker='ActiveHooks2' />