Разработчики компании Laminar Research, ответственные за невероятное программное обеспечение для авиасимулятора X-Plane, работали над тем, чтобы использовать Zink от Mesa для использования OpenGL на базе Vulkan, чтобы таким образом избежать драйверов OpenGL от производителей, которые могут отличаться по качеству на разных платформах. В X-Plane 12.04b3 эта цель наконец-то реализована.
X-Plane еще в 2020 году представил поддержку Vulkan, но сохранил поддержку OpenGL по причинам наследия и для поддержания совместимости с плагинами для авиасимулятора, полагающимися на вызовы OpenGL. Но из-за того, что некоторые аппаратные драйверы OpenGL были глючными или вели себя по-другому, а также из-за других проблем, которые возникали на протяжении многих лет, в прошлом году они начали адаптироваться к использованию слоя Zink OpenGL-on-Vulkan от Mesa, чтобы заменить использование аппаратных драйверов OpenGL напрямую.
Zink — транслятор вызовов OpenGL в Vulkan. Основной целью проекта является упрощение поддержки API OpenGL, который выходит из оборота и заменяется на Vulkan. Так же позволяет запускать программы, использующие OpenGL, на платформах, которые полностью удалили поддержку этого API.
Таким образом, теперь в X-Plane 12.04b3 для Windows и Linux, Zink используется для запуска поддержки OpenGL поверх родных аппаратных драйверов Vulkan, которые обычно находятся в лучшей форме. Разработчики X-Plane также рассматривают возможность использования Zink на macOS в будущем, идя по пути MoltenVK. Если им удастся достичь своей цели в macOS, они получат OpenGL на базе Zink, работающий на MoltenVK, который, в свою очередь, взаимодействует с драйвером Apple Metal.
Этот маршрут Zink уменьшает количество реализаций/целей OpenGL, о которых им нужно заботиться, и, в свою очередь, должен обеспечить более надежную производительность.
Более подробную информацию о Zink’ed X-Plane можно найти в блоге разработчиков X-Plane. Будет интересно посмотреть, пойдет ли по этому пути и другое кросс-платформенное программное обеспечение OpenGL.
Источник новости: https://www.phoronix.com/
Это интересное обновление для X-Plane! Внедрение Zink позволит избежать зависимости от вендорских драйверов OpenGL и обеспечит более стабильную и производительную работу программы. Очень рад, что разработчики продолжают улучшать пользовательский опыт.