Перейти к содержанию

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, если причина отсутствует.