Hi! I was researching how to implement a debug visualization using the official docs:
https://nvidia-omniverse.github.io/PhysX/physx/5.4.0/docs/DebugVisualization.html
const PxRenderBuffer& rb = scene->getRenderBuffer();
for(PxU32 i=0; i < rb.getNbPoints(); i++)
{
const PxDebugPoint& point = rb.getPoints()[i];
// render the point
}
for(PxU32 i=0; i < rb.getNbLines(); i++)
{
const PxDebugLine& line = rb.getLines()[i];
// render the line
}
It seems the array fields for points, lines, etc in PxRenderBuffer are mapped to a single element with no way to index into them.
|
[Const] PxDebugPoint getPoints(); |
I think PxDebugLine.arrayGet for example can be used to work around this:
PxRenderBuffer renderBuffer = physxScene.getRenderBuffer();
int pointsLength = renderBuffer.getNbPoints();
int pointsBaseAddress = renderBuffer.getPoints().getAddress();
for (int p = 0; p < pointsLength; ++p) {
PxDebugPoint point = PxDebugPoint.arrayGet(pointsBaseAddress, p);
}
But I believe it should be exposed like the getAnyHit(index) accessor from PxSweepResult
|
[Const, Ref] PxSweepHit getAnyHit(unsigned long index); |
Where you do
int hitsLength = sweepResult.getNbAnyHits();
for (int h = 0; h < hitsLength; ++h) {
PxSweepHit hit = sweepResult.getAnyHit(h);
}
Hi! I was researching how to implement a debug visualization using the official docs:
https://nvidia-omniverse.github.io/PhysX/physx/5.4.0/docs/DebugVisualization.html
It seems the array fields for points, lines, etc in PxRenderBuffer are mapped to a single element with no way to index into them.
physx-jni/physx-jni/src/main/webidl/common/PxDebugDrawer.idl
Line 32 in 77bb9e5
I think PxDebugLine.arrayGet for example can be used to work around this:
But I believe it should be exposed like the getAnyHit(index) accessor from PxSweepResult
physx-jni/physx-jni/src/main/webidl/physics/PxSceneQuery.idl
Line 224 in 77bb9e5
Where you do