remed out stray code cleanups, added more remmed out code for referencing the way defered calculates bbminmax (as a percentage of the probes actual scale so folks can just copypaste most times)

This commit is contained in:
AzaezelX 2019-05-05 18:30:40 -05:00
parent 432a927884
commit ae752a04e8

View file

@ -579,80 +579,9 @@ void RenderProbeMgr::_update4ProbeConsts(const SceneData &sgData,
matSet.restoreSceneViewProjection();
// Gather the data for the first 4 probes.
/*const ProbeRenderInst *probe;
for (U32 i = 0; i < 4; i++)
{
if (i >= ProbeRenderInst::all.size())
break;
probe = ProbeRenderInst::all[i];
if (!probe)
continue;
if (!probe->mIsEnabled)
continue;
// The light positions and spot directions are
// in SoA order to make optimal use of the GPU.
const Point3F &probePos = probe->getPosition();
probePositions[i].x = probePos.x;
probePositions[i].y = probePos.y;
probePositions[i].z = probePos.z;
probeRadius[i] = probe->mRadius;
const Point3F &minExt = probe->mBounds.minExtents;
probeBoxMins[i].x = minExt.x;
probeBoxMins[i].y = minExt.y;
probeBoxMins[i].z = minExt.z;
const Point3F &maxExt = probe->mBounds.maxExtents;
probeBoxMaxs[i].x = maxExt.x;
probeBoxMaxs[i].y = maxExt.y;
probeBoxMaxs[i].z = maxExt.z;
probeIsSphere[i] = probe->mProbeShapeType == ProbeRenderInst::Sphere ? 1.0 : 0.0;
Point3F localProbePos;
worldToCameraXfm.mulP(probe->getPosition(), &localProbePos);
probeLocalPositions[i].x = localProbePos.x;
probeLocalPositions[i].y = localProbePos.y;
probeLocalPositions[i].z = localProbePos.z;
if (probe->mCubemap && !probe->mCubemap.isNull())
{
S32 samplerReg = probeCubemapSC->getSamplerRegister();
if (samplerReg != -1)
GFX->setCubeTexture(samplerReg + i, probe->mCubemap.getPointer());
}
}*/
//Array rendering
U32 probeCount = ProbeRenderInst::all.size();
//mEffectiveProbeCount = 0;
//mMipCount = 0;
/*if (probePositionArray.size() != MAX_FORWARD_PROBES)
{
probePositionArray.setSize(MAX_FORWARD_PROBES);
probeBoxMinArray.setSize(MAX_FORWARD_PROBES);
probeBoxMaxArray.setSize(MAX_FORWARD_PROBES);
probeBoxMaxArray.setSize(MAX_FORWARD_PROBES);
probeRefPositionArray.setSize(MAX_FORWARD_PROBES);
probeConfigArray.setSize(MAX_FORWARD_PROBES);
probeWorldToObjArray.setSize(MAX_FORWARD_PROBES);
}*/
//cubeMaps.clear();
//irradMaps.clear();
//Vector<U32> cubemapIdxes;
S8 bestPickProbes[4] = { -1,-1,-1,-1 };
U32 effectiveProbeCount = 0;
@ -666,18 +595,6 @@ void RenderProbeMgr::_update4ProbeConsts(const SceneData &sgData,
if (!curEntry.mIsEnabled)
continue;
/*if (curEntry.mIsSkylight)
{
if (curEntry.mPrefilterCubemap.isValid() && curEntry.mPrefilterCubemap.isValid())
{
GFX->setCubeTexture(probeShaderConsts->mSkylightSpecularMap->getSamplerRegister(), curEntry.mPrefilterCubemap);
GFX->setCubeTexture(probeShaderConsts->mSkylightIrradMap->getSamplerRegister(), curEntry.mIrradianceCubemap);
shaderConsts->setSafe(probeShaderConsts->mHasSkylight, 1.0f);
hasSkylight = true;
continue;
}
}*/
if (!curEntry.mIsSkylight)
{
F32 dist = Point3F(sgData.objTrans->getPosition() - curEntry.getPosition()).len();
@ -707,6 +624,15 @@ void RenderProbeMgr::_update4ProbeConsts(const SceneData &sgData,
probePositionArray[effectiveProbeCount] = curEntry.getPosition();
probeRefPositionArray[effectiveProbeCount] = curEntry.mProbeRefOffset;
probeWorldToObjArray[effectiveProbeCount] = curEntry.getTransform();
probeWorldToObjData[mEffectiveProbeCount] = curEntry.getTransform();
/*
Point3F refPos = curEntry.getPosition() + curEntry.mProbeRefOffset;
Point3F bbMin = refPos - curEntry.mProbeRefScale / 2 * curEntry.getTransform().getScale();
Point3F bbMax = refPos + curEntry.mProbeRefScale / 2 * curEntry.getTransform().getScale();
probeBoxMinArray[mEffectiveProbeCount] = Point4F(bbMin.x, bbMin.y, bbMin.z, 0);
probeBoxMaxArray[mEffectiveProbeCount] = Point4F(bbMax.x, bbMax.y, bbMax.z, 0);*/
probeBoxMinArray[effectiveProbeCount] = curEntry.mBounds.minExtents;
probeBoxMaxArray[effectiveProbeCount] = curEntry.mBounds.maxExtents;
probeConfigArray[effectiveProbeCount] = Point4F(curEntry.mProbeShapeType,
@ -1052,4 +978,4 @@ DefineEngineMethod(RenderProbeMgr, bakeProbe, void, (ReflectionProbe* probe), (n
{
if(probe != nullptr)
object->bakeProbe(probe);
}
}