markerPtr | Profiler marker handle. |
Starts profiling a piece of code marked with a custom name that the markerPtr handle has defined.
Code marked with BeginSample and EndSample shows up in the Profiler hierarchy.
Always use EndSample to close a started section of the instrumented code.
Note: Both BeginSample and EndSample are thread safe and can be used in jobified code.
The low level Profiler API is included in a Release Build.
using Unity.Collections.LowLevel.Unsafe; using Unity.Profiling.LowLevel; using Unity.Profiling.LowLevel.Unsafe; using System;
class Example { static readonly IntPtr markerHandle = ProfilerUnsafeUtility.CreateMarker("MyMarker", ProfilerUnsafeUtility.CategoryScripts, MarkerFlags.Default, 0); static unsafe void DoWork(int num) { ProfilerUnsafeUtility.BeginSample(markerHandle); //... ProfilerUnsafeUtility.EndSample(markerHandle); } }
Use Recorder to obtain per-frame timings in the Player for the specific marker name.
Additional resources: CreateMarker, EndSample.