Unity 6.3
0 онлайн 63 гостей 3 в системе
Вход

RawFrameDataView

класс в UnityEditor.Profiling

Наследуется от:Profiling.FrameDataView

Описание

Обеспечивает доступ к данным Profiler для конкретного кадра и потока.

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

RawFrameDataView может быстро перебрать все выборки в кадре без каких-либо внутренних выделений памяти.

using System;
using Unity.Collections;
using UnityEditor.Profiling;
using UnityEditorInternal;
using UnityEngine;
using UnityEngine.Profiling;

public class Example { public static long GetGCAllocs(int frameIndex) { long totalGcAllocSize = 0;

int gcAllocMarkerId = FrameDataView.invalidMarkerId;

for (int threadIndex = 0;; ++threadIndex) { using (RawFrameDataView frameData = ProfilerDriver.GetRawFrameDataView(frameIndex, threadIndex)) { if (!frameData.valid) break;

if (gcAllocMarkerId == FrameDataView.invalidMarkerId) { gcAllocMarkerId = frameData.GetMarkerId("GC.Alloc"); if (gcAllocMarkerId == FrameDataView.invalidMarkerId) break; }

int sampleCount = frameData.sampleCount; for (int i = 0; i < sampleCount; ++i) { if (gcAllocMarkerId != frameData.GetSampleMarkerId(i)) continue;

long gcAllocSize = frameData.GetSampleMetadataAsLong(i, 0); totalGcAllocSize += gcAllocSize; } } }

return totalGcAllocSize; } }

Дополнительные ресурсы: ,FrameDataView,, ,HierarchyFrameDataView,.

Статические свойства

Свойство Описание
invalidSampleIndexЭта константа определяет индекс выборки, который не соответствует ни одному действительному Profiler выборке.

Открытые методы

Метод Описание
GetFlowEventsПолучает все события потока для текущего кадра и потока.
GetSampleCallstackПолучает стек вызовов, связанный с указанным образцом.
GetSampleCategoryIndexПолучает категорию маркера Profiler для конкретной выборки.
GetSampleChildrenCountПолучает количество дочерних выборок для конкретной выборки.
GetSampleChildrenCountRecursiveПолучает количество прямых и косвенных дочерних выборок для конкретной выборки.
GetSampleFlagsПолучает флаги маркеров Profiler для конкретного образца.
GetSampleFlowEventsПолучает события потока, происходящие из конкретной выборки.
GetSampleMarkerIdПолучает идентификатор маркера Profiler, который уникально идентифицирует имя образца.
GetSampleMetadataAsDoubleПолучает значение метаданных образца как двойное.
GetSampleMetadataAsFloatПолучает образец метаданных в виде числа с плавающей запятой.
GetSampleMetadataAsIntПолучает значение метаданных образца в виде целого числа.
GetSampleMetadataAsLongВозвращает значение метаданных сэмпла в формате long.
GetSampleMetadataAsSpanВозвращает Span<T> представление метаданных образца.
GetSampleMetadataAsStringПолучает значение метаданных образца в виде строки.
GetSampleMetadataCountПолучение количества метаданных, связанных с конкретной выборкой.
GetSampleNameПолучает имя конкретного образца.
GetSampleStartTimeMsПолучает время начала выборки. Время выражается в миллисекундах.
GetSampleStartTimeNsПолучает время начала выборки. Время выражается в наносекундах.
GetSampleTimeMsПолучает продолжительность выборки. Время выражается в миллисекундах.
GetSampleTimeNsПолучает продолжительность образца. Время выражается в наносекундах.
Унаследованные члены 3

Статические свойства

СвойствоОписание
invalidMarkerIdИдентификатор недействительного маркера.
invalidThreadIdЭта константа определяет идентификатор потока, который не соответствует никакому действительному идентификатору потока.
invalidThreadIndexЭта константа определяет индекс потока, который не соответствует никакому действительному индексу потока.

Свойства

СвойствоОписание
frameFpsТекущее количество кадров в секунду (FPS) для кадра.
frameGpuTimeMsКоличество времени кадра GPU в миллисекундах.
frameGpuTimeNsКоличество времени кадра GPU в наносекундах.
frameIndexИндекс кадра для FrameDataView.
frameStartTimeMsВремя начала кадра CPU в миллисекундах.
frameStartTimeNsВремя начала кадра CPU в наносекундах.
frameTimeMsКоличество времени кадра CPU в миллисекундах.
frameTimeNsКоличество времени кадра CPU в наносекундах.
maxDepthМаксимальные уровни дочерних выборок в данных потока.
sampleCountКоличество образцов в кадре для потока.
threadGroupNameИмя группы, к которой относится поток.
threadIdПостоянный идентификатор, связанный с потоком.
threadIndexИндекс потока в текущем кадре.
threadNameИмя потока.
validTrue после того, как данные кадра для потока были обработаны и готовы для извлечения.

Открытые методы

МетодОписание
GetAllCategoriesПолучает все доступные Profiler Категории для текущей сессии профилирования.
GetCategoryInfoПолучает информацию о категории Profiler для данной категории ID.
GetCounterValueAsDoubleПолучает последнее значение маркера счетчика в кадре в качестве двойного типа данных '.
GetCounterValueAsFloatПолучает последнее значение маркера счетчика в кадре в качестве типа данных float'.
GetCounterValueAsIntПолучает последнее значение маркера счетчика в кадре в качестве типа данных int'.
GetCounterValueAsLongПолучает последнее значение маркера счетчика в кадре в качестве типа данных long.
GetCounterValuePtrПолучает небезопасный указатель на последнее значение маркера счетчика в кадре.
GetFrameMetaDataПолучает метаданные, связанные с кадром.
GetFrameMetaDataCountПолучает общее число кусочков метаданных для каждой пары id и тег в кадре.
GetGfxResourceInfoПолучает информацию для заданного идентификатора ресурса графики.
GetMarkerCategoryIndexПолучает категорию маркера Profiler для определенного идентификатора маркера.
GetMarkerFlagsПолучает флаги маркера Profiler для определенного идентификатора маркера.
GetMarkerIdПолучить идентификатор маркеров Profiler для конкретного имени.
GetMarkerMetadataInfoПолучает информацию о метаданных маркера Profiler для определенного идентификатора маркера.
GetMarkerNameПолучает имя маркера Profiler для определенного идентификатора маркера.
GetMarkersПолучает все доступные метки для текущего сеанса профилирования.
GetSessionMetaDataПолучает метаданные сессии, в которой произошел этот кадр, как NativeArray.
GetSessionMetaDataCountПолучает общее количество кусочков метаданных для каждой пары id и тега в сессии Profiler.
GetUnityObjectInfoПолучает информацию UnityEngine.Object для заданного экземпляра ID.
GetUnityObjectNativeTypeInfoПолучает информацию типа Unity.
GetUnityObjectNativeTypeInfoCountВозвращает нативные типы, учитываемые при захвате.
HasCounterValueВозвращает true для маркера, который включает счетчик в активном кадре.
ResolveMethodInfoВозвращает имя метода и сведения о расположении для указанного адреса метода.