Browse Source

clamp rendering cover points to 50 units

changes from az render cover points
marauder2k7 1 month ago
parent
commit
78a553a74f

+ 12 - 3
Engine/source/navigation/coverPoint.cpp

@@ -31,6 +31,7 @@
 #include "gfx/gfxDrawUtil.h"
 #include "gfx/gfxDrawUtil.h"
 #include "renderInstance/renderPassManager.h"
 #include "renderInstance/renderPassManager.h"
 #include "console/engineAPI.h"
 #include "console/engineAPI.h"
+#include "T3D/gameBase/gameConnection.h"
 
 
 extern bool gEditingMission;
 extern bool gEditingMission;
 
 
@@ -285,14 +286,22 @@ void CoverPoint::prepRenderImage(SceneRenderState *state)
 
 
 void CoverPoint::render(ObjectRenderInst *ri, SceneRenderState *state, BaseMatInstance *overrideMat)
 void CoverPoint::render(ObjectRenderInst *ri, SceneRenderState *state, BaseMatInstance *overrideMat)
 {
 {
-   initGFXResources();
+   if (!state->isDiffusePass()) return;
+
+   GameConnection* conn = GameConnection::getConnectionToServer();
+   MatrixF camTrans;
+   conn->getControlCameraTransform(0, &camTrans);
+
+   if ((getPosition() - camTrans.getPosition()).lenSquared() > 2500) return; //50 unit clamp
 
 
-   if(overrideMat)
+   if (overrideMat)
       return;
       return;
 
 
+   initGFXResources();
+   
    if(smVertexBuffer[mSize].isNull())
    if(smVertexBuffer[mSize].isNull())
       return;
       return;
-
+   
    PROFILE_SCOPE(CoverPoint_Render);
    PROFILE_SCOPE(CoverPoint_Render);
 
 
    // Set up a GFX debug event (this helps with debugging rendering events in external tools)
    // Set up a GFX debug event (this helps with debugging rendering events in external tools)

+ 2 - 0
Engine/source/navigation/duDebugDrawTorque.cpp

@@ -427,6 +427,8 @@ void duDebugDrawTorque::clearCache()
 
 
 void duDebugDrawTorque::render(SceneRenderState* state)
 void duDebugDrawTorque::render(SceneRenderState* state)
 {
 {
+   if (!state->isDiffusePass()) return;
+
    const Frustum& frustum = state->getCameraFrustum();
    const Frustum& frustum = state->getCameraFrustum();
 
 
    for (U32 i = 0; i < mDrawCache.size(); ++i)
    for (U32 i = 0; i < mDrawCache.size(); ++i)