![]() |
Модераторы: Rickert |
![]() ![]() ![]() |
|
DemoCode |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 890 Регистрация: 20.10.2005 Где: Россия Репутация: 2 Всего: 41 |
Вообще-то мне надо не для игры, но разницы между тем что мне надо и игрой-стратегией (карта, юниты - ну как обычно) нет. Поэтому и спрашиваю в этот раздел.
Прочитал несколько обзоров на тему "DirectX vs OpenGL", но вывод не что юзать сделал, т.к. везде описываются преимущества того или другого при создании игр с серьёзными 3D-эффектами, которые скорее подпадают под стрелялки, мочилки, гонки, убивалки и т.д. (мне такого не надо). Пришёл к выводу, что разработка с DirectX дольше, сложнее, но эффективнее по скорости и т.д. OpenGL подкупает своей относительной простотой и кроссплатформенностью. Поэтому пока склоняюсь больше в сторону OpenGL. Развейте, пожалуйста, мои сомнения, если я не прав. Спасибо. -------------------- Жить стало лучше, жить стало веселей © И.В. Сталин |
|||
|
||||
unicuum |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 830 Регистрация: 16.3.2005 Где: Рашка Репутация: нет Всего: 8 |
Лучше сразу говорить о конкретных вещах, так как со временем всё меняется, в том числе и упомянутые выше графические библиотеки. Для DirectX 9 это выглядит примерно так: • DirectX Graphics - 2D/3D графика. • DirectShow - Потоковое видео. • DirectInput - Различные устройствами ввода. • DirectSound и DirectMusic - Звук. • DirectPlay - Стандартный интерфейс для создания сетевого взаимодействия на базе различных сетевых протоколов и провайдеров (Под провайдером, конечно, понимается не та фирма у которой ты дорогой читатель приобретаешь доступ в интернет ![]() Просто в предыдущих версиях DirectX Graphics была разделена на DirectDraw и Direct3D. OpenGL тоже имеет свои особенности (1.5, 2.0). Ранее в книгах читал, что Direct3D использует OpenGL для черчения графики, а если видеокарта не поддерживает таких функций, то они эмулируются программно. Следовательно, OpenGL в этом случае будет быстрее, хотя я думаю всё зависит от программиста. К тому же скорость в обмен на спецэффекты не всегда хорошо. Ещё отмечу, что многие игры, да и другие программы позволяют выбрать или DirectX или OpenGL, что ещё раз подтверждает вывод, что у них одна основа. Это сообщение отредактировал(а) unicuum - 28.7.2006, 19:30 -------------------- ![]() обычный день на винграде |
|||
|
||||
empter |
|
|||
![]() Фанат ![]() Профиль Группа: Участник Сообщений: 224 Регистрация: 20.5.2005 Репутация: 1 Всего: 4 |
||||
|
||||
DENNN |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3878 Регистрация: 27.3.2002 Где: Москва Репутация: 3 Всего: 43 |
Как говорится "По себе людей не судят" ![]() Если кивать на статистику: "Вон сколько игр выходят на DX", то следует помнить, что это большинство сделано для быстрого зарабатывания денег, а не для достижения эффективности. Оптимально - лучше использовать то, что хорошо знаешь. Если соображалки не хватит на создание хорошего алгоритма под задачу, то никакой мега-пупер-FutureX или MegaGL не помогут ![]() |
|||
|
||||
Fighter |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 810 Регистрация: 5.1.2005 Репутация: нет Всего: 2 |
Я конечно могу показаться голословным, но я помню что я где-то читал, что DirectX заточен только под игрушки, а вот если вам нужно сделать реальную систему моделирования (например автомобильного двигателя) и показаться как это все работает изнутри - то многие выбирают библиотеку OpenGL и OpenGL является здесь чуть ли не стандартом. |
|||
|
||||
unicuum |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 830 Регистрация: 16.3.2005 Где: Рашка Репутация: нет Всего: 8 |
Точно, соображаловка должна быть. ![]() А как же игры, которые одновременно позволяют работать и с OpenGL и с DirectX? Уверяю, таких очень много, то есть большинство серьёзных проектов. Так просто OpenGL быстрее, за счёт того, что если видеокарта не поддерживает некую возможность, то она не будет использоваться в построении 3D изображения. Понятно, что двигатель в реальном времени предусмотрительней делать в OpenGL, хотя тут многое зависит от мощности компьютера. -------------------- ![]() обычный день на винграде |
|||
|
||||
arilou |
|
|||
![]() Великий МунаБудвин ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2646 Регистрация: 15.7.2004 Где: город-герой Минск Репутация: 6 Всего: 61 |
Народ, давайте не будем скатываться к обсуждению DirectX vs OpenGL. Тема флеймовая, и уже есть на форуме.
Мое личное мнение, никакой разницы нет, использовать одно или другое, где опыта больше, то и испольшуешь. Если все ново, лучше браться за DX, потому что он написан в ООП стиле, а OGL - в процедурном. Хотя OGL проще на начальных этапах для понимания. А еще лучше, если хочется сделать именно игру, а не движок, то воспользоваться одним из достаточно большого кол-ва доступных бесплатных. Например, Ogre. |
|||
|
||||
DemoCode |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 890 Регистрация: 20.10.2005 Где: Россия Репутация: 2 Всего: 41 |
Примерно такое и надо. Только интерфейс должен напоминать игру-стратегию (карта, юниты и т.д.) Железный довод. Возьмусь за DirectX. -------------------- Жить стало лучше, жить стало веселей © И.В. Сталин |
|||
|
||||
DENNN |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3878 Регистрация: 27.3.2002 Где: Москва Репутация: 3 Всего: 43 |
||||
|
||||
$tatic |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 651 Регистрация: 28.1.2005 Репутация: 7 Всего: 22 |
Ну если Managed DirectX (для .NET) - то чистый ООП, а для C++ это COM технология
|
|||
|
||||
DemoCode |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 890 Регистрация: 20.10.2005 Где: Россия Репутация: 2 Всего: 41 |
А он не медленнее и не хуже чем UnManaged DirectX? Есть какая-то принципиальная разница? -------------------- Жить стало лучше, жить стало веселей © И.В. Сталин |
|||
|
||||
unicuum |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 830 Регистрация: 16.3.2005 Где: Рашка Репутация: нет Всего: 8 |
Какой-то затёртый уже вопрос. На мой взгляд, для программиста главное то, что неуправляемый код базируется на COM библиотеках (dll и так далее), а они в свою очередь разбросаны по Windows, что неудобно в определении версии и так далее. Управляемый код же будет работать, если поместить использованную в программе библиотеку в папку с исполняемым файлом и не потребуется никакой регистрации и прочего. К тому же файлы, скомпилированные как управляемые можно считать более открытым кодом, чем аналогичные COM. Вот и выходит, что в одном случае используется DirectX основанный на COM библиотеках, а в другом на библиотеках сборках (%systemroot%\assembly). Ну, если где-то в объяснениях ошибся, поправьте. Это сообщение отредактировал(а) unicuum - 12.1.2007, 05:08 -------------------- ![]() обычный день на винграде |
|||
|
||||
Ch0bits |
|
|||
![]() Python Dev. ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2124 Регистрация: 21.2.2005 Где: Казань Репутация: 2 Всего: 62 |
Поскольку Managed DirectX - это ООП оболочка под .NET native DirectX, то естественно это требует некоторых жертв, но снижение самое мизерное. Не забывайте, что производительность в играх в первую очередь зависит от видеокарты. |
|||
|
||||
DENNN |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3878 Регистрация: 27.3.2002 Где: Москва Репутация: 3 Всего: 43 |
||||
|
||||
Beltar |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 627 Регистрация: 11.1.2006 Репутация: нет Всего: 7 |
Из игр 2004 г. На OpenGL вышли Doom 3, и "Хроники Риддика", FarCry позволял использовать OpenGL версию движка. ![]() -------------------- Опытный программист на C++ легко решает любые не существующие в Паскале проблемы. ![]() Пищущий на C++ мужик. Даже если это мужик сидит в написанном на Delphi и жрущем паскалевскую библиотеку билдере. |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Программирование игр, графики и искуственного интеллекта" | |
|
НА ЗЛОБУ ДНЯ: Дорогие посетители, прошу обратить внимание что новые темы касающиеся новых вопросов создаются кнопкой "Новая тема" а не "Ответить"! Любые оффтопиковые вопросы, заданные в текущих тематических темах будут удалены а их авторы, при рецедиве, забанены.
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rickert. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Программирование игр, графики и искусственного интеллекта | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |