FfxBrixelizerScratchCounters

A structure containing the counters used by the Brixelizer context for each cascade update. This can be readback and used for analysis after each update. The following members contain useful information for analysing Brixelizer resource usage.

File location: sdk/include/FidelityFX/gpu/brixelizer/ffx_brixelizer_host_gpu_shared.h

Detailed description

A structure containing the counters used by the Brixelizer context for each cascade update. This can be readback and used for analysis after each update. The following members contain useful information for analysing Brixelizer resource usage.

triangles is used to store the total amount of storage space requested within the triangle buffer during an update. This is useful for determining a sensible value of triangleSwapSize in either FfxBrixelizerRawCascadeUpdateDescription or FfxBrixelizerUpdateDescription. references is used to store the total number of reference allocations requested by Brixelizer during an update. This is useful for determining a sensible value of maxReferences in either FfxBrixelizerRawCascadeUpdateDescription or FfxBrixelizerUpdateDescription. numBricksAllocated is used to store the number of brick allocations requested in an update. This is useful for determining a sensible value of maxBricksPerBake in either FfxBrixelizerRawCascadeUpdateDescription or FfxBrixelizerUpdateDescription.

The following counters are used internally by Brixelizer.

maxTriangles is used to store the storage size of the triangle buffer. maxReferences is used to store the maxmimum number of references that can be stored. groupIndex is used as a global atomic for wavefront synchronisation. compressionBricks the number of bricks to compress (i.e. calculate AABBs for) this udpate. storageOffset the next free position in the bricks scratch buffer. storageSize the size of the bricks scratch buffer. clearBricks the amount of bricks in the scratch buffer to initialize.