8namespace EngineCore::ComputeDebug
10 void logObjectCullingResults( uint32_t objectCount, uint32_t survivingCount )
12 PLOGI <<
"[COMPUTE_DEBUG] Object Culling: " << survivingCount <<
"/" << objectCount
13 <<
" objects passed frustum culling ("
14 << ( objectCount > 0 ? ( survivingCount * 100.0f / objectCount ) : 0.0f ) <<
"%)";
17 void logMeshletCullingResults( uint32_t meshletCount, uint32_t visibleCount )
19 PLOGI <<
"[COMPUTE_DEBUG] Meshlet Culling: " << visibleCount <<
"/" << meshletCount
20 <<
" meshlets visible ("
21 << ( meshletCount > 0 ? ( visibleCount * 100.0f / meshletCount ) : 0.0f ) <<
"%)";
24 void logCounter(
const char * name, uint32_t value )
26 PLOGI <<
"[COMPUTE_DEBUG] Counter '" << name <<
"': " << value;
29 uint32_t readbackCounter(
31 VkPhysicalDevice physicalDevice,
32 const VulkanBuffer & buffer
35 auto result = readbackBuffer<uint32_t>( device, physicalDevice, buffer, 1 );
36 return result.empty() ? 0 : result[0];