Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > C++

Ответ
 
Опции темы
Старый 19.11.2009, 12:34   #1
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений
(для 20,935 пользователей)
С++ и 3D

сабж.
С чего лучше начать?
С чистого OpenGL? С движков (каких?)?
Посоветуйте. /с С++ знаком/
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо impersonalis за это полезное сообщение:
den (19.07.2010), Dzirt (19.11.2009)
Старый 19.11.2009, 15:38   #2
Knightmare
Дэвелопер
 
Регистрация: 14.02.2007
Сообщений: 1,471
Написано 824 полезных сообщений
(для 2,920 пользователей)
Ответ: С++ и 3D

Для каких целей 3D графика? Если игры - DX. OGL не нужен, ибо под виндой - в топку, на линух и мак ось игры не нужны, на консолях его нет, и остаются только мобильные девайсы. Если доя написания какой-либо визуализации которая возможно будет запускаться на линухе и других системах - то да, OGL. Сразу по DX - D3DX лучше не юзать (за иключением компилятора шейдеров, и то, можно при сборке проекта их комплировать).
(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо Knightmare за это полезное сообщение:
h1dd3n (19.11.2009), Praedo (05.01.2010)
Старый 19.11.2009, 17:01   #3
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений
(для 20,935 пользователей)
Ответ: С++ и 3D

Ух.. А можно развернуть описание "под виндой - в топку"?
Конкертного применения пока не планирую. Просто, невсегда использование Blitz оправдано. Возможные назанчения: игры (не особо требовательные к ресурсам, тут больше уопр будет на функционал С++ с его ООП и прочимим вкусностями), визуализация (здесь всё размыто, но, веротяно, к ресусрам совсем не требовательно (типа off-line render)). Исходя из описанного, хотелось бы овладеть чем-то максимлаьно функциоальным\переносимым.
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием
Старый 19.11.2009, 17:13   #4
Knightmare
Дэвелопер
 
Регистрация: 14.02.2007
Сообщений: 1,471
Написано 824 полезных сообщений
(для 2,920 пользователей)
Ответ: С++ и 3D

С виндой все просто. Мелкософт всячески притесняет конкурирующий GAPI, отсюда лезут всякие страшные глюки, особенно это касается их дрйверов на видео. Там с OGL совсем плохо. Так же есть большие траблы на Radeo'ах, они как-то пофигически относятся к OGL, а на Intel'ах оно вообще не работает. Ну местами вроде бегает. На топовых вроде даже шейдеры таки запилили. А вот DX на них пашет полностью, вплоть до SM 4.0. Таким образом игры под винду писать более рационально с использованием DX, что повысит совместимость с железом (если казуалка - очень критично, на DX все заведется без проблем и на офисных, а вот с OGL - большой вопрос). Кроме того DX движок гораздо легче портировать на XBox360, но это я так думаю тебя не особо волнует. Кроме того DX объектно-ориентированный, но это уже кому как больше нравится. OGL сейчас практически для игр не используется (не считая отдельных товарищей, но вроде Кармак и тот на DX переполз уже, хотя есть мнение что использование иим OGL в предыдущих проектах было вызвано тем, что игры те были и под линух). Используют его в большинстве своем товарищи пишущие гипотетически мультиплатформенные движки, которые типа и под линухом пашут и под маком до кучи, однако и ослу понятно что там игры не востребованы и профита разработка под эти платформы не принесет (ну мак ось - может быть, но там не такой большой чтобы стоило заморачиваться), разве что just4fun.
Единственный пожалуй плюс OGL - через расширения можно иметь 4 и 5 SM даже на ХР. Но всем пох как водится.
З.Ы. Юзающим OGL и любящим выставлять фишкой то, что если железо что-то не умеет оно эмулируется в софтваре - учите матчасть, в DX есть софтварный рендер, идущий в комплекте с SDK.
(Offline)
 
Ответить с цитированием
Эти 10 пользователя(ей) сказали Спасибо Knightmare за это полезное сообщение:
ABTOMAT (26.11.2009), BlackOut (06.01.2010), den (19.07.2010), h1dd3n (19.11.2009), impersonalis (19.11.2009), Mr_F_ (19.11.2009), newman (20.11.2009), Praedo (05.01.2010), Randomize (24.11.2009), Serendipity (21.12.2009)
Старый 19.11.2009, 18:38   #5
Morganolla
Бывалый
 
Аватар для Morganolla
 
Регистрация: 03.12.2008
Адрес: наша раша
Сообщений: 762
Написано 129 полезных сообщений
(для 245 пользователей)
Ответ: С++ и 3D

По моему лучше все же начать с простого движка. Потому что ОГЛ довольно сложная штука. А то что сейчас мало игрушек под Линух, то это не значит, что их не будет много через год-другой... ИМХО. Сейчас в Линухе быстро развиваются мультимедийные приложения - музыка, звук, графика... и ничто не мешает делать там серьезные игрушки.
__________________
Reality Simulation Games
Core 2 Duo 2,8GHz, RAM 1Gb, ATI R5670 1Gb. WinXP 32
(Offline)
 
Ответить с цитированием
Старый 19.11.2009, 18:39   #6
NitE
злобный флудер
 
Регистрация: 10.07.2007
Сообщений: 2,585
Написано 789 полезных сообщений
(для 1,476 пользователей)
Ответ: С++ и 3D

и ничто не мешает делать там серьезные игрушки.
жадность мешает...
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Android (19.11.2009)
Старый 19.11.2009, 18:41   #7
Knightmare
Дэвелопер
 
Регистрация: 14.02.2007
Сообщений: 1,471
Написано 824 полезных сообщений
(для 2,920 пользователей)
Ответ: С++ и 3D

Сообщение от Morganolla Посмотреть сообщение
По моему лучше все же начать с простого движка. Потому что ОГЛ довольно сложная штука. А то что сейчас мало игрушек под Линух, то это не значит, что их не будет много через год-другой... ИМХО. Сейчас в Линухе быстро развиваются мультимедийные приложения - музыка, звук, графика... и ничто не мешает делать там серьезные игрушки.
Ога. Щаз. Уже лет 5 наверно как "вот-вот все пересядут на линух и начнут игры штамповать пачками".
(Offline)
 
Ответить с цитированием
Старый 19.11.2009, 23:00   #8
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений
(для 20,935 пользователей)
Ответ: С++ и 3D

Так. Спасибо за детальный ответ.
Какую кто посветует литературу для начала под ДХ?
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием
Старый 19.11.2009, 23:05   #9
Knightmare
Дэвелопер
 
Регистрация: 14.02.2007
Сообщений: 1,471
Написано 824 полезных сообщений
(для 2,920 пользователей)
Ответ: С++ и 3D

DirectX SDK (документация и примеры). Лучше ничего нет. Еще http://netlib.narod.ru - тут вроде что-то есть (однако не стоит воспринимать это все серьезно, у того же Френка Луны есть книжка по анимации в DX например. Принципы описаны отлично, но реализация - жуткая ересь).
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
impersonalis (19.11.2009)
Старый 19.11.2009, 23:52   #10
jimon
 
Сообщений: n/a
Ответ: С++ и 3D

(выводы из чата с Имером в асе)

DirectX стабилен только потому что его выпустят, разработчики видеокарт драйвера отладят за пару месяцев и всё, на 2-5 лет вперёд стоит стабильная монолитная система, где есть определённый набор фич нужных для актуальной разработки на момент выпуска, потому всё работает из коробки ибо уже отладили месяцами ранее
при выпуске новой версии DirectX зачастую всё меняется в корне и новая версия просто обратно не совместима со старой, пиши всё с нуля

OpenGL развивается с такой же скоростью, как в мозги инженеров приходят новые идеи, позавчера придумал, вчера написал расширение, сегодня имплементировал в драйвер и уже юзаешь, не нужно ждать 4 года для выпуска новой ОС и нового DirectX, юзаешь то что нужно сразу
но поскольку в драйвер изначально не закладывают весь функционал что может видеокарта, да и если закладывают то он не всегда работает правильно, плюс еще постоянно появляется новый функционал (который зачастую даже и не требует менять железо) то драйвера обновляются постоянно, сродни обновлений антивирусов
юзеры ленивы в обновлениях драйверов, потому на разных компах с одинаковым железом opengl может иметь совершенно разный функционал

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

как работает видеокарта, что такое шейдера и основы 3д графики я описал тут http://blitzmax.ru/index.php?topic=1440.0
 
Ответить с цитированием
Эти 4 пользователя(ей) сказали Спасибо за это полезное сообщение:
impersonalis (19.11.2009), is.SarCasm (05.01.2010), newman (20.11.2009), Randomize (24.11.2009)
Старый 20.11.2009, 01:44   #11
SBJoker
Злобный Админ
 
Аватар для SBJoker
 
Регистрация: 04.09.2005
Сообщений: 5,926
Написано 3,415 полезных сообщений
(для 9,330 пользователей)
Ответ: С++ и 3D

А теперь дядя дима откроет википедию на DirectX и почитает обратную совместимость со сколькими поколениями DirectX, мелкософт гарантирует.
И не будет писать ересь про, в новой версии всё в корне меняется. Новое добавляется но старое остаётся.
__________________
(Offline)
 
Ответить с цитированием
Старый 20.11.2009, 01:46   #12
Knightmare
Дэвелопер
 
Регистрация: 14.02.2007
Сообщений: 1,471
Написано 824 полезных сообщений
(для 2,920 пользователей)
Ответ: С++ и 3D

Полное изменение постигло лишь 10 версию DX. Причина тому - в топку был отправлен весь FFP функционал (теперь только шейдеры). Туда ему и дорога.
З.Ы. 7, 8, 9 версии - код переносился почти без изменений.
(Offline)
 
Ответить с цитированием
Старый 20.11.2009, 02:12   #13
jimon
 
Сообщений: n/a
Ответ: С++ и 3D

SBJoker
Knightmare
перенос кода с 7,8 на 9 возможен с минимальными изменениями, а вот можно ли сделать 9 версию опционально не делая два полностью разных рендера ? те чтобы иметь шейдера опционально, но при этом программа работала с системой где стоит directx 7
да и имхо мелкософту уже пофиг на 7,8,9 версии, с выпуска 9 версии уже 5 лет прошло

в прочем OpenGL тоже свинью подсунул, OpenGL ES 2.0 обратно не совместим с OpenGL ES 1.1, типа или всё изначально на шейдерах или рисуй вообще без них, так что без двух раздельных рендеров тут не обойтись
 
Ответить с цитированием
Старый 20.11.2009, 02:14   #14
Knightmare
Дэвелопер
 
Регистрация: 14.02.2007
Сообщений: 1,471
Написано 824 полезных сообщений
(для 2,920 пользователей)
Ответ: С++ и 3D

Я вроде написал - версии 7, 8, 9 - совместимость кода отличная. И туда и сюда можно переносить, с незначительными правками в API. Ну и так конечно на DX7 шейдеров вообще нет и все такое, так что тоже все не портанешь, но FFP - без проблем. С DX10 это уже не действует. Ибо как я уже говорил почти полностью поменялся API. В тоже время DX10<->DX11 не будет иметь больших проблем. Грубо говоря. Что-то было до DX10. Это одно. Все что после - совсем другое.
Так же напомню, что от OGL 3.0 ждали кардинальной смены API. Однако нифига подобного не произошло. А та бы была таже фигня что и с DX.
И вообще. Все эти перенести код куды-сюды и т.п. часто является полной фигней ибо не используется. Частично - да. Но для этого и не нужна полная совместимость GAPI. Что-то взял со старого, подправил под новое, ПРОФИТ!
З.Ы. А православный путь - тотальное переписывания GAPI layer под новый API. С учетом всех его фишек и т.п.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
impersonalis (20.11.2009)
Старый 20.11.2009, 02:23   #15
jimon
 
Сообщений: n/a
Ответ: С++ и 3D

Knightmare
согласен с православным путём но для этого надо иметь мозги и хорошо понимать как это всё работает чтобы всё учесть
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 21:57.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com