MCPcopy Create free account
hub / github.com/NVIDIAGameWorks/PhysX / SqRayBuffer

Method SqRayBuffer

physx/samples/samplesubmarine/Crab.cpp:797–815  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

795
796
797SqRayBuffer::SqRayBuffer(SampleSubmarine& sampleSubmarine, PxU32 numRays, PxU32 numHits)
798: mSampleSubmarine(sampleSubmarine)
799, mQueryResultSize(numRays)
800, mHitSize(numHits)
801{
802 mOrigAddresses[0] = malloc(mQueryResultSize*sizeof(PxRaycastQueryResult) + 15);
803 mOrigAddresses[1] = malloc(mHitSize*sizeof(PxRaycastHit) + 15);
804
805 mRayCastResults = reinterpret_cast<PxRaycastQueryResult*>((size_t(mOrigAddresses[0]) + 15) & ~15);
806 mRayCastHits = reinterpret_cast<PxRaycastHit*>((size_t(mOrigAddresses[1]) + 15 )& ~15);
807
808 PxBatchQueryDesc batchQueryDesc(mQueryResultSize, 0, 0);
809 batchQueryDesc.queryMemory.userRaycastResultBuffer = mRayCastResults;
810 batchQueryDesc.queryMemory.userRaycastTouchBuffer = mRayCastHits;
811 batchQueryDesc.queryMemory.raycastTouchBufferSize = mHitSize;
812
813 mBatchQuery = mSampleSubmarine.getActiveScene().createBatchQuery(batchQueryDesc);
814 if(!mBatchQuery) mSampleSubmarine.fatalError("createBatchQuery failed!");
815}
816
817SqRayBuffer::~SqRayBuffer()
818{

Callers

nothing calls this directly

Calls 3

createBatchQueryMethod · 0.80
mallocFunction · 0.50
fatalErrorMethod · 0.45

Tested by

no test coverage detected