PxSceneQueryFilterCallback Class Reference
[Scenequery]
Scene query filtering callbacks.
More...
#include <PxSceneQueryFiltering.h>
Public Member Functions | |
virtual PxSceneQueryHitType::Enum | preFilter (const PxFilterData &filterData, PxShape *shape, PxSceneQueryFilterFlags &filterFlags)=0 |
Filter callback before precise intersection testing. | |
virtual PxSceneQueryHitType::Enum | postFilter (const PxFilterData &filterData, const PxSceneQueryHit &hit)=0 |
Filter callback after precise intersection testing. | |
virtual | ~PxSceneQueryFilterCallback () |
virtual destructor |
Detailed Description
Scene query filtering callbacks.Custom filtering logic for scene query intersection candidates. If an intersection candidate object passes the data based filter (see PxSceneQueryFilterData), the filtering callbacks run on request (see PxSceneQueryFilterData.flags)
- If PxSceneQueryFilterFlag::ePREFILTER is set, the preFilter function runs before precise intersection testing. If this function returns PxSceneQueryHitType::eTOUCH or PxSceneQueryHitType::eBLOCK, precise testing is performed to determine intersection point(s).
- If PxSceneQueryFilterFlag::ePREFILTER is not set, precise intersection testing is performed with the PxSceneQueryFilterFlag::eBACKFACE and PxSceneQueryFilterFlag::eMESH_MULTIPLE flags from the filterFlags field.
- If the PxSceneQueryFilterFlag::ePOSTFILTER flag is set, the postFilter function is called for each intersection point to determine touch/block status. This overrides any touch/block status returned from the preFilter function for this shape.
- See also:
- PxScene.raycastAny PxScene.raycastSingle PxScene.raycastMultiple PxScene.sweepSingle PxScene.sweepMultiple PxScene.overlapMultiple
Constructor & Destructor Documentation
virtual PxSceneQueryFilterCallback::~PxSceneQueryFilterCallback | ( | ) | [inline, virtual] |
virtual destructor
Member Function Documentation
virtual PxSceneQueryHitType::Enum PxSceneQueryFilterCallback::postFilter | ( | const PxFilterData & | filterData, | |
const PxSceneQueryHit & | hit | |||
) | [pure virtual] |
Filter callback after precise intersection testing.
- Parameters:
-
[in] filterData The custom filter data of the query [in] hit Scene query hit information. For overlap tests the faceIndex member is not valid. For sweepSingle/sweepMultiple and raycastSingle/raycastMultiple the hit information can be casted to PxSweepHit and PxRaycastHit respectively
- Returns:
- Hit declaration.
- See also:
- PxSceneQueryFilterCallback
virtual PxSceneQueryHitType::Enum PxSceneQueryFilterCallback::preFilter | ( | const PxFilterData & | filterData, | |
PxShape * | shape, | |||
PxSceneQueryFilterFlags & | filterFlags | |||
) | [pure virtual] |
Filter callback before precise intersection testing.
- Parameters:
-
[in] filterData The custom filter data of the query [in] shape The potentially hit shape [in,out] filterFlags The query filter flags from the query's PxSceneQueryFilterData (only the flags eMESH_MULTIPLE, eBACKFACE can be modified)
- See also:
- PxSceneQueryFilterCallback
The documentation for this class was generated from the following file:
Copyright © 2008-2012 NVIDIA Corporation, 2701 San Tomas Expressway, Santa Clara, CA 95050 U.S.A. All rights reserved. www.nvidia.com