Инструмент Compositor Mirror
LINK PC-VR DOCUMENTATION
Эта статья посвящена разработке с использованием PC SDK. Об оптимизации производительности для приложений Meta Quest на разных платформах см. в следующих статьях: Инструмент Compositor Mirror воспроизводит контент, отображающийся в гарнитуре Rift, на мониторе компьютера. В нем есть несколько вариантов отображения, которые могут быть полезны для разработки, устранения неполадок и презентаций.
Всё, что отображается на гарнитуре Rift, можно показать в инструменте Compositor Mirror, в том числе Oculus Home, границы защитной системы, внутриигровые уведомления и затухания переходов. Инструмент совместим со всеми играми и приложениями, которые можно разработать с использованием как нативного SDK для ПК, так и игрового движка.
Инструмент Compositor Mirror расположен в C:\Program Files\Oculus\Support\oculus-diagnostics\OculusMirror.exe.
Параметры воспроизведения изображений
Инструмент Compositor Mirror предоставляет несколько вариантов воспроизведения.
Режим по умолчанию рекомендуется для презентаций в прямом эфире и демонстраций. Если дважды щелкнуть OculusMirror в проводнике Windows или запустить из командной строки без указания вариантов, инструмент откроет окно размером 1 366 x 768 (пикселей) с изображением с правого глаза с бочкообразным искажением, а также слой границы защитной системы и слой уведомлений.
Ниже описаны другие режимы отображения.
OculusMirror.exe --LeftEyeOnly воспроизводит изображение с левого глаза с бочкообразным искажением:

OculusMirror.exe --RightEyeOnly воспроизводит изображение с правого глаза с бочкообразным искажением:

OculusMirror.exe --RectilinearBothEyes воспроизводит изображение с двух глаз с бочкообразным искажением:

OculusMirror.exe --RectilinearBothEyes --IncludeGuardian воспроизводит изображение с двух глаз с бочкообразным искажением, а также границу защитной системы. В следующем примере руки пользователя выступают за границу защитной системы в двух местах, на что указывают круглые отверстия в границе:

OculusMirror.exe --PostDistortion воспроизводит изображение с обоих глаз с поправкой на искажения и хроматические аберрации линз. При этом также будут воспроизводиться все другие варианты, которые отображаются в гарнитуре. Например, в следующем выводе используется параметр --PostDistortion, но также отображается граница защитной системы, поскольку она видна в гарнитуре. С --PostDistortion нельзя использовать никакие дополнительные параметры. Например, нельзя явно исключить уведомления или границы защитной системы, если они видны в гарнитуре.

Чтобы изменить размер окна, перетащите его границы на рабочем столе. Кроме того, вы можете использовать команду --Size width height, чтобы задать размер окна (в пикселях) в командной строке. Если вы превысите разрешение своего основного монитора, размер окна будет уменьшен до нужного. Пример:
OculusMirror.exe --Size 2160 2160 --RightEyeOnly
Поле зрения по умолчанию, используемое инструментом Compositor Mirror, не воспроизводит тот же объем контента, который виден в гарнитуре. Чтобы увеличить его, можно использовать параметр FovTanAngleMultiplier. В следующем примере указаны рекомендуемые настройки для оптимального соответствия полю зрения Oculus Rift:
OculusMirror.exe --FovTanAngleMultiplier 1.3 1.3
Для отображения слоя уведомлений используйте параметр --IncludeNotifications. Пример:
OculusMirror.exe --RectilinearBothEyes --IncludeNotifications
Вспышка при сбрасывании кадра
Иногда инструмент Compositor Mirror может сбрасывать кадры, отображаемые в гарнитуре Rift. Если вы хотите четко видеть, когда это происходит, используйте команду --FlashFrameDrops. В этом случае экран в Compositor Mirror будет мигать при сбрасывании кадра. Пример:
OculusMirror.exe --FlashFrameDrops --RectilinearBothEyes
Захват контента для трансляций
Вы можете комбинировать несколько предыдущих параметров, чтобы захватывать оптимальный для трансляций контент Oculus Rift. После запуска Compositor Mirror используйте Open Broadcaster Software (OBS), чтобы захватить и транслировать поток. Рекомендуемые настройки:
OculusMirror.exe --Size 1280 1280 --FovTanAngleMultiplier 1.3 1.3 --DisableTimewarp --SymmetricFov --RightEyeOnly --DisableFovStencil --IncludeSystemGui --IncludeNotifications
Для удобства повторного использования рекомендуется поместить эти настройки в файл .bat, чтобы не вводить их каждый раз, когда вы хотите транслировать контент. Вот как будет выглядеть содержимое файла .bat с рекомендуемыми настройками:
start "" "OculusMirror.exe" --Size 1280 1280 --FovTanAngleMultiplier 1.3 1.3 --DisableTimewarp --SymmetricFov --RightEyeOnly --DisableFovStencil --IncludeSystemGui --IncludeNotifications
exit