|
|
|
|
|
|
// clustered light list specific buffers and data begin
|
|
|
|
public bool enableClustered = false; |
|
|
|
public bool enableDrawLightBoundsDebug = false; |
|
|
|
public bool enableDrawTileDebug = false; |
|
|
|
const bool k_UseDepthBuffer = true;// // only has an impact when EnableClustered is true (requires a depth-prepass)
|
|
|
|
const bool disableFptlWhenClustered = false; // still useful on opaques
|
|
|
|
const int k_Log2NumClusters = 6; // accepted range is from 0 to 6. NumClusters is 1<<g_iLog2NumClusters
|
|
|
|
|
|
|
|
|
|
|
m_DeferredMaterial.EnableKeyword(bUseClusteredForDeferred ? "USE_CLUSTERED_LIGHTLIST" : "USE_FPTL_LIGHTLIST"); |
|
|
|
m_DeferredReflectionMaterial.EnableKeyword(bUseClusteredForDeferred ? "USE_CLUSTERED_LIGHTLIST" : "USE_FPTL_LIGHTLIST"); |
|
|
|
if (enableDrawTileDebug) |
|
|
|
m_DeferredMaterial.EnableKeyword("ENABLE_DEBUG"); |
|
|
|
else |
|
|
|
m_DeferredMaterial.DisableKeyword("ENABLE_DEBUG"); |
|
|
|
|
|
|
|
cmd.SetGlobalBuffer("g_vLightListGlobal", bUseClusteredForDeferred ? s_PerVoxelLightLists : s_LightList); // opaques list (unless MSAA possibly)
|
|
|
|
|
|
|
|