This version of Unity is unsupported.

MarkerFlags

enumeration

Description

Profiler marker usage flags.

Use to specify marker usage or availability information.

using System.Collections.Generic;
using Unity.Profiling.LowLevel;
using Unity.Profiling.LowLevel.Unsafe;

public class Example { public static unsafe void WriteAllNonDevelopmentStatsToFile(string filePath) { using (var writer = new System.IO.StreamWriter(filePath)) { var availableStatHandles = new List<ProfilerRecorderHandle>(); ProfilerRecorderHandle.GetAvailable(availableStatHandles); foreach (var h in availableStatHandles) { var statDesc = ProfilerRecorderHandle.GetDescription(h); if (!statDesc.Flags.HasFlag(MarkerFlags.AvailabilityNonDevelopment)) continue;

var name = System.Text.Encoding.UTF8.GetString(statDesc.NameUtf8, statDesc.NameUtf8Len); writer.WriteLine($"{name};{statDesc.Flags}"); } } } }

Properties

DefaultDefault value for markers created in native code.
ScriptMarker is created by scripting code.
ScriptInvokeSpecifies that marker is generated by invocation of scripting method from native code.
ScriptDeepProfilerSpecifies that marker is generated by deep profiling.
AvailabilityEditorSpecifies that marker is present only in the Editor.
AvailabilityNonDevelopmentSpecifies that marker is present in non-development Players.
WarningSpecifies that marker highlights performance suboptimal behavior.
CounterMarker represents a counter.
SampleGPUSpecifies that marker is capable of capturing GPU timings.