parent
0eba1396dc
commit
3160520249
|
|
@ -157,6 +157,11 @@ void LLHeroProbeManager::update()
|
|||
LL_PROFILE_ZONE_NAMED_CATEGORY_DISPLAY("hpmu - realtime");
|
||||
// Probe 0 is always our mirror probe.
|
||||
mProbes[0]->mOrigin = probe_pos;
|
||||
|
||||
bool radiance_pass = gPipeline.mReflectionMapManager.isRadiancePass();
|
||||
|
||||
gPipeline.mReflectionMapManager.mRadiancePass = true;
|
||||
|
||||
for (U32 j = 0; j < mProbes.size(); j++)
|
||||
{
|
||||
for (U32 i = 0; i < 6; ++i)
|
||||
|
|
@ -164,6 +169,8 @@ void LLHeroProbeManager::update()
|
|||
updateProbeFace(mProbes[j], i);
|
||||
}
|
||||
}
|
||||
|
||||
gPipeline.mReflectionMapManager.mRadiancePass = radiance_pass;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -180,7 +187,7 @@ void LLHeroProbeManager::updateProbeFace(LLReflectionMap* probe, U32 face)
|
|||
// hacky hot-swap of camera specific render targets
|
||||
gPipeline.mRT = &gPipeline.mAuxillaryRT;
|
||||
|
||||
probe->update(mRenderTarget.getWidth(), face);
|
||||
probe->update(mRenderTarget.getWidth(), face, true);
|
||||
|
||||
gPipeline.mRT = &gPipeline.mMainRT;
|
||||
|
||||
|
|
|
|||
|
|
@ -49,7 +49,7 @@ LLReflectionMap::~LLReflectionMap()
|
|||
}
|
||||
}
|
||||
|
||||
void LLReflectionMap::update(U32 resolution, U32 face)
|
||||
void LLReflectionMap::update(U32 resolution, U32 face, bool force_dynamic)
|
||||
{
|
||||
LL_PROFILE_ZONE_SCOPED_CATEGORY_DISPLAY;
|
||||
mLastUpdateTime = gFrameTimeSeconds;
|
||||
|
|
@ -63,7 +63,8 @@ void LLReflectionMap::update(U32 resolution, U32 face)
|
|||
{
|
||||
resolution /= 2;
|
||||
}
|
||||
gViewerWindow->cubeSnapshot(LLVector3(mOrigin), mCubeArray, mCubeIndex, face, getNearClip(), getIsDynamic());
|
||||
|
||||
gViewerWindow->cubeSnapshot(LLVector3(mOrigin), mCubeArray, mCubeIndex, face, getNearClip(), getIsDynamic() || force_dynamic);
|
||||
}
|
||||
|
||||
void LLReflectionMap::autoAdjustOrigin()
|
||||
|
|
|
|||
|
|
@ -52,7 +52,7 @@ public:
|
|||
|
||||
// update this environment map
|
||||
// resolution - size of cube map to generate
|
||||
void update(U32 resolution, U32 face);
|
||||
void update(U32 resolution, U32 face, bool force_dynamic = false);
|
||||
|
||||
// for volume partition probes, try to place this probe in the best spot
|
||||
void autoAdjustOrigin();
|
||||
|
|
|
|||
|
|
@ -104,6 +104,7 @@ public:
|
|||
|
||||
private:
|
||||
friend class LLPipeline;
|
||||
friend class LLHeroProbeManager;
|
||||
|
||||
// initialize mCubeFree array to default values
|
||||
void initCubeFree();
|
||||
|
|
|
|||
Loading…
Reference in New Issue