Пятница, 20 Мая 2022, 18:06

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 3 из 3
  • «
  • 1
  • 2
  • 3
Модератор форума: Gnomov  
Форум игроделов » Создание игр и всё, что с этим связано » Обсуждение геймдева » DirectX vs OpenGL) (Тема шуточная, но серьезная.)
DirectX vs OpenGL)
LorderonДата: Суббота, 18 Сентября 2010, 18:58 | Сообщение # 41
старожил
Сейчас нет на сайте
QWER56, это точно! Я за DirectX. Сейчас начал изучать ХНА для DirectX СДК.
ezhickovichДата: Суббота, 18 Сентября 2010, 19:20 | Сообщение # 42
[Великий и могучий хозяинъ]
Сейчас нет на сайте
QWER56, просто обычно длл опенГЛ идут вместе с дровами ( иногда их ложат вместе с игрой... )
Так что это весьма надуманно...
И далеко не критерий...



Я: О великий повелитель этой ничтожной вселенной - сокращённо ЁЖ!
SeidmannenДата: Суббота, 18 Сентября 2010, 19:31 | Сообщение # 43
Für den König!
Сейчас нет на сайте
Quote
обычно длл опенГЛ идут вместе с дровами ( иногда их ложат вместе с игрой... )
Так что это весьма надуманно...
И далеко не критерий...

между прочим...
Есть у меня такая догадка, что когда игра требует установки DirectX и он устанавливается, мастер установки устанавливает OpenGL biggrin
ezhickovichДата: Суббота, 18 Сентября 2010, 19:33 | Сообщение # 44
[Великий и могучий хозяинъ]
Сейчас нет на сайте
darthRevan, нет... happy


Я: О великий повелитель этой ничтожной вселенной - сокращённо ЁЖ!
SeidmannenДата: Суббота, 18 Сентября 2010, 19:35 | Сообщение # 45
Für den König!
Сейчас нет на сайте
ezhickovich, ну мастер установки DirectX, а устанавливает он OpenGL.. smile
Эту идею надо запатентовать.. *ушел в деловой офис Microsoft*
Assassin5Дата: Воскресенье, 26 Декабря 2010, 13:23 | Сообщение # 46
частый гость
Сейчас нет на сайте
DirectX vs OpenGL
Весь вопрос в том, что вы с ними собираетесь делать. Если вам нужно очень высокое качество графики, новейшие технологии и т.п. то тут только DirectX и Windows. Если вы делаете игры для MacOS X или Linux - то тут только OpenGL (другого выбора у вас нет).

Play Station 3 тоже вроде использует OpenGL (там система на базе Linux, поправте, если я не прав).
XBox 360, напротив, использует DirectX.

Вообщем, если вы за прогресс в графике, и против мультиплатформенности - то только DirectX. Круче DX11 пока еще ничего не придумали.

P.S. OpenGL вроде устанавливается вместе с системой, и входит в пакет драйверов для видеокарты.


http://vkontakte.ru/id84076405
ArchidoДата: Воскресенье, 26 Декабря 2010, 15:35 | Сообщение # 47
Сэнсэй
Сейчас нет на сайте
Хех, вечная тема biggrin . Выскажусь и я, как пользователь обоих GAPI cool

Начнем с точки зрения разработки\изучения GAPI начинающим разработчиком(скажем, оный не имеет большого опыта в программировании, "ООП" обзывает страшными словами, etc).
OpenGL - имеет простую процедурную архитектуру(аля просто С), DirectX в свою очередь более сложную ООП (дин. память, интерфейсы, etc). Также последний имеет некоторые специфичные вещи (Default/Managed память, Lost Device, etc) и не имеет вещей в чистом виде, упрощающих разработку и изучение(glBegin/glEnd, Matrix Stack, etc).
(Я думаю все поняли, что я имею в виду Direct3D9, ибо 11-тый сильно сложнее. Для кого слово "шейдер" вызывает тихий ужас, с 11-тым пусть лучше не связывается :). Т.к. все особенности и преимущества последнего связаны с шейдерами).
Поэтому со своей колокольни скажу, что начинающему разработчику, пришедшему в мир программирования графики и желающему освоить мощное GAPI - OpenGL mush have. Это мое имхо (так когда-то я и поступил, как результат - обладаю знаниями обоих, за очень небольшой промежуток времени).

С другой стороны, OpenGL на PC платформе находится в очень печальном положении.
Причин, можно сказать, несколько.
Во-первых, внутри драйверов он реализуется "на усмотрение" вендора, они всего лишь подгоняют все под итогую голую спецификацию. Видимо от уделения малого времени на разработку OpenGL драйвера компанией AMD(ATI), OGL ведет себя на их видеокартах очень печально, очень и очень. Для разработчиков появляются другие проблемы. Например, различность компиляторов шейдеров у каждого вендора. Поэтому любой шейдер может скомпилироваться у одного, а у другого нет. Все зависит от специфики компилятора. Ну и так далее.

Во-вторых, это система расширений OpenGL. По-началу, ее относили к его плюсам. Так как, например, если появляется какая-нибудь "фича", ее "оформляют" в виде расширения и после обновления драйвера ею уже можно воспользоваться (для справки, в DirectX для этого нужно ждать выхода новой версии последнего).
Ну, а на практике получилось вообщем-то как обычно: идея хороша, а реализация никакая. В результате появляется куча различных vendor-specific расширений, которые работают только на картах производителей :D. Это создает большую головную боль для разработчиков.
Такую же боль создает отслеживание этих самых расширений на каждой системе, ибо расширения разнятся от видеокарты к видеокарте, и если чего-либо не удается обнаружить приходиться часто в корне менять методы\логику\etc.
В общем случае - это все геморой и никому ненужные трудозатраты.

Ну, а в третьих, самая основная проблема OpenGL - это те, кто ведут его разработку последнее время: ARB (Khronos). Представляет собой большущий консорциум разных компаний, каждой из которых от OpenGL нужно что "особенное" или вообще непонятно что. Каждый приследует свои интересы и договориться они, соответственно, не могут. (хорошим примером этому следует выход OpenGL 3.0, когда обещано было столько, что на него возлагались большие надежды. Но результатом стал большущий epic fail. Многие думаю знают эту историю smile ).

Direct3D9, в свою очередь, тоже имел некоторую зависимость от видеокарты(Кто работал на DX, знает что такое капсы :D) , как и OpenGL со своими расширениями.
Из Direct3D11 выбросили все недостатки 9\10 (в основном 9), весь заявленный функционал стабильно работает на всех картах, поддерживающих его (нет никаких капсов), следовательно нет никакой головной боли для разработчиков.

Т.е. рынок PC платформы диктует использование именно DX (на Linux и MacOs X мало кто равняется), фактически это означает и поддержку Xbox.
PlayStation поддерживает, как уже выше писали, OpenGL да. Но он основан на стандартной спецификации и частично модифицирован компанией Sony, но в общем-то это тот же OpenGL, с тем лишь отличием, что отсутствуют всяческие проблемы с расширениями и заявленная функциональность отрабатывает на все 100%, никаких проблем.

На Mobile платформах, собственно правит OpenGL ES, некоторые проблемы с расширениями имеются, но они очень небольшого масштаба. Объясняется все обилием Mobile платформ и простой открытой спецификацией.

С точки зрения производительности, между DX и OGL можно поставить знак равно. Удобство\неудобство оных определяется лишь любителями геймдева.

Вообщем как-то так biggrin
P.S. Блин, что то слишком много букафф получилось happy


C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)

Сообщение отредактировал Archido - Воскресенье, 26 Декабря 2010, 15:39
Форум игроделов » Создание игр и всё, что с этим связано » Обсуждение геймдева » DirectX vs OpenGL) (Тема шуточная, но серьезная.)
  • Страница 3 из 3
  • «
  • 1
  • 2
  • 3
Поиск:

Все права сохранены. GcUp.ru © 2008-2022 Рейтинг