#pragma kernel CSMain #include "Packages/com.misaki.ao-volume/Runtime/Shader/Includes/GeometryData.cs.hlsl" StructuredBuffer _VolumeBounds; ByteAddressBuffer _VisibleVolumeCount; ByteAddressBuffer _VisibleVolumeIndices; // For the volume list buffer, we allocate a buffer with the size of "cluster count" * "max volume count on screen" / 4. // The first slot of each cluster group is always reserved for the count of volumes in the cluster. // The rest of the slots are used for the indices of the volumes in the cluster, each slot are packed with 2 16 bits indices. // To total number of indices in each cluster is "max volume count on screen" / 4 - 1. RWByteAddressBuffer _VolumeListCluster : register(u0); [numthreads(64,1,1)] void CSMain(uint3 dispatchThreadId : SV_DispatchThreadID) { }