API ReferenceSandbox.Diagnostics

FrameStatsclass

Stats returned from the engine each frame describing what was rendered, and how much of it.

objectFrameStats
Namespace
Sandbox.Diagnostics
Assembly
Sandbox.Engine
Declaration
public sealed struct Sandbox.Diagnostics.FrameStats

Properties45

Showing 45 properties

public double Sandbox.Diagnostics.FrameStats.AggregateObjectDrawCalls { get; set; }PUBLICGETSET

Native draw calls issued from aggregate scene objects.

Returns:double

public double Sandbox.Diagnostics.FrameStats.AggregateObjectDraws { get; set; }PUBLICGETSET

Primitive draws for aggregate scene objects (batched static prop / world geometry containers).

Returns:double

public double Sandbox.Diagnostics.FrameStats.AggregateObjectsFullyCulled { get; set; }PUBLICGETSET

Aggregate scene objects rejected entirely by their bounding box this frame.

Returns:double

public double Sandbox.Diagnostics.FrameStats.AnimatableObjectDraws { get; set; }PUBLICGETSET

Primitive draws for animatable scene objects.

Returns:double

public double Sandbox.Diagnostics.FrameStats.BaseObjectDraws { get; set; }PUBLICGETSET

Primitive draws for base (static) scene objects.

Returns:double

public double Sandbox.Diagnostics.FrameStats.ConstantBufferBytes { get; set; }PUBLICGETSET

Total bytes uploaded into constant buffers by the material system.

Returns:double

public double Sandbox.Diagnostics.FrameStats.ConstantBufferUpdates { get; set; }PUBLICGETSETPER-FRAME

Number of constant-buffer updates issued by the material system.

Returns:double

public double Sandbox.Diagnostics.FrameStats.CopyMaterialChanges { get; set; }PUBLICGETSET

Number of "copy" material changes (rebound copy of a previously seen material).

Returns:double

public double Sandbox.Diagnostics.FrameStats.DisplayLists { get; set; }PUBLICGETSET

Number of display lists submitted to the GPU.

Returns:double

public double Sandbox.Diagnostics.FrameStats.DrawCalls { get; set; }PUBLICGETSET

Number of draw calls.

Returns:double

public double Sandbox.Diagnostics.FrameStats.FullMaterialSets { get; set; }PUBLICGETSET

Number of full material sets (m_nNumMaterialSet minus similar sets, matching stats_display output).

Returns:double

public string Sandbox.Diagnostics.FrameStats.GpuStatsSummary { get; set; }PUBLICGETSET

Multi-line GPU resource summary from the render device (memory mgr, framebuffers, pipeline cache).

Returns:string

public double Sandbox.Diagnostics.FrameStats.InitialMaterialChanges { get; set; }PUBLICGETSET

Number of initial material changes across both colour and shadow passes (first bind of a material this frame).

Returns:double

public double Sandbox.Diagnostics.FrameStats.InitialShadowMaterialChanges { get; set; }PUBLICGETSET

Initial material changes that occurred in the shadow / depth-only pass specifically.

Returns:double

public double Sandbox.Diagnostics.FrameStats.MaterialChanges { get; set; }PUBLICGETSET

Number of non-shadow (colour pass) material changes.

Returns:double

public double Sandbox.Diagnostics.FrameStats.MaterialComputes { get; set; }PUBLICGETSET

Number of material compute invocations.

Returns:double

public double Sandbox.Diagnostics.FrameStats.ObjectsCulledByFade { get; set; }PUBLICGETSET

Number of objects culled by distance fading.

Returns:double

public double Sandbox.Diagnostics.FrameStats.ObjectsCulledByScreenSize { get; set; }PUBLICGETSET

Number of objects culled by screen size.

Returns:double

public double Sandbox.Diagnostics.FrameStats.ObjectsCulledByVis { get; set; }PUBLICGETSET

Number of objects culled by static visibility.

Returns:double

public double Sandbox.Diagnostics.FrameStats.ObjectsFading { get; set; }PUBLICGETSET

Number of objects currently being distance-faded.

Returns:double

public double Sandbox.Diagnostics.FrameStats.ObjectsPreCull { get; set; }PUBLICGETSET

Number of objects considered before culling.

Returns:double

public double Sandbox.Diagnostics.FrameStats.ObjectsRendered { get; set; }PUBLICGETSET

Number of objects that passed all cull checks and were rendered.

Returns:double

public double Sandbox.Diagnostics.FrameStats.ObjectsTested { get; set; }PUBLICGETSET

Number of objects that were tested against cull checks.

Returns:double

public int Sandbox.Diagnostics.FrameStats.PendingStreamingRequests { get; set; }PUBLICGETSET

In-flight resource streaming-data requests. Sustained > 0 indicates streaming pressure (mips/data still loading).

Returns:int

public double Sandbox.Diagnostics.FrameStats.PrimaryContexts { get; set; }PUBLICGETSET

Number of primary render contexts created.

Returns:double

public double Sandbox.Diagnostics.FrameStats.RenderBatchDraws { get; set; }PUBLICGETSET

Number of render batch draw lists submitted.

Returns:double

public double Sandbox.Diagnostics.FrameStats.RenderTargetResolves { get; set; }PUBLICGETSET

Number of render target resolves.

Returns:double

public double Sandbox.Diagnostics.FrameStats.SceneViewsRendered { get; set; }PUBLICGETSET

Number of scene views rendered.

Returns:double

public double Sandbox.Diagnostics.FrameStats.SecondaryContexts { get; set; }PUBLICGETSET

Number of secondary render contexts created.

Returns:double

public double Sandbox.Diagnostics.FrameStats.ShadowedLightsInView { get; set; }PUBLICGETSET

Number of lights in view that cast shadows.

Returns:double

public double Sandbox.Diagnostics.FrameStats.ShadowMaps { get; set; }PUBLICGETSET

Number of shadow maps rendered this frame.

Returns:double

public double Sandbox.Diagnostics.FrameStats.ShadowMaterialChanges { get; set; }PUBLICGETSET

Number of depth-only (shadow pass) material changes.

Returns:double

public double Sandbox.Diagnostics.FrameStats.ShadowMaterialChangesAlphaTested { get; set; }PUBLICGETSET

Number of depth-only alpha-tested material changes.

Returns:double

public double Sandbox.Diagnostics.FrameStats.SimilarMaterialSets { get; set; }PUBLICGETSET

Number of "similar" material sets (cheap reset against a near-identical material).

Returns:double

public double Sandbox.Diagnostics.FrameStats.TextureOnlyMaterialSets { get; set; }PUBLICGETSET

Number of texture-only material sets (only texture bindings changed).

Returns:double

public ulong Sandbox.Diagnostics.FrameStats.TexturePoolLimitBytes { get; set; }PUBLICGETSET

Texture pool limit (dynamically tuned against GPU heap budget by the texture streamer), in bytes.

Returns:ulong

public ulong Sandbox.Diagnostics.FrameStats.TexturePoolNonEvictableBytes { get; set; }PUBLICGETSET

Portion of the texture pool occupied by non-evictable textures, in bytes.

Returns:ulong

public ulong Sandbox.Diagnostics.FrameStats.TexturePoolUsedBytes { get; set; }PUBLICGETSET

Current texture pool memory usage as tracked by the texture streamer, in bytes.

Returns:ulong

public double Sandbox.Diagnostics.FrameStats.TrianglesRendered { get; set; }PUBLICGETSET

Total number of triangles rendered.

Returns:double

public double Sandbox.Diagnostics.FrameStats.UnbatchableMaterialDraws { get; set; }PUBLICGETSET

Number of unbatchable material draws (materials that opted out of batching for the frame).

Returns:double

public double Sandbox.Diagnostics.FrameStats.UniqueMaterials { get; set; }PUBLICGETSET

Number of unique materials seen this frame.

Returns:double

public double Sandbox.Diagnostics.FrameStats.UnshadowedLightsInView { get; set; }PUBLICGETSET

Number of lights in view that don't cast shadows.

Returns:double

public double Sandbox.Diagnostics.FrameStats.VfxEvals { get; set; }PUBLICGETSET

Number of material Vfx evaluations this frame.

Returns:double

public double Sandbox.Diagnostics.FrameStats.VfxRuleChecks { get; set; }PUBLICGETSET

Number of material Vfx rule checks this frame.

Returns:double

On this page

Propertiespublic System.Double Sandbox.Diagnostics.FrameStats.AggregateObjectDrawCalls { get; set; }public System.Double Sandbox.Diagnostics.FrameStats.AggregateObjectDraws { get; set; }public System.Double Sandbox.Diagnostics.FrameStats.AggregateObjectsFullyCulled { get; set; }public System.Double Sandbox.Diagnostics.FrameStats.AnimatableObjectDraws { get; set; }public System.Double Sandbox.Diagnostics.FrameStats.BaseObjectDraws { get; set; }public System.Double Sandbox.Diagnostics.FrameStats.ConstantBufferBytes { get; set; }public System.Double Sandbox.Diagnostics.FrameStats.ConstantBufferUpdates { get; set; }public System.Double Sandbox.Diagnostics.FrameStats.CopyMaterialChanges { get; set; }public static Sandbox.Diagnostics.FrameStats Sandbox.Diagnostics.FrameStats.Current { get; set; }public System.Double Sandbox.Diagnostics.FrameStats.DisplayLists { get; set; }public System.Double Sandbox.Diagnostics.FrameStats.DrawCalls { get; set; }public System.Double Sandbox.Diagnostics.FrameStats.FullMaterialSets { get; set; }public System.String Sandbox.Diagnostics.FrameStats.GpuStatsSummary { get; set; }public System.Double Sandbox.Diagnostics.FrameStats.InitialMaterialChanges { get; set; }public System.Double Sandbox.Diagnostics.FrameStats.InitialShadowMaterialChanges { get; set; }public System.Double Sandbox.Diagnostics.FrameStats.MaterialChanges { get; set; }public System.Double Sandbox.Diagnostics.FrameStats.MaterialComputes { get; set; }public System.Double Sandbox.Diagnostics.FrameStats.ObjectsCulledByFade { get; set; }public System.Double Sandbox.Diagnostics.FrameStats.ObjectsCulledByScreenSize { get; set; }public System.Double Sandbox.Diagnostics.FrameStats.ObjectsCulledByVis { get; set; }public System.Double Sandbox.Diagnostics.FrameStats.ObjectsFading { get; set; }public System.Double Sandbox.Diagnostics.FrameStats.ObjectsPreCull { get; set; }public System.Double Sandbox.Diagnostics.FrameStats.ObjectsRendered { get; set; }public System.Double Sandbox.Diagnostics.FrameStats.ObjectsTested { get; set; }public System.Int32 Sandbox.Diagnostics.FrameStats.PendingStreamingRequests { get; set; }public System.Double Sandbox.Diagnostics.FrameStats.PrimaryContexts { get; set; }public System.Double Sandbox.Diagnostics.FrameStats.RenderBatchDraws { get; set; }public System.Double Sandbox.Diagnostics.FrameStats.RenderTargetResolves { get; set; }public System.Double Sandbox.Diagnostics.FrameStats.SceneViewsRendered { get; set; }public System.Double Sandbox.Diagnostics.FrameStats.SecondaryContexts { get; set; }public System.Double Sandbox.Diagnostics.FrameStats.ShadowedLightsInView { get; set; }public System.Double Sandbox.Diagnostics.FrameStats.ShadowMaps { get; set; }public System.Double Sandbox.Diagnostics.FrameStats.ShadowMaterialChanges { get; set; }public System.Double Sandbox.Diagnostics.FrameStats.ShadowMaterialChangesAlphaTested { get; set; }public System.Double Sandbox.Diagnostics.FrameStats.SimilarMaterialSets { get; set; }public System.Double Sandbox.Diagnostics.FrameStats.TextureOnlyMaterialSets { get; set; }public System.UInt64 Sandbox.Diagnostics.FrameStats.TexturePoolLimitBytes { get; set; }public System.UInt64 Sandbox.Diagnostics.FrameStats.TexturePoolNonEvictableBytes { get; set; }public System.UInt64 Sandbox.Diagnostics.FrameStats.TexturePoolUsedBytes { get; set; }public System.Double Sandbox.Diagnostics.FrameStats.TrianglesRendered { get; set; }public System.Double Sandbox.Diagnostics.FrameStats.UnbatchableMaterialDraws { get; set; }public System.Double Sandbox.Diagnostics.FrameStats.UniqueMaterials { get; set; }public System.Double Sandbox.Diagnostics.FrameStats.UnshadowedLightsInView { get; set; }public System.Double Sandbox.Diagnostics.FrameStats.VfxEvals { get; set; }public System.Double Sandbox.Diagnostics.FrameStats.VfxRuleChecks { get; set; }Metadata