MCPcopy Create free account
hub / github.com/TorqueGameEngines/Torque3D / renderSimple

Method renderSimple

Engine/source/navigation/navPath.cpp:595–648  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

593}
594
595void NavPath::renderSimple(ObjectRenderInst *ri, SceneRenderState *state, BaseMatInstance *overrideMat)
596{
597 if(overrideMat)
598 return;
599
600 if(state->isReflectPass() || !(isSelected() || mAlwaysRender))
601 return;
602
603 GFXDrawUtil *drawer = GFX->getDrawUtil();
604 GFXStateBlockDesc desc;
605 desc.setZReadWrite(true, false);
606 desc.setBlend(true);
607 desc.setCullMode(GFXCullNone);
608
609 if(isSelected())
610 {
611 drawer->drawCube(desc, getWorldBox(), ColorI(136, 255, 228, 5));
612 desc.setFillModeWireframe();
613 drawer->drawCube(desc, getWorldBox(), ColorI::BLACK);
614 }
615
616 desc.setZReadWrite(!mXray, false);
617
618 ColorI pathColour(255, 0, 255);
619
620 if(!mIsLooping)
621 {
622 desc.setFillModeSolid();
623 if(mFromSet) drawer->drawCube(desc, Point3F(0.2f, 0.2f, 0.2f), mFrom, pathColour);
624 if(mToSet) drawer->drawCube(desc, Point3F(0.2f, 0.2f, 0.2f), mTo, pathColour);
625 }
626
627 GFXStateBlockRef sb = GFX->createStateBlock(desc);
628 GFX->setStateBlock(sb);
629
630 PrimBuild::color3i(pathColour.red, pathColour.green, pathColour.blue);
631
632 PrimBuild::begin(GFXLineStrip, mPoints.size());
633 for (U32 i = 0; i < mPoints.size(); i++)
634 PrimBuild::vertex3fv(mPoints[i]);
635 PrimBuild::end();
636
637 if(mRenderSearch && getServerObject())
638 {
639 NavPath *np = static_cast<NavPath*>(getServerObject());
640 if(np->mQuery && !dtStatusSucceed(np->mStatus))
641 {
642 duDebugDrawTorque dd;
643 dd.overrideColor(duRGBA(250, 20, 20, 255));
644 duDebugDrawNavMeshNodes(&dd, *np->mQuery);
645 dd.render();
646 }
647 }
648}
649
650U32 NavPath::packUpdate(NetConnection *conn, U32 mask, BitStream *stream)
651{

Callers

nothing calls this directly

Calls 15

isSelectedFunction · 0.85
color3iFunction · 0.85
beginFunction · 0.85
endFunction · 0.85
dtStatusSucceedFunction · 0.85
duRGBAFunction · 0.85
duDebugDrawNavMeshNodesFunction · 0.85
isReflectPassMethod · 0.80
getDrawUtilMethod · 0.80
setZReadWriteMethod · 0.80
setBlendMethod · 0.80
setCullModeMethod · 0.80

Tested by

no test coverage detected