pub unsafe extern "C" fn PxCustomSceneQuerySystem_startCustomBuildstep_mut(
    self_: *mut PxCustomSceneQuerySystem
) -> u32
Expand description

Start custom build-steps for all pruners

This function is used in combination with customBuildstep() and finishCustomBuildstep() to let users take control of the pruners’ build-step & commit calls - basically the pruners’ update functions. These functions should be used with the PxSceneQueryUpdateMode::eBUILD_DISABLED_COMMIT_DISABLED update mode, otherwise the build-steps will happen automatically in fetchResults. For N pruners it can be more efficient to use these custom build-step functions to perform the updates in parallel:

  • call startCustomBuildstep() first (one synchronous call)
  • for each pruner, call customBuildstep() (asynchronous calls from multiple threads)
  • once it is done, call finishCustomBuildstep() to finish the update (synchronous call)

The multi-threaded update is more efficient here than what it is in PxScene, because the “flushShapes()” call is also multi-threaded (while it is not in PxScene).

Note that users are responsible for locks here, and these calls should not overlap with other SQ calls. In particular one should not add new objects to the SQ system or perform queries while these calls are happening.

The number of pruners in the system.