#define SSBO_QUALIFIER #if WORLD_SPACE_PLAYER_REF == 1 #include "/lib/voxelization/SSBOs/playerVerticesBuffer.glsl" #endif #include "/lib/voxelization/SSBOs/wsrBuffer.glsl" #include "/lib/voxelization/SSBOs/wsrLodBuffer.glsl" #if COLORED_LIGHTING < 512 const ivec3 sceneVoxelVolumeSize = ivec3(COLORED_LIGHTING_INTERNAL, 64, COLORED_LIGHTING_INTERNAL); #else const ivec3 sceneVoxelVolumeSize = ivec3(512, 64, 512); #endif void clearSSBOs() { int pixelIndex = int(gl_FragCoord.x) + int(viewWidth) * int(gl_FragCoord.y); int k = sceneVoxelVolumeSize.x * sceneVoxelVolumeSize.y * sceneVoxelVolumeSize.z / 32; if (pixelIndex < k) { if (pixelIndex < k / 64) wsrLodSSBO.bitmasks[pixelIndex] = 0u; wsrSSBO.bitmasks[pixelIndex] = 0u; } #if WORLD_SPACE_PLAYER_REF == 1 if (pixelIndex == 0) { playerVerticesSSBO.bounds = playerBounds(ivec3(1e6), ivec3(-1e6), ivec3(1e6), ivec3(-1e6), ivec3(1e6), ivec3(-1e6), ivec3(1e6), ivec3(-1e6), ivec3(1e6), ivec3(-1e6), ivec3(1e6), ivec3(-1e6)); } #endif }