You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
26 lines
866 B
26 lines
866 B
#pragma kernel ClearOcclusionDebug
|
|
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Common.hlsl"
|
|
|
|
#define OCCLUSION_DEBUG 1
|
|
|
|
#include "Packages/com.unity.render-pipelines.core/Runtime/GPUDriven/OcclusionCullingCommon.hlsl"
|
|
|
|
[numthreads(8, 8, 1)]
|
|
void ClearOcclusionDebug(uint2 dispatchIndex : SV_DispatchThreadID, uint3 groupId : SV_GroupID)
|
|
{
|
|
#ifdef OCCLUSION_DEBUG
|
|
int clearSliceIndex = groupId.z;
|
|
|
|
for (int i = 0; i < OCCLUSIONCULLINGCOMMONCONFIG_MAX_OCCLUDER_MIPS; ++i)
|
|
{
|
|
uint4 bounds = _OccluderMipBounds[i];
|
|
bounds.y += clearSliceIndex * _OccluderMipLayoutSizeY;
|
|
if (all(dispatchIndex < bounds.zw))
|
|
_OcclusionDebugOverlay[OcclusionDebugOverlayOffset(bounds.xy + dispatchIndex)] = 0;
|
|
}
|
|
|
|
if (all(dispatchIndex == 0) && clearSliceIndex == 0)
|
|
_OcclusionDebugOverlay[0] = 0;
|
|
#endif
|
|
}
|