| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Религиозные войны > Delphi или Cи/С++ |
| Автор: Burka 14.8.2008, 07:25 |
| В очень далеких планах хотим написать игру, скорей всего комерческую с лицензионным ПО и всем что понадобится. Но пока до этого долго. Пока мы решаем на чем писать игру. Большенство бесплатных движков поддерживают только си, хотим использовать OGRE и писать на CodeBlocks, с графикой будем работать средставми OpenGL. Си знаем плохо ничего не писали на нем серьезного. В делфи скорей всего не сможем использовать движки и, скорей всего, придется набросать свой(хотя скорей всего не меньше времени потратим на изучение си и изучение чужих движков). С делфи хорошо знакомы чему-то новому в делфи научится будет намного проще и в производительности не так уж и сильно уступает(если уступает) си. Вот, подскажите, что же лучше выбрать? P.S. Как я знаю Eve Online вообще написана на питоне(вроде на питоне) |
| Автор: Alexeis 14.8.2008, 09:17 |
| Burka, на Delphi писать быстрый код, можно, но нужно оч. хорошо понимать чего используешь, но если речь идет о максимальной производительности, то лучше смотреть в сторону VC2005-VC2008. Компиляторы от мелкомягких здорово оптимизируют код. Но тут опять ньюанс, нужно не просто знать С++, но еще знать чего в нем и как реализовано. Т.е. знать какие функции и классы дадут хорошую скорость, а какие нет. Вообще, лучше конечно писать в том что лучше всего знаешь, иначе помимо не оптимального кода ожидает еще проблема появления большого числа ошибок. |
| Автор: nerezus 14.8.2008, 11:55 | ||
Что касается делфи - то навряд ли вы найдете игровой или 3D движок. Так что C++. |
| Автор: Daevaorn 14.8.2008, 12:25 | ||
глупость какая |
| Автор: Burka 14.8.2008, 20:33 | ||
Daevaorn, а какие движки можешь посоветовать, которые поддежривают делфи?
это кстати тоже глупость, потому что некоторые движки именно что на си написаны. |
| Автор: Alexeis 14.8.2008, 20:54 |
| Burka, чистый Си это не серьезно, разве только для самого нижнего уровня. Такие сложные проекты нужно решать в терминах ООП. |
| Автор: nerezus 15.8.2008, 10:15 | ||||
Я уже не говорю о всяких Source, UT Engine и т.д.
|
| Автор: mr.DUDA 15.8.2008, 14:00 |
Камрад Дж. Кармак до последнего времени на Си код двигуна писал. Насколько я в курсе, двигун для Q3 был на С. |
| Автор: Burka 15.8.2008, 19:01 |
| Еще мне тут говорят, что си нужен для работы с шейдерами. Наверно делфи все же больше подходит для прикладных программ, где много форм, кнопочек и тд. Поэтому уже сожусь учить си/си++. |
| Автор: Alexeis 15.8.2008, 19:19 |
Ничего подобного, там свой специальный язык. Имеет смысл если уже остановились на определенном графическом движке. |
| Автор: Lazin 15.8.2008, 19:46 |
Си подобный... у Delphi все-же направленность несколько иная, в основном это прикладной софт... OMFG, даже модератор Delphi советует посмотреть в сторону C++ |
| Автор: nerezus 15.8.2008, 23:02 | ||
А я все жду ссылочек на движки на делфи ) Добавлено через 51 секунду Нет, я не спорю, что теоретически это возможно. Только вот теория зачастую сильно отличается от практики ;) |
| Автор: nickless 16.8.2008, 14:46 |
| Я пару лет назад с друзьями начинал писать игровой движок на Delphi... Не советую Нет, это конечно возможно и оно в принципе не плохо работало (в пределах наших умений), просто абсолютно всё что может быть полезным в этом деле подразумевает язык C и/или C++. Т.е. библиотеки и хедеры к ним, документация, примеры, литература... приходилось много переводить и переписывать. Есть конечно примеры на дельфи, но их мало и они обычно довольно простые, есть хедеры к либам, но обычно древние итд. Короче в итоге за время, потраченное нами на дополнительный геморрой можно было вполне выучить С++ |
| Автор: 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 |
С документацией различия не очень большие, функции то те же самые, надо только постоянно переводить в уме примеры использовнния и помнить как автор перевода хедеров к либе назвал и где объявил каждый тип/структуру/итд... Не знаю, мне надоедало |
| Автор: nerezus 17.8.2008, 09:20 | ||||
А разве отменили покупку коммерческих движков? )
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 |
Офигеть. С исходниками что ли? Дайте мне сырцы анрыла поковырять!!! |
| Автор: 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, ууу сколько там всего... В классе UTexture например чего только нет - и footsteps и прочая ш...га |
| Автор: Beltar 8.9.2008, 10:39 | ||
А у MS они типа шустрее. Мне вот интересно, имеет ли смысл при наличии незначительных сил вообще ковырять сырцы движков, которые еще и стоят денег. И не лучше ли взять что-то готовое в виде dll с которыми один хрен на чем работать. Также что в игре создает основные тормоза? Код разраба или код самой DirectX? |
| Автор: JSinx 28.9.2008, 10:26 |
| Все движки идут с исходниками, т.к. вам по любому нужно будет его дорабатывать под свои нужды. Имхо, есть бесплатные движки, которые в некоторых вещах лучше платных. В платных движках у вас будет комплекс интструментария (редакторы уровней, плагины для майи/макса, и т.п.) + документация и онлайн поддержка, у бесплатных с этим похуже. Так же не забываем, что есть "узкопрофильные" движки: т.е. чисто графика, звук, физика. Так же двиг может быть написан на одном языке, инструментарий на другом. |
| Автор: nerezus 28.9.2008, 10:37 | ||
А что касается "тормознутости"— это миф. P.S. юзаю VCL под C++ Builder, если что. |
| Автор: mr.DUDA 9.10.2008, 19:26 | ||
Первое. |
| Автор: nubliK 10.10.2008, 05:13 |
| Исторически сложилось что более или менее симпатишное и шустрое в графике сделано с использованием С++. По поводу двига OGRE вещь весма не плохая. Но есть одно но - можно использовать двиг и кодить на си(/С++), а можно двиг научить понимать скриптовый язык и настраивать его через этот скриптовый язык. Что собственно говоря и используется на многих двигах. При этом тебе уже не нужно знать ни си не delphi. |
| Автор: nubliK 13.10.2008, 07:23 | ||
Это верно и я этого не отрицал |