Праздный вопрос: последние Direct3D vs OpenGL?
От: Дм.Григорьев  
Дата: 05.05.08 23:12
Оценка:
Всем привет. Собсна, сабж. Кроссплатформенность не рассматриваем, пущай будет одна винда.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
http://dimgel.ru/lib.web — thin, stateless, strictly typed Scala web framework.
Re: Праздный вопрос: последние Direct3D vs OpenGL?
От: Phoenics Россия https://sourceforge.net/projects/phengine
Дата: 06.05.08 04:40
Оценка: 5 (1)
Здравствуйте, Дм.Григорьев, Вы писали:

ДГ>Всем привет. Собсна, сабж. Кроссплатформенность не рассматриваем, пущай будет одна винда.


Для того что бы дать более менее вразумительный ответ на этот изъезженый вопрос, надо обладать большей информацией о стоящей перед вами задаче. В общем и вцелом, если кросплатформ не нужен, то с точки зрения скорости разработки лучше выбрать директ. Однако могут быть исключения, например если вам кровь из носу нужны геометрические шейдеры, и что бы это всё работало не только на висте но и на 2000 винде например, то без огла вам не обойтись

Сформулируйте стоящую перед вами задачу менее абстрактно, что бы получить менее абстрактный ответ.
---=== С наилучшими пожеланиями, Phoenics ===---
_
Re[2]: Праздный вопрос: последние Direct3D vs OpenGL?
От: Дм.Григорьев  
Дата: 06.05.08 12:56
Оценка:
Здравствуйте, Phoenics, Вы писали:

P>Сформулируйте стоящую перед вами задачу менее абстрактно, что бы получить менее абстрактный ответ.


Да я ж написал, что вопрос праздный. Задачи никакой нет. И знаком я с D3D и OpenGL довольно поверхностно. Просто заметил, что писатели последних игрушек предпочитают DX. Я знаю, что DX — это не только D3D, но подумалось — неужели в OpenGL всё так плохо?
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
http://dimgel.ru/lib.web — thin, stateless, strictly typed Scala web framework.
Re[3]: Праздный вопрос: последние Direct3D vs OpenGL?
От: NikeByNike Россия  
Дата: 06.05.08 21:30
Оценка: 10 (1)
Здравствуйте, Дм.Григорьев, Вы писали:

P>>Сформулируйте стоящую перед вами задачу менее абстрактно, что бы получить менее абстрактный ответ.


ДГ>Да я ж написал, что вопрос праздный. Задачи никакой нет. И знаком я с D3D и OpenGL довольно поверхностно. Просто заметил, что писатели последних игрушек предпочитают DX. Я знаю, что DX — это не только D3D, но подумалось — неужели в OpenGL всё так плохо?


Холивар?
  • Писатели уже лет 8, не меньше, предпочитают директ. Ещё на первой кри, приводилась статистика о том что ДХ игр на порядок (в 10 раз) больше чем GL (причём ему сильно помогал Кармак, по старой памяти).
  • На мой, лично мой взгляд, который я никому не навязываю и по поводу которого спорить не буду — ДХ в общем случае несравнимо более дружественная к разработчику система. Более удобная архитектура, лучшая документация, всё в одном, лучший суппорт и универсальность, адекватная логика. Для игр — самое то.
  • Если рассматривать только большие игры, то DX более кроссплатформенная система (PC & XBox) vs (онли РС (ну может ещё мак и линукс для извергов, но я таких не знаю) (не надо ля-ля про PS3))...
  • При разработке большой самостоятельной игры — выбор АПИ почти не на что не влияет... При создании маленькой и средней — лучше поискать готовый движок.
  • Последние 2.5 года своей геймдевелоперской жизни писал на GL... Специфика
  • Если бы писал редактор, а не игру — выбор бы однозначно пал на GL...
  • Нужно разобрать угил.
    Re[4]: Праздный вопрос: последние Direct3D vs OpenGL?
    От: Дм.Григорьев  
    Дата: 06.05.08 21:55
    Оценка:
    Здравствуйте, NikeByNike, Вы писали:

    NBN>
  • Если рассматривать только большие игры, то DX более кроссплатформенная система (PC & XBox) vs (онли РС (ну может ещё мак и линукс для извергов, но я таких не знаю) (не надо ля-ля про PS3))...

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

    NBN>
  • Последние 2.5 года своей геймдевелоперской жизни писал на GL... Специфика

    Эээ... в чём (в двух словах для ламеров)? Кстати, насколько хороши и полезны всякие остальные DirectPlay, DirectSound и т.п.? Тяжело ли без них OpenGL-ному писателю?

    NBN>
  • Если бы писал редактор, а не игру — выбор бы однозначно пал на GL...

    Почему?
    ... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
  • http://dimgel.ru/lib.web — thin, stateless, strictly typed Scala web framework.
    Re[4]: Праздный вопрос: последние Direct3D vs OpenGL?
    От: Дм.Григорьев  
    Дата: 06.05.08 21:57
    Оценка:
    Здравствуйте, NikeByNike,

    А касательно непосредственно возможностей 3D-графики? Выше Phoenics что-то сказал про геометрические шейдеры ("что такое квадратный трёхчлен?" — "такого безобразия и представить себе не могу!"), из его слов получается, что OpenGL по крайней мере в некоторых аспектах круче.
    ... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
    http://dimgel.ru/lib.web — thin, stateless, strictly typed Scala web framework.
    Re[4]: Праздный вопрос: последние Direct3D vs OpenGL?
    От: Сергей  
    Дата: 06.05.08 22:11
    Оценка:
    Здравствуйте, NikeByNike, Вы писали:

    NBN>...(не надо ля-ля про PS3))...

    Почему? Там не OGL или ты не считаешь ее сильно популярной?
    Re[5]: Праздный вопрос: последние Direct3D vs OpenGL?
    От: NikeByNike Россия  
    Дата: 06.05.08 22:15
    Оценка: 10 (1)
    Здравствуйте, Дм.Григорьев, Вы писали:

    ДГ>Ну если зашла речь про кроссплатформенность, то движок Q2 (если я не ошибаюсь, самый популярный в своё время, десятки игр на нём сделали) был OpenGL-ный, благодаря чему его на линуха портировали.

    Ну да, Кармак сильно способствовал Но это было уже давно.
    К2 портировали по моему даже на iPod... Много куда...

    NBN>>
  • Последние 2.5 года своей геймдевелоперской жизни писал на GL... Специфика

    ДГ>Эээ... в чём (в двух словах для ламеров)?

    Мобильные и прочие эмбеддед девайсы.

    ДГ>Кстати, насколько хороши и полезны всякие остальные DirectPlay, DirectSound и т.п.? Тяжело ли без них OpenGL-ному писателю?

    Для звука есть OpenAL, FMod и ещё что-то. Самих DirectSound и DirectPlay уже нет как таковых

    NBN>>
  • Если бы писал редактор, а не игру — выбор бы однозначно пал на GL...
    ДГ>Почему?
    Особо хорошей графики не нужно, высока вероятность переноса на другую десктопную платформу, люди из академических кругов больше любят GL.
  • Нужно разобрать угил.
    Re[5]: Праздный вопрос: последние Direct3D vs OpenGL?
    От: NikeByNike Россия  
    Дата: 06.05.08 22:38
    Оценка: 37 (5) +2 :)
    Здравствуйте, Дм.Григорьев, Вы писали:

    ДГ>Здравствуйте, NikeByNike,


    ДГ>А касательно непосредственно возможностей 3D-графики? Выше Phoenics что-то сказал про геометрические шейдеры ("что такое квадратный трёхчлен?" — "такого безобразия и представить себе не могу!"), из его слов получается, что OpenGL по крайней мере в некоторых аспектах круче.

    OpenGL крут в области геморроя.
    Директ — это почти всё в одном. Т.е. ты скачал свежий ДХ СДК и твёрдо знаешь, что через него тебе доступны почти все возможности текущих современных компов. Всех возможностей компов следующего поколения он тебе уже не предоставит, но для них ты можешь скачать следуюищй СДК.
    ОпенГЛ — имеет базовую часть, нечто очень старое и кашеобразное (на мой взгляд), то что было разработано лет 12 назад, в реальных играх эту базовую часть использовать сложно.
    И! Одну функцию: wglGetProcAddress. Дальше начинается интересное. Производитель видяхи делает в ней некую мегафичу. И даёт к ней доступ через wglGetProcAddress. Эта функция возвращает некий подАПИ который позволяет эту фичу использовать и эта функция делает GL более гибким. Но. Во-первых, всё заработает только если у пользователя стоят дрова которые эту фичу поддерживают. А так бывает не всегда. Во-вторых, производителей несколько, а у всех свои фичи, которые часто несовместимы, даже если делают одно и тоже. Конечно есть комитет АРБ который борется за то чтобы эти фичи как то совмещались, но делает это довольно бюрократически — медленно
    В итоге получается ситуация, что ты должен руками поддерживать целый зоопарк расширений. Это гемморой и лишняя работа. Но с другой стороны, Микрософт во-первых чуть запаздывает с вводом этих фич, а во-вторых, по маркетинговым причинам или по причине недостаточной универсальности может не включить фичу в СДК. И её можно будет увидеть только на GL играх.

    Как-то так. В общем случае конечно жить можно, но ИМХО ДХ проще — всёравно надо ориентироваться на массового потребителя, а его потребности ДХ покрывает с головой.

    P.S.
    Да, так вот, хотя в новых видяхах теоретически поддерживаются геометрические шейдеры, но МС из маркетинговых соображений включил их только в ДХ10, который идёт тока под Вистой А вот в GL они доступны.
    Нужно разобрать угил.
    Re[5]: Праздный вопрос: последние Direct3D vs OpenGL?
    От: NikeByNike Россия  
    Дата: 06.05.08 22:40
    Оценка:
    Здравствуйте, Сергей, Вы писали:

    NBN>>...(не надо ля-ля про PS3))...

    С>Почему? Там не OGL или ты не считаешь ее сильно популярной?

    Не, платформа безусловно популярна. Только под неё не стоит писать на GL (ES). Там свой АПИ. GL (ES) не позволит использовать все возможности платформы.
    Нужно разобрать угил.
    Re[6]: Праздный вопрос: последние Direct3D vs OpenGL?
    От: Дм.Григорьев  
    Дата: 06.05.08 23:47
    Оценка:
    Здравствуйте, NikeByNike, Вы писали:

    NBN>И! Одну функцию: wglGetProcAddress.


    Во, наконец я понял, что это за фигня такая. А то пользовался чисто по примерам, безо всякого понимания. Спасибо огромное за ликбез, больше вопросов не имею.
    ... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
    http://dimgel.ru/lib.web — thin, stateless, strictly typed Scala web framework.
    Re[6]: Праздный вопрос: последние Direct3D vs OpenGL?
    От: Phoenics Россия https://sourceforge.net/projects/phengine
    Дата: 07.05.08 04:53
    Оценка: 10 (1) +2 :))
    Здравствуйте, NikeByNike, Вы писали:

    NBN>Здравствуйте, Дм.Григорьев, Вы писали:


    ДГ>>Здравствуйте, NikeByNike,


    NBN>В итоге получается ситуация, что ты должен руками поддерживать целый зоопарк расширений. Это гемморой и лишняя работа.


    Ну не совсем руками Есть специальные хорошо подерживаемые библиотеки, например GLEW которые берут на себя значительную часть гемороя от расширений, предоставляют удобные способы проверки их наличия, инициализации и т.д. Реально полезных расширений которые не имеют ARB или хотя бы EXT аналогов, и поддерживаются только одним каким-то вендором или несколькими вендорами с разным АПИ, доовльно мало, такие случаи обычно легко спрятать за абстракциями, ООП нам на то и даден

    Но я согласен с тем что огл больше подходит для целей изучения, чем для разработки продукта.

    Из положительного в огле можно отметить то что разработка на огле быстрее поднимает скил разработчика (ИМХО), т.к. много всякого интересного приходится реализовывать руками , о чём разработчики на директе часто даже не задумываеются. Вообще мне кажется что спор "OpenGL vs Direct3D" по своим характеристикам сильно смахивает на спор "C++ vs C#" и аргументы в обоих случаях похожие, одни давят на простоту и скорость разработки, другие на гибкость признавая лёгкий гемороец на нижнем уровне...
    ---=== С наилучшими пожеланиями, Phoenics ===---
    _
    Re[6]: Праздный вопрос: последние Direct3D vs OpenGL?
    От: neFormal Россия  
    Дата: 07.05.08 05:13
    Оценка:
    Здравствуйте, NikeByNike, Вы писали:

    NBN>Для звука есть OpenAL, FMod и ещё что-то.


    только фмод дорогущий Bass и то дешевле..
    хотя фмод заявлен для работы и на приставках..
    ...coding for chaos...
    Re[4]: Праздный вопрос: последние Direct3D vs OpenGL?
    От: Mamut Швеция http://dmitriid.com
    Дата: 07.05.08 06:37
    Оценка:
    NBN>
  • Если рассматривать только большие игры, то DX более кроссплатформенная система (PC & XBox) vs (онли РС (ну может ещё мак и линукс для извергов, но я таких не знаю) (не надо ля-ля про PS3))...

    С Маком ситуация странная и местами плачевная. EA, правда, обещалась все свои игры выпускать и для РС и для Мака. Плюс есть извращенцы, которые (пусть и с опозданием), но портируют игры с РС на Мак:

    http://www.apple.com/games/
    http://www.apple.com/games/articles/
    ... << RSDN@Home 1.2.0 alpha 4 rev. 1084>>


  • dmitriid.comGitHubLinkedIn
    Re[5]: Праздный вопрос: последние Direct3D vs OpenGL?
    От: NikeByNike Россия  
    Дата: 07.05.08 08:29
    Оценка:
    Здравствуйте, Mamut, Вы писали:

    NBN>>
  • Если рассматривать только большие игры, то DX более кроссплатформенная система (PC & XBox) vs (онли РС (ну может ещё мак и линукс для извергов, но я таких не знаю) (не надо ля-ля про PS3))...

    M>С Маком ситуация странная и местами плачевная. EA, правда, обещалась все свои игры выпускать и для РС и для Мака. Плюс есть извращенцы, которые (пусть и с опозданием), но портируют игры с РС на Мак:


    M>http://www.apple.com/games/

    M>http://www.apple.com/games/articles/

    C маком вообще интересно. Он вроде выбирается из ямы, маков становится больше, более того они перешли на x86... Думаю, что в ближайшие годы мы увидим всплеск количества кроссплатформенных (PC & Mac) игр... Хотя конечно приставки и мобилы всёравно забарывают
  • Нужно разобрать угил.
    Re: Праздный вопрос: последние Direct3D vs OpenGL?
    От: Рома Мик Россия http://romamik.com
    Дата: 07.05.08 14:52
    Оценка:
    Здравствуйте, Дм.Григорьев, Вы писали:

    ДГ>Всем привет. Собсна, сабж. Кроссплатформенность не рассматриваем, пущай будет одна винда.

    Собственно сточки зрения разработчика чего-то несложного мне видится так:
    OpenGL — не везде стоят дрова, значит возможны жалобы юзеров. Зато начать писать легко и просто, есть куча библиотек, в т.ч. кроссплатформенных, с использованием которых минимальная программа получается в 10 строк и никаких проблем.
    DirectX — если новые версии, то не везде они есть, т.е. та же проблема что и с OpenGL, а если старые, т.е. 7 или 8, то проблемы с написанием стартап-кода и учетом всяких гадостей, типа потери контекстов и прочего. Однозначно это решаемая проблема, но я так и не разобрался толком. И не только я, например на моем домашнем компе не запускаются последние игры от www.kloonigames.com и танцы с бубном не помогают, а просто человек стал directx использовать. Выход — использовать готовые движки, их авторы уже набили все шишки.
     
    Подождите ...
    Wait...
    Пока на собственное сообщение не было ответов, его можно удалить.