DirectX против OpenGL: что лучше или кто победит?

Здравствуйте, дорогие посетители моего блога! Сегодня мы с вами окончательно выясним, что лучше — DirectX или OpenGL в играх и детально проведем небольшое сравнение. О том, что такое Vulkan RT и для чего он нужен, вы можете почитать здесь.

DirectX против OpenGL

Выбираем между DirectX и OpenGL

Главное отличие между ними в том в том, что Директ имеет закрытый заточен под операционную систему Windows и в другой среде попросту не работает. OpenGL распространяется с открытым исходным кодом и подходит для любой платформы, которая может его поддерживать.

Это, например, Unix-системы, в том числе Android и iOS, которые сегодня являются весьма популярными игровыми платформами, а также ряд игровых консолей.

Любой энтузиаст может модифицировать эти библиотеки согласно собственным потребностям и использовать эти наработки при создании видеоигр.

Вне 3D графики вообще и видеоигр в частности ни DirectX, ни OpenGL не используются, так как не имеют необходимого инструментария для выполнения других задач.

Какой графический рендеринг лучше

Для игр под Windows поддержка OpenGL реализована слабо — список приложений, где можно активировать этот инструмент вместо DirectX, ограничивается парой десятков.

Самая известная и популярная из них — MOBA Dota 2. OpenGL любят инди-разработчики и добавляют его поддержку в свои проекты, часто криво и не доведя до ума.

DirectX — совсем другое дело. 9, 10 или 11 его версии скачивались отдельно, а вот 12 уже включена в базовый пакет Windows 10. На подавляющем количестве персональных компьютеров именно Виндовс и установлена в качестве операционной системы, а PC сегодня остается самой популярной игровой платформой.

Соответственно, для игр разработчики стараются максимально полно реализовать поддержку DirectX.

OpenGL, Vulkan RT и прочие подобные инструменты не составляют серьезной конкуренции и являются скорее экзотикой. Игры с их поддержкой не создаются массово в таком количестве, чтобы рассматривать это явление всерьез как достойное внимания.

Что касается производительности, то нужно рассматривать производительность конкретной игры. Да, некоторые видеоигры на OpenGL дают качество графики лучше, но это скорее исключение, чем правило. В основной массе тестов же DirectX обычно дает больший FPS при тех же настройках качества.

Что касается эмуляторов Андроид на Виндовс, например BlueStacks, Nox или LD Player, то тут ситуация немного другая. Так как напрямую Android не поддерживает DirectX и рассчитан на работу с OpenGL, взаимодействие РСМ и графических библиотек реализовано с помощью «костылей» и не всегда вменяемо. Тут, в первую очередь, нужно тестировать сам эмулятор.

Однако, имея некоторый опыт их использования, могу утверждать, что на OpenGL производительность почти всегда лучше.

Относительно холивара DirectX Vs OpenGL, а конкретнее, какой из инструментов победит, моё мнение следующее. Microsoft, который разрабатывает DirectX, будет позволять поддержку в играх сторонних библиотек ровно до тех пор, пока это будет выгодно и пока они не станут для него угрозой финансовых потерь.

Как только дело коснется прибыли, волшебным образом все прочие инструменты от конкурентов в среде Windows перестанут работать или будет работать неправильно. Как фактический монополист на рынке операционных систем компания может себе такое позволить.

Также советую почитать «Как решить проблему, если видеокартой не поддерживается DirectX 11 или 12». Буду признателен всем, кто расшарит этот пост в любой социальной сети. До скорой встречи!

С уважением, автор блога Андрей Андреев.

Для тех, кто хочет знать больше:

Понравилась статья? Дальше интересней… Подписывайтесь!
Нажимая на кнопку "Получать статьи", я даю согласие на рассылку,
обработку персональных данных и принимаю политику конфиденциальности.
Оставить комментарий:
Правила комментирования
Нажимая на кнопку "Оставить комментарий", я даю согласие на рассылку,
обработку персональных данных и принимаю политику конфиденциальности.
Вверх