mirror of
https://github.com/TorqueGameEngines/Torque3D.git
synced 2026-02-12 19:31:41 +00:00
Implemented registration of probes to avoid rendering all probes when unneeded.
This commit is contained in:
parent
ecd47830ca
commit
c4a4fe5304
5 changed files with 26 additions and 3 deletions
|
|
@ -198,6 +198,9 @@ void RenderProbeMgr::render( SceneRenderState *state )
|
|||
if (!ProbeRenderInst::all.size())
|
||||
return;
|
||||
|
||||
if (PROBEMGR->mRegisteredProbes.empty())
|
||||
return;
|
||||
|
||||
if (!ProbeManager::smRenderReflectionProbes)
|
||||
return;
|
||||
|
||||
|
|
@ -255,9 +258,9 @@ void RenderProbeMgr::render( SceneRenderState *state )
|
|||
ProbeManager::SkylightMaterialInfo* skylightMat = PROBEMGR->getSkylightMaterial();
|
||||
ProbeManager::ReflectProbeMaterialInfo* reflProbeMat = PROBEMGR->getReflectProbeMaterial();
|
||||
|
||||
for (U32 i = 0; i < ProbeRenderInst::all.size(); i++)
|
||||
for (U32 i = 0; i < PROBEMGR->mRegisteredProbes.size(); i++)
|
||||
{
|
||||
ProbeRenderInst* curEntry = ProbeRenderInst::all[i];
|
||||
ProbeRenderInst* curEntry = ProbeRenderInst::all[PROBEMGR->mRegisteredProbes[i]];
|
||||
|
||||
if (!curEntry->mIsEnabled)
|
||||
continue;
|
||||
|
|
@ -321,6 +324,9 @@ void RenderProbeMgr::render( SceneRenderState *state )
|
|||
}
|
||||
}
|
||||
|
||||
//And clean us up
|
||||
PROBEMGR->mRegisteredProbes.clear();
|
||||
|
||||
probeLightingTargetRef->resolve();
|
||||
GFX->popActiveRenderTarget();
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue