Struct DiagnosticSnapshot
- Namespace
- Framework.Systems.Diagnostics.Data
- Assembly
- Assembly-CSharp.dll
단일 프레임 성능 지표 스냅샷. 감지/저장/Overlay 표시의 기본 단위.
[MemoryPackable(GenerateType.Object)]
public struct DiagnosticSnapshot
Remarks
[직렬화] MemoryPack 사용 — 내부 고성능 시스템 데이터. 이유: 런타임 수집 데이터, 사람이 편집하지 않음, 대량 배열 저장 필요. MetricsExporter에서 .bin 파일로 저장하거나 링 버퍼에 보관. readonly struct로 설계 — 값 복사 후 각 서브시스템에 in 한정자로 전달.
Fields
ActiveObjectCount
현재 씬의 활성 GameObject 수.
public int ActiveObjectCount
Field Value
- int
DrawCalls
드로우 콜(Batches) 수. ProfilerRecorder 수집.
public int DrawCalls
Field Value
- int
Fps
초당 프레임 수.
public float Fps
Field Value
- float
FrameTime
프레임 처리 시간(ms).
public float FrameTime
Field Value
- float
GCAlloc
프레임당 GC 할당량(bytes). Mono 힙 증가량.
public long GCAlloc
Field Value
- long
SetPassCalls
SetPass 콜 수. ProfilerRecorder 수집.
public int SetPassCalls
Field Value
- int
Timestamp
스냅샷 수집 시각(앱 기동 후 경과 초). Time.realtimeSinceStartup.
public float Timestamp
Field Value
- float
TotalMemory
총 할당 메모리(bytes). Profiler.GetTotalAllocatedMemoryLong.
public long TotalMemory
Field Value
- long
Methods
Deserialize(ref MemoryPackReader, ref DiagnosticSnapshot)
[Preserve]
public static void Deserialize(ref MemoryPackReader reader, ref DiagnosticSnapshot value)
Parameters
readerMemoryPackReadervalueDiagnosticSnapshot
RegisterFormatter()
[Preserve]
public static void RegisterFormatter()
Serialize<TBufferWriter>(ref MemoryPackWriter<TBufferWriter>, ref DiagnosticSnapshot)
[Preserve]
public static void Serialize<TBufferWriter>(ref MemoryPackWriter<TBufferWriter> writer, ref DiagnosticSnapshot value) where TBufferWriter : class, IBufferWriter<byte>
Parameters
writerMemoryPackWriter<TBufferWriter>valueDiagnosticSnapshot
Type Parameters
TBufferWriter