Recorder
класс в UnityEngine.Profiling
Выполнено в:UnityEngine.CoreModule
Описание
Записывает профилирующие данные, полученные конкретным пробоотборником.
Recorder накапливает время, прошедшее для каждой пары Begin/End в течение кадра. После включения он суммирует интервалы времени между сэмплами Begin и End, созданными Sampler. Используйте elapsedNanoseconds, чтобы получить накопленное время за предыдущий кадр.
using UnityEngine; using UnityEngine.Profiling;
public class ExampleClass : MonoBehaviour { Recorder behaviourUpdateRecorder; void Start() { behaviourUpdateRecorder = Recorder.Get("BehaviourUpdate"); behaviourUpdateRecorder.enabled = true; }
void Update() { if (behaviourUpdateRecorder.isValid) Debug.Log("BehaviourUpdate time: " + behaviourUpdateRecorder.elapsedNanoseconds); } }
Примечание:
Recorder собирает данные независимо от состояния Profiler. Когда Recorder включён, данные накапливаются при каждом срабатывании его Sampler. Эти сведения эквивалентны тем, что вы видите в представлении Hierarchy в Profiler Окно.
В настоящее время семплеры доступны только в редакторе и в проигрывателях для разработки. Recorder.isValid проверить, может ли Recorder собирать данные.
Recorder поддерживает только внутренние статические метки профайлера и метки, сформированные CustomSampler. Динамические внутренние метки, формируемые вызовами методов из скриптов, и метки, формируемые Profiler.BeginSample не поддерживаются.
Дополнительные ресурсы: Sampler, Recorder.isValid, Recorder.elapsedNanoseconds.
Свойства
| Свойство | Описание |
|---|---|
| elapsedNanoseconds | Накопленное время пары Начало/Конец для предыдущего кадра в наносекундах. (Только чтение) |
| enabled | Включает запись. |
| gpuElapsedNanoseconds | Получает накопленное время GPU, в наносекундах, для кадра. Recorder имеет задержку в три кадра, так что это даёт время для кадра, который был за три кадра до того, как вы получили доступ к этому свойству. (Только для чтения). |
| gpuSampleBlockCount | Получает количество пар времени начала/окончания, которые GPU Запись имеет задержку в три кадра, так что это дает время для кадра, который был на три кадра раньше того, на котором вы получили доступ к этому свойству. (Только для чтения). |
| isValid | Возвращает true, если Recorder допустим и может собирать данные. (только для чтения) |
| sampleBlockCount | Количество вызовов пар Begin/End в течение предыдущего кадра. (Только для чтения) |
Открытые методы
| Метод | Описание |
|---|---|
| CollectFromAllThreads | Настраивает записывающую программу на сбор образцов из всех потоков. |
| FilterToCurrentThread | Настраивает записывающее устройство на сбор данных только из текущего потока. |
Статические методы
| Метод | Описание |
|---|---|
| Get | Используйте эту функцию для получения Recorder для конкретной метки Profiler. |