Defined in include/PxQueryReport.h

struct PxQueryCache

single hit cache for scene queries.

If a cache object is supplied to a scene query, the cached actor/shape pair is checked for intersection first.

The faceIndex field is an additional hint for a mesh or height field which is not currently used.

See also



Filters are not executed for the cached shape.


If intersection is found, the hit is treated as blocking.


Typically actor and shape from the last PxHitCallback.block query result is used as a cached actor/shape pair.


Using past touching hits as cache will produce incorrect behavior since the cached hit will always be treated as blocking.


Cache is only used if no touch buffer was provided, for single nearest blocking hit queries and queries using eANY_HIT flag.


if non-zero touch buffer was provided, cache will be ignored


It is the user’s responsibility to ensure that the shape and actor are valid, so care must be taken when deleting shapes to invalidate cached references.

Public Functions

inline PxQueryCache()

constructor sets to default

inline PxQueryCache(PxShape *s, PxU32 findex)

constructor to set properties

Public Members

PxShape *shape

Shape to test for intersection first.

PxRigidActor *actor

Actor to which the shape belongs.

PxU32 faceIndex

Triangle index to test first - NOT CURRENTLY SUPPORTED.