Unity получил поддержку Vulkan для Oculus Quest

478

Игровой движок Unity, на котором работает большинство товаров в магазине мобильных приложений Oculus, теперь поддерживает графический интерфейс Vulkan для очков Quest.

Vulkan является преемником OpenGL, стандартного графического API, который широко используется более двадцати лет. OpenGL похож на DirectX до версии 11, но контролируется открытым консорциумом компаний и является кроссплатформенным.

Подобно DX12 для Windows и Metal для оборудования Apple, Vulkan — это низкоуровневый графический API (LLAPI). Такие интерфейсы предоставляют разработчикам максимально прямой доступ к аппаратному обеспечению, перемещая многие задачи из драйверов графического процессора в игровой движок.

Vulkan спроектирован с нуля, чтобы использовать преимущества многоядерных процессоров, которые не были существенным фактором при создании OpenGL. Архитектура с подобным распределением вычислений полезна для Quest с восьмиядерным Snapdragon 835.

Стоит отметить, что Unity 2019.3 поддерживает Vulkan на Quest, а текущий плагин Oculus для Unity — по умолчанию нет. Это связано с проверкой, которую он выполняет, чтобы видеть, включен ли Vulkan, и которую можно обойти, закомментировав процедуру.

Низкий уровень доступа Vulkan к аппаратному обеспечению означает, что для вызовов отрисовки требуется меньше драйверов (инструкции от графики к центральному процессору о том, какие объекты рисовать). Таким образом в каждом кадре может быть больше вызовов отрисовки или меньшее потребление ресурсов на их прежнее количество.

В результате Vulkan позволяет разработчикам Quest создавать более подробные сцены, использовать увеличенные расстояния прорисовки, распределять высвобожденные ресурсы процессора для физики или просто увеличивать время автономной работы с прежним контентом.

Vulkan также должен обеспечивать значительно более быстрое время начальной загрузки. Вы заметили, что некоторые игры на Quest при первом запуске загружались очень долго? Это происходило из-за компиляции шейдеров. Шейдеры Vulkan компилируются намного проще.

Facebook утверждает, что Vulkan также позволяет выполнять HDR-рендеринг на мобильных устройствах. Это может быть полезно для следующих поколений очков.

Конкретных сравнительных тестов Unity с OpenGL и Vulkan на Quest пока нет. Когда Unity впервые добавила поддержку Vulkan в обычные игры для Android, она заявила о «повышении производительности на значение до 35%».

Конкурент Unity, Unreal Engine, получил поддержку Vulkan в Quest в августе 2019 года. Здесь также нет общедоступной статистики, но Facebook заявила, что в тестовой сцене Sun Temple интерфейс Vulkan сокращает время отрисовки кадра с 16 до 13 миллисекунд, что составляет примерно 20%.

Vulkan не сможет магически улучшить приложения. Львиная доля трудной работы по оптимизации под процессор всё равно ложится на плечи разработчиков каждого проекта. Но новый интерфейс обещает упростить задачу. А это — потенциально улучшенные приложения без необходимости покупать новые очки.

Не пропускайте важнейшие новости о дополненной, смешанной и виртуальной реальности — подписывайтесь на Голографику в Telegram, ВК, Twitter и Facebook! 

Далее: Unity пересобирает систему плагинов для платформ дополненной и виртуальной реальности