Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Религиозные войны > Delphi или Cи/С++


Автор: Burka 14.8.2008, 07:25
В очень далеких планах хотим написать игру, скорей всего комерческую с лицензионным ПО и всем что понадобится. Но пока до этого долго. Пока мы решаем на чем писать игру.  Большенство бесплатных движков поддерживают только си, хотим использовать OGRE и писать на CodeBlocks, с графикой будем работать средставми OpenGL. Си знаем плохо ничего не писали на нем серьезного. В делфи скорей всего не сможем использовать движки и, скорей всего, придется набросать свой(хотя скорей всего не меньше времени потратим на изучение си и изучение чужих движков). С делфи хорошо знакомы чему-то новому в делфи научится будет намного проще и в производительности не так уж и сильно уступает(если уступает) си.

Вот, подскажите, что же лучше выбрать?

P.S. Как я знаю Eve Online вообще написана на питоне(вроде на питоне)   smile 


Автор: Alexeis 14.8.2008, 09:17
Burka, на Delphi писать быстрый код, можно, но нужно оч. хорошо понимать чего используешь, но если речь идет о максимальной производительности, то лучше смотреть в сторону VC2005-VC2008. Компиляторы от мелкомягких здорово оптимизируют код. Но тут опять ньюанс, нужно не просто знать С++, но еще знать чего в нем и как реализовано. Т.е. знать какие функции и классы дадут хорошую скорость, а какие нет. Вообще, лучше конечно писать в том что лучше всего знаешь, иначе помимо не оптимального кода ожидает еще проблема появления большого числа ошибок.

Автор: nerezus 14.8.2008, 11:55
Цитата

Си знаем плохо ничего не писали на нем серьезного. 
 Он вам и не потребуется. Нужно знать C++, он намного сложнее.

Что касается делфи - то навряд ли вы найдете игровой или 3D движок. Так что C++.

Автор: Daevaorn 14.8.2008, 12:25
Цитата(nerezus @  14.8.2008,  12:55 Найти цитируемый пост)
Что касается делфи - то навряд ли вы найдете игровой или 3D движок. Так что C++. 

глупость какая

Автор: Burka 14.8.2008, 20:33
Daevaorn, а какие движки можешь посоветовать, которые поддежривают делфи?

Цитата

Он вам и не потребуется. Нужно знать C++, он намного сложнее.

это кстати тоже глупость, потому что некоторые движки именно что на си написаны.

Автор: Alexeis 14.8.2008, 20:54
Burka, чистый Си это не серьезно, разве только для самого нижнего уровня. Такие сложные проекты нужно решать в терминах ООП.

Автор: nerezus 15.8.2008, 10:15
Цитата

глупость какая
 Покажи мне движки уровня хотя бы Irrlicht/Ogre
Я уже не говорю о всяких Source, UT Engine и т.д.

Цитата

некоторые движки именно что на си написаны.
 Ссылочки на них, плиз. На современные, скриншотик тоже )

Автор: mr.DUDA 15.8.2008, 14:00
Цитата(nerezus @  15.8.2008,  10:15 Найти цитируемый пост)
Ссылочки на них, плиз. На современные, скриншотик тоже )

Камрад Дж. Кармак до последнего времени на Си код двигуна писал. Насколько я в курсе, двигун для Q3 был на С.

Автор: Burka 15.8.2008, 19:01
Еще мне тут говорят, что си нужен для работы с шейдерами. 

Наверно делфи все же больше подходит для прикладных программ, где много форм, кнопочек и тд. Поэтому уже сожусь учить си/си++.

Автор: Alexeis 15.8.2008, 19:19
Цитата(Burka @  15.8.2008,  18:01 Найти цитируемый пост)
Еще мне тут говорят, что си нужен для работы с шейдерами. 

  Ничего подобного, там свой специальный язык. 
Цитата(Burka @  15.8.2008,  18:01 Найти цитируемый пост)
Поэтому уже сожусь учить си/си++.

  Имеет смысл если уже остановились на определенном графическом движке.

Автор: Lazin 15.8.2008, 19:46
Цитата(Alexeis @  15.8.2008,  19:19 Найти цитируемый пост)
Ничего подобного, там свой специальный язык. 

Си подобный...
у Delphi все-же направленность несколько иная, в основном это прикладной софт...
OMFG, даже модератор Delphi советует посмотреть в сторону C++ smile 

Автор: nerezus 15.8.2008, 23:02
Цитата

Насколько я в курсе, двигун для Q3 был на С.
 У Irlicht даже и то картинка лучше, чем у Q3 Engine ))) Просьба была именно современные движки показать ;) Q3 в пролете - 99 год как никак )

А я все жду ссылочек на движки на делфи )

Добавлено через 51 секунду
Нет, я не спорю, что теоретически это возможно. Только вот теория зачастую сильно отличается от практики ;)

Автор: nickless 16.8.2008, 14:46
Я пару лет назад с друзьями начинал писать игровой движок на Delphi... Не советую smile
Нет, это конечно возможно и оно в принципе не плохо работало (в пределах наших умений), просто абсолютно всё что может быть полезным в этом деле подразумевает язык C и/или C++. Т.е. библиотеки и хедеры к ним, документация, примеры, литература... приходилось много переводить и переписывать. Есть конечно примеры на дельфи, но их мало и они обычно довольно простые, есть хедеры к либам, но обычно древние итд.
Короче в итоге за время, потраченное нами на дополнительный геморрой можно было вполне выучить С++ smile 

Автор: mr.DUDA 16.8.2008, 15:56
nerezus, а кто тебе ещё в открытую признается на чём пишется код движка? Кроме open-source проектов (огры-иррлихты) никто не скажет.

Очень даже может статься, что ядро у Id Tech 5 всё ещё пишут на С.  Или вот возьмём к примеру unreal engine номер 3 - откуда нам знать, сколько процентов ядра там на асме, сколько на С и есть ли вообще там С, и какая часть из оставшегося - С++ и скрипты. Аналогично ничего конкретного нельзя сказать про CryEngine 2. Что быстрее и удобнее - то и используется.

З.Ы. про документацию могу поспорить с nickless - вот мы на шарпе пишем а доки приходится использовать для С++ (DirectX SDK), но если есть голова на плечах то разница между языками не играет роли.

Автор: nickless 16.8.2008, 17:10
Цитата(mr.DUDA @  16.8.2008,  14:56 Найти цитируемый пост)
про документацию могу поспорить с nickless

С документацией различия не очень большие, функции то те же самые, надо только постоянно переводить в уме примеры использовнния и помнить как автор перевода хедеров к либе назвал и где объявил каждый тип/структуру/итд... Не знаю, мне надоедало smile 

Автор: nerezus 17.8.2008, 09:20
Цитата

nerezus, а кто тебе ещё в открытую признается на чём пишется код движка? Кроме open-source проектов (огры-иррлихты) никто не скажет.
 Офигеть )))))

А разве отменили покупку коммерческих движков? )

Цитата

Очень даже может статься, что ядро у Id Tech 5 всё ещё пишут на С.
 C++. Презентацию смотрел с Кармаком.
Id Tech 4 тоже на C++.

Автор: lukas 17.8.2008, 21:31
Естественно все козири у С++, большое кол-во открытых игровых движков, когда у Delphi староватый GLScene, который помоему уже забросили разработчики. При этом не стоит брать в расчет громозкие среды от Codegear с тормознутой VCL... 

Да и еще придется наверное вам задуматься о скриптовом движке для игры, т.к. без этого не обходится практически ни одна современная игра.

Автор: Burka 18.8.2008, 04:45
lukas, со скриптами согласен, очень полезная вещь, но от языка это не зависит и на си и на делфи это можно реализовать. Хотя может быть есть уже готовые, не вникал в скрипты.

Автор: nerezus 18.8.2008, 09:36
Цитата

Хотя может быть есть уже готовые, не вникал в скрипты.
 Офигеть )
python, lua, ...

Автор: Burka 18.8.2008, 14:57
nerezus, и с помощью них делают скрипты в редакторах и макросы?

Автор: nerezus 18.8.2008, 18:50
Burka, в прикладнухе часто питон.
В играх - lua почти везде.

Автор: lukas 18.8.2008, 19:20
python тоже не отстает... я знаю что использовался в знаменитой игре Civilization для построения сценариев..., а сколько у нее дополнений и сценариев... 

Автор: mr.DUDA 18.8.2008, 19:44
Цитата(nerezus @  17.8.2008,  09:20 Найти цитируемый пост)
А разве отменили покупку коммерческих движков? )

Офигеть.
С исходниками что ли? Дайте мне сырцы анрыла поковырять!!!  smile 

Автор: Burka 19.8.2008, 06:41
ясно, будy знать =)

Автор: nerezus 19.8.2008, 09:48
Цитата

Офигеть.
С исходниками что ли? Дайте мне сырцы анрыла поковырять!!! 
 Договорились.
С тебя пиво, держи свой сырок: http://ifolder.ru/7768953
Все, кроме core, в сырцах, core уже собран в объектную.

Автор: mr.DUDA 23.8.2008, 16:25
nerezus, ууу сколько там всего...  smile 

В классе UTexture например чего только нет - и footsteps и прочая ш...га  smile 

Автор: Beltar 8.9.2008, 10:39
Цитата

расчет громозкие среды от Codegear с тормознутой VCL... 


А у MS они типа шустрее. smile 

Мне вот интересно, имеет ли смысл при наличии незначительных сил вообще ковырять сырцы движков, которые еще и стоят денег. И не лучше ли взять что-то готовое в виде dll с которыми один хрен на чем работать.
Также что в игре создает основные тормоза? Код разраба или код самой DirectX?

Автор: JSinx 28.9.2008, 10:26
Все движки идут с исходниками, т.к. вам по любому нужно будет его дорабатывать под свои нужды.
Имхо, есть бесплатные движки, которые в некоторых вещах лучше платных.
В платных движках у вас будет комплекс интструментария (редакторы уровней, плагины для майи/макса, и т.п.) + документация и онлайн поддержка, у бесплатных с этим похуже.

Так же не забываем, что есть "узкопрофильные" движки: т.е. чисто графика, звук, физика.

Так же двиг может быть написан на одном языке, инструментарий на другом.

Автор: nerezus 28.9.2008, 10:37
Цитата

расчет громозкие среды от Codegear с тормознутой VCL... 
 А мне VCL нравится(хотя компилер в борланде... убийственный). Просто сильно экономит время.
А что касается "тормознутости"— это миф.

P.S. юзаю VCL под C++ Builder, если что.

Автор: mr.DUDA 9.10.2008, 19:26
Цитата(Beltar @  8.9.2008,  10:39 Найти цитируемый пост)
Также что в игре создает основные тормоза? Код разраба или код самой DirectX?

Первое.

Автор: nubliK 10.10.2008, 05:13
Исторически сложилось что более или менее симпатишное и шустрое в графике сделано с использованием С++.
По поводу двига OGRE вещь весма не плохая.
Но есть одно но - можно использовать двиг и кодить на си(/С++), а можно двиг научить понимать скриптовый язык и настраивать его через этот скриптовый язык. Что собственно говоря и используется на многих двигах. При этом тебе уже не нужно знать ни си не delphi.

Автор: mr.DUDA 11.10.2008, 00:36
Цитата(nubliK @  10.10.2008,  05:13 Найти цитируемый пост)
Но есть одно но - можно использовать двиг и кодить на си(/С++), а можно двиг научить понимать скриптовый язык и настраивать его через этот скриптовый язык. Что собственно говоря и используется на многих двигах. При этом тебе уже не нужно знать ни си не delphi.

Ну и что за игра получится на выходе, взяв движок с поддержкой скриптов на входе и написав кучку скриптов под него? Это то же самое что создать мод под любую известную игру. От вас не требуется ничего кроме фантазии и собственных моделей и текстур. А вот попробуйте добавить в такой движок, скажем, отрисовку в мультяшном стиле... Или технику рендеринга, не предусмотренную двигом... Или для того же Огра - простую в использовании и в то же время мощную систему материалов? Ну-ну, вот и я о том же.  smile 

Автор: nubliK 13.10.2008, 07:23
Цитата(mr.DUDA @  11.10.2008,  00:36 Найти цитируемый пост)
Ну и что за игра получится на выходе, взяв движок с поддержкой скриптов на входе и написав кучку скриптов под него? Это то же самое что создать мод под любую известную игру. От вас не требуется ничего кроме фантазии и собственных моделей и текстур. А вот попробуйте добавить в такой движок, скажем, отрисовку в мультяшном стиле... Или технику рендеринга, не предусмотренную двигом... Или для того же Огра - простую в использовании и в то же время мощную систему материалов? Ну-ну, вот и я о том же.  smile  

Это верно и я этого не отрицал  smile  парни же хотят побыстрее и покрасифше, самый легкий путь был предложен  smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)