meta data for this page
Tracking resource usage
The SpeedTree SDK provides a straightforward mechanism for querying the space used by several internal resources.
Using the system
The SDK function CCore::GetSdkResourceUsage()
can be called at any time. It will populate and return the following SResourceSummary
structure:
struct SResourceSummary { SResourceStats m_sHeap; SResourceStats m_asGfxResources[GFX_RESOURCE_COUNT]; // indexed with EGfxResourceType };
Where SResourceStats
is defined as:
struct SResourceStats { size_t m_siCurrentUsage; // bytes size_t m_siPeakUsage; // bytes size_t m_siCurrentQuantity; size_t m_siPeakQuantity; };
SResourceSummary::m_asGfxResources
is indexed with the enumeration EGfxResourceType
, also defined in Core.h
:
enum EGfxResourceType { GFX_RESOURCE_VERTEX_BUFFER, GFX_RESOURCE_INDEX_BUFFER, GFX_RESOURCE_VERTEX_SHADER, GFX_RESOURCE_PIXEL_SHADER, GFX_RESOURCE_TEXTURE, GFX_RESOURCE_OTHER, GFX_RESOURCE_COUNT };