Add direct lighting rendering into Global Surface Atlas

This commit is contained in:
Wojciech Figat
2022-04-13 16:26:19 +02:00
parent 0a27d277a0
commit 0668a23167
10 changed files with 322 additions and 97 deletions

View File

@@ -14,6 +14,27 @@
/// </summary>
#define SHADOWS_PASS_SS_RR_FORMAT PixelFormat::R11G11B10_Float
template<typename T>
bool CanRenderShadow(RenderView& view, const T& light)
{
bool result = false;
switch ((ShadowsCastingMode)light.ShadowsMode)
{
case ShadowsCastingMode::StaticOnly:
result = view.IsOfflinePass;
break;
case ShadowsCastingMode::DynamicOnly:
result = !view.IsOfflinePass;
break;
case ShadowsCastingMode::All:
result = true;
break;
default:
break;
}
return result && light.ShadowsStrength > ZeroTolerance;
}
/// <summary>
/// Shadows rendering service.
/// </summary>