Мои Уведомления
Привет, !
Мой Аккаунт Мои Финансы Мои Подписки Мои Настройки Выход
Руководство API скрипты

ProfilerUnsafeUtility.SetMarkerMetadata

Объявление

public static void SetMarkerMetadata(IntPtr markerPtr, int index, string name, byte type, byte unit);

public static void SetMarkerMetadata(IntPtr markerPtr, int index, char* name, int nameLen, byte type, byte unit);

Параметры

markerPtr Ручка маркера профилировщика.
index Индекс параметров метаданных.
name Имя параметра метаданных.
type Тип метаданных. Должно быть одним из значений ProfilerMarkerDataType.
unit Блок метаданных. Должно быть одним из значений ProfilerMarkerDataUnit.
nameLen Длина имени параметра метаданных.

Описание

Установить имя и тип метаданных маркера Profiler.

Используйте, чтобы добавить дополнительный контекст использования к параметру метаданных образца Profiler.

using Unity.Collections.LowLevel.Unsafe; using Unity.Profiling; using Unity.Profiling.LowLevel; using Unity.Profiling.LowLevel.Unsafe; using System; class Example { static IntPtr MakeMarkerWithIntMetadata(string name, string paramName) { var handle = ProfilerUnsafeUtility.CreateMarker(name, ProfilerUnsafeUtility.CategoryScripts, MarkerFlags.Default, 1); ProfilerUnsafeUtility.SetMarkerMetadata(handle, 0, paramName, (byte)ProfilerMarkerDataType.Int32, (byte)ProfilerMarkerDataUnit.Count); return handle; } static readonly IntPtr markerHandle = MakeMarkerWithIntMetadata("MyMarker", "Work Idx"); static unsafe void DoWork(int num) { var metadata = stackalloc ProfilerMarkerData[1]; metadata[0].Type = (byte)ProfilerMarkerDataType.Int32; metadata[0].Size = (uint)UnsafeUtility.SizeOf(); metadata[0].Ptr = UnsafeUtility.AddressOf(ref num); ProfilerUnsafeUtility.BeginSampleWithMetadata(markerHandle, 1, metadata); //... ProfilerUnsafeUtility.EndSample(markerHandle); } }

Смотрите так же: ProfilerMarkerDataType, ProfilerMarkerDataUnit.

Вы можете отблагодарить автора, за перевод документации на русский язык. ₽ Спасибо
API скрипты 2021.3