raisin::RayraiWindow::FoliageRenderDiagnostics
struct · #include <rayrai/RayraiWindow.hpp>
Diagnostics: foliage and instanced-draw counters (see foliageRenderDiagnostics()).
Reset at the start of every update() / renderWithExternalCamera() frame and accumulated while that frame renders. Counters prefixed scene belong to the color pass and shadow to shadow passes. GPU times are filled only by captureRenderPassTimings() / captureViewerPassTimings().
Public attributes
available
bool availableTrue when the frame drew at least one foliage visual.
timingCaptureAvailable
bool timingCaptureAvailableTrue when foliage GPU timings were captured.
sceneFoliageDrawCalls
size_t sceneFoliageDrawCallsFoliage draws in the scene pass.
sceneFoliageOccludedDrawCalls
size_t sceneFoliageOccludedDrawCallsScene foliage draws skipped by occlusion culling.
sceneFoliageAuthoredInstanceVisits
size_t sceneFoliageAuthoredInstanceVisitsAuthored instances of drawn scene foliage visuals.
sceneFoliageCandidateInstanceVisits
size_t sceneFoliageCandidateInstanceVisitsScene foliage instances left after culling stages that report candidates.
sceneFoliageRenderedInstanceVisits
size_t sceneFoliageRenderedInstanceVisitsScene foliage instances actually rendered. Instances whose occlusion is tested on the GPU count before that test.
shadowFoliageDrawCalls
size_t shadowFoliageDrawCallsFoliage draws in shadow passes.
shadowFoliageAuthoredInstanceVisits
size_t shadowFoliageAuthoredInstanceVisitsAuthored instances of shadow foliage draws.
shadowFoliageCandidateInstanceVisits
size_t shadowFoliageCandidateInstanceVisitsShadow foliage candidate instances.
shadowFoliageRenderedInstanceVisits
size_t shadowFoliageRenderedInstanceVisitsShadow foliage instances actually rendered.
sceneGpuCulledDrawCalls
size_t sceneGpuCulledDrawCallsScene draws that used GPU instance culling.
shadowGpuCulledDrawCalls
size_t shadowGpuCulledDrawCallsShadow draws that used GPU instance culling.
sceneGpuCullSkippedDrawCalls
size_t sceneGpuCullSkippedDrawCallsScene draws that skipped GPU instance culling.
shadowGpuCullSkippedDrawCalls
size_t shadowGpuCullSkippedDrawCallsShadow draws that skipped GPU instance culling.
sceneVisibleInstanceFrameCacheHits
size_t sceneVisibleInstanceFrameCacheHitsGPU-culled scene draws that reused this frame's visible-instance list.
sceneVisibleInstanceFrameCacheDispatches
size_t sceneVisibleInstanceFrameCacheDispatchesGPU-culled scene draws that dispatched culling.
sceneVisibleInstanceFrameCacheFallbackDrawCalls
size_t sceneVisibleInstanceFrameCacheFallbackDrawCallsScene draws that could not use the visible-instance frame cache.
sceneClusteredDrawCalls
size_t sceneClusteredDrawCallsScene draws using hierarchical foliage clusters.
shadowClusteredDrawCalls
size_t shadowClusteredDrawCallsShadow draws using hierarchical foliage clusters.
impostorDrawCalls
size_t impostorDrawCallsImpostor (billboard LOD) draws.
shadowLodDrawCalls
size_t shadowLodDrawCallsShadow draws using a shadow LOD.
persistentSourceBufferDrawCalls
size_t persistentSourceBufferDrawCallsDraws served from persistent source instance buffers.
sceneMultiDrawIndirectDrawCalls
size_t sceneMultiDrawIndirectDrawCallsScene multi-draw-indirect submissions.
shadowMultiDrawIndirectDrawCalls
size_t shadowMultiDrawIndirectDrawCallsShadow multi-draw-indirect submissions.
multiDrawIndirectCommandCount
size_t multiDrawIndirectCommandCountIndirect commands issued.
multiDrawIndirectFallbackDrawCalls
size_t multiDrawIndirectFallbackDrawCallsDraws that fell back from multi-draw-indirect.
sceneAlphaDepthPrepassDrawCalls
size_t sceneAlphaDepthPrepassDrawCallsAlpha-tested depth-prepass draws.
sceneAlphaDepthPrepassInstanceVisits
size_t sceneAlphaDepthPrepassInstanceVisitsInstances drawn in the alpha depth prepass.
sceneAlphaDepthPrepassFallbackDrawCalls
size_t sceneAlphaDepthPrepassFallbackDrawCallsDraws that could not use the alpha depth prepass.
sceneFrontToBackOrderedInstancedDrawCalls
size_t sceneFrontToBackOrderedInstancedDrawCallsInstanced draws submitted front to back.
sceneFrontToBackOrderedFoliageDrawCalls
size_t sceneFrontToBackOrderedFoliageDrawCallsFoliage draws submitted front to back.
sceneFrontToBackOrderingFallbackDrawCalls
size_t sceneFrontToBackOrderingFallbackDrawCallsDraws that could not be front-to-back ordered.
maxSourceTrianglesPerInstance
size_t maxSourceTrianglesPerInstanceLargest source-mesh triangle count per instance.
maxImpostorTrianglesPerInstance
size_t maxImpostorTrianglesPerInstanceLargest impostor triangle count per instance.
conservativeOcclusionCandidates
size_t conservativeOcclusionCandidatesCopy of ConservativeOcclusionCullingDiagnostics::candidates.
conservativeOcclusionQueries
size_t conservativeOcclusionQueriesCopy of ConservativeOcclusionCullingDiagnostics::queries.
conservativeOcclusionOccluded
size_t conservativeOcclusionOccludedCopy of ConservativeOcclusionCullingDiagnostics::occluded.
conservativeOcclusionDrawn
size_t conservativeOcclusionDrawnCopy of ConservativeOcclusionCullingDiagnostics::drawn.
hizOcclusionTests
size_t hizOcclusionTestsCopy of ConservativeOcclusionCullingDiagnostics::hizTests.
hizOcclusionOccluded
size_t hizOcclusionOccludedCopy of ConservativeOcclusionCullingDiagnostics::hizOccluded.
hizOcclusionDepthReadbacks
size_t hizOcclusionDepthReadbacksCopy of ConservativeOcclusionCullingDiagnostics::hizDepthReadbacks.
gpuHizOcclusionDrawCalls
size_t gpuHizOcclusionDrawCallsCopy of ConservativeOcclusionCullingDiagnostics::gpuHizDrawCalls.
gpuHizOcclusionDepthBuilds
size_t gpuHizOcclusionDepthBuildsCopy of ConservativeOcclusionCullingDiagnostics::gpuHizDepthBuilds.
gpuHizOcclusionComputeDepthBuilds
size_t gpuHizOcclusionComputeDepthBuildsCopy of ConservativeOcclusionCullingDiagnostics::gpuHizComputeDepthBuilds.
gpuHizOcclusionRasterDepthBuilds
size_t gpuHizOcclusionRasterDepthBuildsCopy of ConservativeOcclusionCullingDiagnostics::gpuHizRasterDepthBuilds.
sceneGpuOcclusionFilteredDrawCalls
size_t sceneGpuOcclusionFilteredDrawCallsCollected scene foliage draws whose instances were occlusion-tested on the GPU.
sceneFoliageGpuMs
double sceneFoliageGpuMsScene foliage GPU time in ms (timing captures only).
shadowFoliageGpuMs
double shadowFoliageGpuMsShadow foliage GPU time in ms (timing captures only).