Если коротко:
Late latching обновляет данные о позе головы ближе к отправке или композиции готового кадра, чтобы сократить возраст измерения к моменту показа. Прогнозирование оценивает будущую позу, а reprojection корректирует уже построенное изображение; это разные этапы обработки. Метод уменьшает часть задержки, но не компенсирует медленную игровую логику, тяжёлый рендеринг или нестабильное время кадра.
Late latching VR использует для обновления позы ближе к выводу кадра и сокращения её возраста.
VR-приложение начинает строить кадр до его показа. Если использовать позу головы, измеренную в начале, к моменту вывода пользователь уже успеет повернуться. Late latching обновляет часть данных позы позже — ближе к отправке команд или композиции — и тем самым сокращает видимое отставание.
Что именно обновляется поздно
Система резервирует место для transform камеры или контроллера и подменяет его свежим значением после подготовки основной части кадра. Геометрия не обязательно пересчитывается полностью. Поэтому выигрыш зависит от того, какие объекты и буферы поддерживает реализация.
Это не означает «рендер без задержки»: датчики, GPU и дисплей всё равно занимают время.
Прогноз позы
Runtime оценивает, где окажется голова к предполагаемому моменту показа. Для равномерного поворота прогноз точен, для резкой остановки — хуже. Late latching использует более свежий вход и сокращает горизонт прогноза.
Слишком позднее обновление может конфликтовать с данными, уже использованными для culling, теней или физики. Поэтому технология применяется к контролируемой части pipeline.
Отличие от reprojection
Late latching обновляет transform внутри создаваемого кадра. Reprojection берёт уже готовое изображение и преобразует его под новую позу. Они способны работать вместе: первая уменьшает устаревание данных, вторая корректирует результат перед дисплеем.
Подробно о втором механизме — в статье репроекция в VR.
Контроллеры и руки
Позднее обновление особенно заметно для объекта рядом с рукой. Но физика и игровая логика могли использовать более раннюю позу, поэтому визуальная кисть иногда расходится с точкой столкновения. Архитектура должна явно разделять render pose и simulation pose.
Не применяйте позднюю подмену к объекту, чья трансформация влияет на уже рассчитанные зависимости, без проверки документации движка.
Как включать
Используйте штатную настройку runtime или плагина производителя. Сначала подтвердите поддержку устройства и версии движка, затем сравните один тестовый сценарий. Самодельное изменение матриц в конце кадра легко нарушает стерео и culling.
Тестирование
Поворачивайте голову и руки на контрастном фоне, записывайте frame timing и проверяйте быстрые остановки. Отдельно тестируйте пропущенный кадр, смену уровня и динамически созданные компоненты.
Итог
Late latching уменьшает возраст позы, используемой для визуального кадра. Он дополняет прогноз и reprojection, но не ускоряет тяжёлую игровую логику. Польза появляется при поддерживаемой реализации и аккуратном разделении визуального и физического состояния.