MCPcopy Create free account
hub / github.com/RavEngine/RavEngine / visualize

Method visualize

deps/physx/physx/source/physx/src/NpArticulationLink.cpp:417–444  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

415
416#if PX_ENABLE_DEBUG_VISUALIZATION
417void NpArticulationLink::visualize(Cm::RenderOutput& out, NpScene* scene)
418{
419 NpArticulationLinkT::visualize(out, scene);
420
421 if (getScbBodyFast().getActorFlags() & PxActorFlag::eVISUALIZATION)
422 {
423 PX_ASSERT(getScene());
424 PxReal scale = getScene()->getVisualizationParameter(PxVisualizationParameter::eSCALE);
425
426 PxReal massAxes = scale * getScene()->getVisualizationParameter(PxVisualizationParameter::eBODY_MASS_AXES);
427 if (massAxes != 0)
428 {
429 PxU32 color = 0xff;
430 color = (color<<16 | color<<8 | color);
431 PxVec3 dims = invertDiagInertia(getScbBodyFast().getInverseInertia());
432 dims = getDimsFromBodyInertia(dims, 1.0f / getScbBodyFast().getInverseMass());
433
434 out << color << getScbBodyFast().getBody2World() << Cm::DebugBox(dims * 0.5f);
435 }
436 PxReal frameScale = scale * getScene()->getVisualizationParameter(PxVisualizationParameter::eJOINT_LOCAL_FRAMES);
437 PxReal limitScale = scale * getScene()->getVisualizationParameter(PxVisualizationParameter::eJOINT_LIMITS);
438 if ( frameScale != 0.0f || limitScale != 0.0f )
439 {
440 Cm::ConstraintImmediateVisualizer viz( frameScale, limitScale, out );
441 visualizeJoint( viz );
442 }
443 }
444}
445
446static PX_FORCE_INLINE PxReal computePhi(const PxQuat& q)
447{

Callers

nothing calls this directly

Calls 7

invertDiagInertiaFunction · 0.85
getDimsFromBodyInertiaFunction · 0.85
DebugBoxClass · 0.85
getInverseMassMethod · 0.80
visualizeFunction · 0.70
getActorFlagsMethod · 0.45

Tested by

no test coverage detected