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

Method renderSimple

Engine/source/navigation/navPath.cpp:590–643  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

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

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