UiDebugSnapshot
Неизменяемый снимок времени кадра, объёма рендера и работы кэша текстур.
Обзор
Получите UiDebugSnapshot через UIContext#debugCounters().snapshot(). Снимок относится к одному кадру и содержит нормализованные времена кадра, число команд и batch-ей, а также активность кэша текстур. GPU-время может быть равно -1, если активный backend не умеет его измерять; остальные времена и счётчики неотрицательны.
Чтение метрик кадра
UiDebugSnapshot snapshot = context.debugCounters().snapshot();
if (snapshot.frameGpuMillis() >= 0.0f) {
logGpuTime(snapshot.frameGpuMillis());
}
logRenderLoad(snapshot.drawCommandCount(), snapshot.batchCount());
API
Кадр
| Метод | Описание |
|---|---|
frameIndex() |
Возвращает индекс кадра, представленного снимком. |
UiDebugSnapshot::frameIndex()
frameIndex()
Возвращает индекс кадра, представленного снимком.
Возвращает long: Индекс снятого кадра.
Время кадра
| Метод | Описание |
|---|---|
framesPerSecond() |
Возвращает измеренное число кадров в секунду или ноль при отсутствии данных. |
frameTotalMillis() |
Возвращает полное время кадра по настенным часам. |
frameGpuMillis() |
Возвращает GPU-время кадра, если backend его предоставляет. |
UiDebugSnapshot::framesPerSecond()
framesPerSecond()
Возвращает измеренное число кадров в секунду или ноль при отсутствии данных.
Возвращает float: Неотрицательное число кадров в секунду.
UiDebugSnapshot::frameTotalMillis()
frameTotalMillis()
Возвращает полное время кадра по настенным часам.
Возвращает float: Неотрицательная длительность в миллисекундах.
UiDebugSnapshot::frameGpuMillis()
frameGpuMillis()
Возвращает GPU-время кадра, если backend его предоставляет.
Возвращает float: GPU-время в миллисекундах или -1 при отсутствии данных.
Работа рендера
| Метод | Описание |
|---|---|
drawCommandCount() |
Возвращает число команд draw list, записанных за кадр. |
batchCount() |
Возвращает число backend batch-ей, записанных за кадр. |
UiDebugSnapshot::drawCommandCount()
drawCommandCount()
Возвращает число команд draw list, записанных за кадр.
Возвращает int: Неотрицательное число draw-команд.
UiDebugSnapshot::batchCount()
batchCount()
Возвращает число backend batch-ей, записанных за кадр.
Возвращает int: Неотрицательное число batch-ей.
Кэш текстур
| Метод | Описание |
|---|---|
lastTextureCacheMissReason() |
Возвращает последнюю нормализованную причину промаха кэша текстур. |
UiDebugSnapshot::lastTextureCacheMissReason()
lastTextureCacheMissReason()
Возвращает последнюю нормализованную причину промаха кэша текстур.
Возвращает String: Причина промаха или NONE, если причина отсутствует.