Задать вопрос
@KeLaTy
C++ Developer

OpenGL или DirectX?

Я начинающий геймдев. Неплохо знаю SFML. Знаю c++. И вот меня потянуло на 3D игры. Начал думать: OpenGL или DirectX. В итоге недавно начал изучать DirectX,но и OpenGL тоже интересует. Прошу расписать плюсы и минусы,и что же будет лучше для создания игр/движков.
  • Вопрос задан
  • 8968 просмотров
Подписаться 2 Простой Комментировать
Решения вопроса 1
Nipheris
@Nipheris Куратор тега C++
Зависит от ваших текущих знаний и пожеланий, особенно от того, насколько вы готовы разбираться с каждой их технологий.

OpenGL это кроссплатформенное API, раньше было не очень удобно начинать работу с ним на Винде, сейчас доступны различные библиотеки (GLEW, GLFW) и это больше не проблема.
DirectX возможно даст вам больше возможностей, но там много заморочек с Windows-специфичными вещами, т.к. DirectX работает через технологию COM. Поначалу будет непривычно.

Я бы на вашем месте начал с OpenGL и посматривал на Vulkan. Знание OpenGL полезно ещё тем, что проще будет использовать родственные API, например WebGL, если захотите писать внутрибраузерный код.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Ni55aN
@Ni55aN
OpenGL и DirectX нельзя сравнивать, так как первый только для графики, а второй для всего (Direct3D для графики)

OpenGL
+ крассплатформенный (десктоп, мобайл, веб)
- для работы со звуком, вводом, сетью нужно искать соответствующие инструменты. Может отразиться на времени разработки

DirectX
- только Windows, xBox и т.п.
+ все инструменты в одном виде, готовое взял и пользуйся

Как по мне, создавать движки в наше время дело дорогостоящее и неоправданное, так как есть много готовых вариантов. Среди них немало поддерживают D3D + OpenGL, многие только OpenGL. Так что в плане охвата платформ OpenGL лучше.

То есть однозначно выбрать нельзя, нужно учитывать какие платформы вам нужны и как рассчитываете силы/время. Может проще и надежнее будет взять UE4 или ему подобный движок. На крайних случай Urho3D
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы