Если коротко:
ASW, или Asynchronous SpaceWarp, применяется в PC VR: если приложение не удерживает частоту дисплея, среда Meta использует предыдущие кадры и данные движения, чтобы синтезировать промежуточный frame. ATW корректирует готовое изображение по свежему повороту головы, а Application SpaceWarp предназначен для приложений Quest и требует от разработчика буферы движения и глубины. Ни один метод не заменяет стабильный нативный FPS.
Asynchronous SpaceWarp VR использует, когда приложение не успевает выдавать новый кадр к обновлению дисплея. ASW синтезирует промежуточное изображение, но не выполняет полноценный рендеринг сцены и не устраняет нехватку производительности.
ASW, ATW и AppSW
ATW, или Asynchronous TimeWarp, работает перед выводом. Compositor корректирует последний frame по свежему повороту головы. Это снижает задержку, но не показывает изменения объектов и не восстанавливает параллакс от перемещения головы.
ASW, или Asynchronous SpaceWarp, относится к PC VR в среде Meta. Алгоритм анализирует движение и прогнозирует промежуточный кадр. В примере Meta приложение Rift вместо 90 FPS работает при 45 FPS, а ASW заполняет пропуски. ATW при этом продолжает снижать задержку движения головы.
Application SpaceWarp, или AppSW, создан для автономных приложений Quest. Разработчик передаёт motion vectors с depth buffer, а runtime использует их для экстраполяции объектов и позиционной репроекции. В OpenXR этому служит расширение XR_FB_space_warp.
Базовый принцип объяснён в статье о репроекции в VR.
Почему ASW не даёт бесплатный FPS
Синтезированный кадр является прогнозом. Логика, физика и ввод продолжают обновляться с реальной частотой приложения. Дисплей может получить 90 изображений в секунду, хотя игра нативно рассчитала 45.
Синтез требует ресурсов. При AppSW приложение строит дополнительные буферы, затем compositor обрабатывает их. Meta сообщала о запасе до 70% в начальных тестах, но это не гарантия для любой сцены.
Стабильный нативный FPS остаётся предпочтительным. Связь частоты и времени кадра разобрана в материале про бюджет производительности VR.
Откуда берутся артефакты
ASW лучше прогнозирует линейное motion, чем резкую смену направления. Частицы, прозрачность, тонкие детали и объект, внезапно вышедший из-за края, могут дать двоение, волнистый контур или разрыв. Ошибка особенно заметна возле рук, прицела и head-locked интерфейса.
ATW не создаёт скрытые пиксели, поэтому при быстром повороте возможны тёмные края. AppSW зависит от точных векторов движения и глубины: неверный buffer переносит пиксели не туда. Работа на половинной частоте сохраняет задержку логики. См. разбор motion-to-photon latency.
Нужно ли отключать ASW
В автоматическом режиме PC runtime применяет ASW при нехватке кадров. Для теста разработчик может сравнить одну сцену с разными режимами через официальный Oculus Debug Tool. Пользователю сначала стоит снизить разрешение или тяжёлые настройки и проверить время кадра.
Если приложение стабильно держит цель без ASW, синтез не нужен. Если нагрузка постоянно выше бюджета, ASW способен уменьшить рывки, но артефакты остаются компромиссом. Оценивайте счётчик FPS вместе с движением объектов, краями интерфейса и задержкой ввода.
Итог
ATW корректирует позу готового изображения, ASW прогнозирует кадры PC VR, а Application SpaceWarp использует данные Quest-приложения. Они поддерживают плавность, но не заменяют оптимизацию.