mirror of
https://github.com/TorqueGameEngines/Torque3D.git
synced 2026-02-13 03:33:48 +00:00
motion based updates for shadow caching
adds a $pref::Shadows::teleportDis and $pref::Shadows::turnRate (defaults 4, and 1 respectively) if either is exceeded during a given frame, shadow chaches are forced to refresh themselves.
This commit is contained in:
parent
7af95e6a8e
commit
01419d7935
5 changed files with 55 additions and 19 deletions
|
|
@ -304,13 +304,16 @@ bool LightShadowMap::setTextureStage( U32 currTexFlag, LightingShaderConstants*
|
|||
return false;
|
||||
}
|
||||
|
||||
void LightShadowMap::render( RenderPassManager* renderPass,
|
||||
const SceneRenderState *diffuseState,
|
||||
bool _dynamic)
|
||||
void LightShadowMap::render(RenderPassManager* renderPass,
|
||||
const SceneRenderState *diffuseState,
|
||||
bool _dynamic, bool _forceUpdate)
|
||||
{
|
||||
// control how often shadow maps are refreshed
|
||||
if (!_dynamic && (mStaticRefreshTimer->getElapsedMs() < getLightInfo()->getStaticRefreshFreq()))
|
||||
return;
|
||||
if (!_forceUpdate)
|
||||
{
|
||||
// control how often shadow maps are refreshed
|
||||
if (!_dynamic && (mStaticRefreshTimer->getElapsedMs() < getLightInfo()->getStaticRefreshFreq()))
|
||||
return;
|
||||
}
|
||||
mStaticRefreshTimer->reset();
|
||||
|
||||
/* TODO: find out why this is causing issue with translucent objects
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue