Если коротко:

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-приложения. Они поддерживают плавность, но не заменяют оптимизацию.

Поделиться:TelegramВКонтакте

Источники

  1. Meta Horizon OS Developers: Asynchronous SpaceWarp
  2. Meta Horizon OS Developers: The compositor
  3. Meta Horizon OS Developers: App Spacewarp
  4. Khronos OpenXR: XR_FB_space_warp