Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Игры";
Текущий архив: 2003.11.13;
Скачать: [xml.tar.bz2];

Вниз

Можно ли написать полноценную игру в Delphi???   Найти похожие ветки 

 
neuro   (2003-04-15 19:15) [40]

1)А ты хочешь сказать, что нет?
2)Да уж..
3)Место моей работы..

Сходил я по твоему линку..И это все "нормальные" игры? Я плакал..



 
cyborg   (2003-04-15 19:28) [41]

1) Я хочу сказать что да.

2) Скажи хоть что ни будь умное.

3) И что я должен найти на месте твоей работы?

4) Там полноценная игра на Дельфи, и к твоему удивлению норамльная, без кавычек, не смотря на то, что она первая. Не плач, возрадуйся жизни.

P.S. Оснований твоей позиции я так и не увидел, демагог :).


 
neuro   (2003-04-15 19:37) [42]

Основания по первой позиции -- разуй глаза.
Основания по второй позиции -- нельзя создать полностью абстрактный класс; статические элементы классов почему-то кочуют от экземпляра к экземпляру; еще?
Третья позиция (позишен намбер три =)) -- это по поводу "ничего сами не написали.."
Четыре -- "полноценная игра на Дельфи" это какая? Название в студию.

Основания по моим позициям устраивают? =)


 
cyborg   (2003-04-15 19:44) [43]

4) Где написано cyborg, та.

Значит давай сделаем так, сделай, если сможешь, простой спрайтовый "движок" на С++, который просто выводит анимированную карту, и посмотрим скорость и удобство реализации твоего на С++ и моего на Delphi, я поэтому случаю исходник выложу своего переделываемого проекта, согласен?

Не спеши с ответом :), так как у меня будет фора, я знаю о чём говорю, а ты нет, это на первый взгляд кажется что всё так легко и просто.


 
neuro   (2003-04-15 19:46) [44]

Что ты подразумеваешь под анимированной картой?
Скорость работы у меня будет не большая -- я все-таки работаю.
И как оценивать простоту (удобство) реализации? По числу строчек? =)


 
cyborg   (2003-04-15 19:50) [45]

Забыл по третей позиции, я сказал, что ты игру не писал, как я понял, и поэтому не могу не обратить внимание на то, что ты говоришь, как их нужно писать.


 
cyborg   (2003-04-15 19:54) [46]

Под анимированной я подразумеваю, что на карте предполагаются анимированные объекты, дерево качающееся например, или вода или по началу просто коряка какая нибудь шевелится, мы же не художники, чтобы водопады расписывать.

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

Простота и удобство реализации означает, что разработка игры в дальнейшем на основе этого енгина будет проста и удобна. Т.е. одной функцией, например, можно будет добавить/удалить объект и он автоматом будет анимированно отображаться.


 
cyborg   (2003-04-15 19:57) [47]

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


 
Плохой человек   (2003-04-15 20:07) [48]

2 neuro:

>Скажи мне, такие слова как MFC,WTL,ATL тебе о чем-нибудь говорят?Если да, то почему тогда все эти навороченные (активно использующие ООП) пишуться именно на "недоООПшном" C++?

Ввиду распространённости этого С++ чисто исторически и ввиду коллосальной поддержки со стороны небезызвестной конторы.


 
Плохой человек   (2003-04-15 20:08) [49]

2 neuro:
Вот я любую прогу с ООП забацаю на Delphi с гораздо меньшими усилиями, чем на С++, несмотря на рпактическое единство ООП. Даже если ты забацаешь ту же прогу на С++, то опять таки - кто в ней разберётся?


 
neuro   (2003-04-15 20:31) [50]

2Плохой человек: разбереться тот кто уммет кодить и хоть немного знаком с cpp.

2cyborg: окей. задачи ясны =). будем дерзать.

[кстати, я игры писал, но только не на c++, а на асме, я тогда c++ боялся как огня]


 
neuro   (2003-04-15 20:41) [51]

2cyborg:
вот, кстати, исходники одной гамы =).Это к вопросу об исходниках сишных.
http://www.oakland.edu/~lcmatero/files/duke3dsource.zip


 
cyborg   (2003-04-15 21:17) [52]

neuro если желаешь я тебе вышлю мой DXDrawEngine, пока то, что готово, правда пока без исходников, исходники потом будем смотреть, не вирус.

Это будет Чебуратор: Кибер мозги, я его делал при помощи Jedi-SDL, уже есть играбельное демо, у меня на сайте смотри, но потом захотелось чисто под DirectX сделать, из сторонней библиотеки только FMOD играет музыку, вот пока то что сделал вышлю если желаешь. Размер 228 кб. при посылке по почте распухнет на 33%. Выложить для скачивания на сайт не могу, место кончилось, так что только по почте получится или по аське кинуть. Будешь знать к какому FPS стремиться :), у меня на 800 дуроне при разрешении 1024х768х16 бит карта 128х128 при левой видеокарточке RivaTNT2Pro FPS=~120.


 
k-man   (2003-04-15 21:25) [53]

Чую драка намечается... Между кем объяснять не надо...
2Плохой человек
Судя по твоим постам, которые мною прочитаны, ты не такой уж плохой:-)
2All
Но вообще мое мнение- главное оружие программиста ГОЛОВА, а язык программирования лишь второстепенное средство. Так что если данного предмета(головы) у некоторых нет, то как говорит русская посовица "Нечего на зеркало пенять, коли рожа кривая"
Так что нечего присутствующим голову морочить: С++! Делфи!
(при чтении этого места представить мое грозное выражение лица)
надо сами изучим, сами выберем на чем пригоднее писать ту или иную задачу.
А если делать нечего переезжайте в "Потрепаться" и утерайте друг другу нос!


 
Плохой человек   (2003-04-15 21:31) [54]

2 neuro:
>2Плохой человек: разбереться тот кто уммет кодить и хоть немного знаком с cpp.
А вот это уже поспорим.


 
Плохой человек   (2003-04-15 21:51) [55]

Хех, пора забивать на этот спор. C++ бесспорно мощный язык, по гибкости Object Pascal ему уступает, это видно уже с организации циклов. C++ мне представляется каким-то мелким-мелким конструктором для детей. Собрать можно всё, но с какими затратами. Object Pascal же напротив, конструктор с весьма крупными блоками. За то это компенсируется большим количеством таких блоков - подобрать можно всё. Цель главное - результат. В Object Pascal легче избежать ошибок,код читается гораздо легче. Легче... легче... Идея лежит в том, чтобы иметь большое количество наработок, которые очень легко и удобно применять. В руках опытного человека с такими наработками, Delphi становится наигибчайшим инструментом

Ведь есть ещё и разница - сравнивать с Object Pascal или с Delphi? Здесь совсем другое сравнение.

Про ООП вопрос всё таки спорный. Очевидно, он решается опытным путём и ответ на него зависит от человека и его склада ума.


 
cyborg   (2003-04-15 22:03) [56]

Во, вспомнил свой старый сайт на ньюмайле, туда скинул, правда тормозной хостинг:
http://cyborg1979.newmail.ru/programs/DXDrawEngine.zip
228 kb. качай.

клавиши:
Стрелки - прокрутка
Мышку на край экрана тоже прокрутка
F5 - сгенерировать карту
1,2,3,4,5 - скорость прокрутки
Правая кнопка мышки - показ информации, глючно сделано.
Колёсико мышки, переключатель - помещать спрайты в оперативной или видеопамяти на лету.

Параметры в INI файле по названию понятны:

VideoMemory = 1 - создавать поверхности в видеопамяти, 0 - в оперативке.
VideoSinhronization - видеосинхроонизация

MapX MapY - размер карты, значения от 1 до 128

Размер экрана можешь ставить от 320х200 до 1600х1200 у меня больше видеокарточка не держит.


 
Плохой человек   (2003-04-15 22:43) [57]

>у меня на 800 дуроне при разрешении 1024х768х16 бит карта 128х128 при левой видеокарточке RivaTNT2Pro FPS=~120.

Что-то тут не то.


 
cyborg   (2003-04-15 22:47) [58]

В смысле?


 
Dmk   (2003-04-15 23:32) [59]

cyborg © (15.04.03 22:03)
У меня на p4-2.53Ghz и Gf Ti4400-128Mb ~700-720 fps :) DX9


 
Плохой человек   (2003-04-15 23:56) [60]

На моём компе показывает 37 кадров секунду, но на 37 там не похоже. Где-то 20-30.


 
cyborg   (2003-04-16 00:06) [61]

Плохой человек у тебя тот случай, когда не работает DirectX нормально, запусти DXDiag и посмотри включено ли DirectDraw, ну и по ходу 3D и AGP.

В причине не работании этих вещей недавно мы разобрались, виной оказалась программа NetMeeting, когда она запущена, аппаратная поддержка не работает!
Если это не сработает, то поставь параметр VideoMemory = 0, возможно немного ускорит.

Dmk © (15.04.03 23:32)
Об этом я подозревал :).


 
Плохой человек   (2003-04-16 00:23) [62]

Забей, всё вкалывает, просто комп такой.


 
Sheng   (2003-04-16 00:47) [63]


> >у меня на 800 дуроне при разрешении 1024х768х16 бит карта
> 128х128 при левой видеокарточке RivaTNT2Pro FPS=~120.
>
> Что-то тут не то.


Точно, что-то не то, но у Плохого человека.
У меня на 200-м пеньке, nVIDIA VANTA 800х600 32bit fps=103..128 !!!!
Супер!


 
Sheng   (2003-04-16 00:56) [64]

Да, и есть чё-нибудь ещё такое? Мне понравилось. Можно крутую гаму сделать.

Про спор: на делфях главное преимущество - простота отладки проги, в смысле поиск ошибок в коде. На Ц++ ну хоть убей - если код больше 100 строк, нифига непонятно. Или мне только плохой код попадался...
И про игры: у меня есть исходники "движка" ДУУМА на Паскале. Довольно хорошо написаны. Я даже с первого раза во всём разобрался. А вот на Ц точно бы не понял.

И по сабжу: 2Д игры очень легко писать на дельфях. Быстро и просто. И скорость хорошая. Но без WinAPI, на мой взгляд, не обойтись. По любому. Но его всего учить и не надо. Постепенно, в процессе написания, разобраться легко.
И главное - это свои наработки.


 
Mop   (2003-04-16 02:55) [65]

2 TButton
Под словом "плоских" я и подразумевал 2D и изометрические игры...


 
KefiR   (2003-04-16 23:07) [66]

Если руки растут откуда надо, можно и на Дельфи че-нить приличное написать. Почитайте интервью с разработчиком игры Soldat на www.gamedev.ru она на Дельфях написана. Вообще, согласен, на Дельфи писать удобней, даже низкоуровневый код выглядит приятней :)... А писать игры с применением VCL - ну это же не серьезно. Понимаю, тестовые примерчики еще можно накатать, но серьезную (и даже не если не очень) игру, извольте. По-моему, WinAPI не так страшно, надо только привыкнуть. Насчет скорости и компиляторов: вы посмотрите на современные компы - разве вам большая разница, скока ФПС показывает игра - 700 или 695? Самое тяжелое для процессора - отрисовка 3х мерной сцены, она реализована в DLL, и это вообще не наша забота, так что особенной разницы между компиляторами, на которых откомпилена игра нет, это дело вкуса.
Кстати, не обязательно везде классы использовать, посмотрите KOL- там все на object"ах. Так что, прекращайте споры, лучше делом занимайтесь


 
Плохой человек   (2003-04-16 23:22) [67]

2 KefiR & All:
>разве вам большая разница, скока ФПС показывает игра - 700 или 695?
Нет разницы, даже если 700 и 100. Всё ранво глаз различает токмо 24 кадра. Для компа надо чуть побольше. И всё....


 
reaper   (2003-04-17 16:26) [68]

Что здесь вообще наС++ильники выступают? писать игры можно на чём угодно, лишь был бы нормальный компилятор и соответствующий язык. А Дельфи ничем не хуже С++. Узкие места можно обойти на асме, благо язык располагает... А фанатизм (к С или к другому языку) штука нездоровая. Я надеюсь что С# станет нормальной заменой С++. Это тенденция. Что ни говори а С++ уже того...протух. Пора менять на что-то более здоровое. А то "привычка". К С++ просто все привыкли и к его извращённому синтаксису.


 
k-man   (2003-04-17 16:30) [69]


> писать игры можно на чём угодно,

Писать можно вообще на любом языке была бы голова на плечах и желание работать. Остальное приложится.


 
cyborg   (2003-04-20 16:16) [70]

Монстров туда добавил, стоят на месте и анимируются, ограничил прокрутку экрана и убрал переключение колёсиком расположение поверхностей.


 
cyborg   (2003-04-20 16:30) [71]

Желающим могу дать исходник для разработки своей игры при уловии что в инфе будет стоять восхваления одресованные мне :).
Годится для аркадной игры с тайловой картой, можно переделать на непрямоугольные тайлы, стоит немного изменить код вывода карты, либо для таких игр, как цивилизация, покемоны на геймбое и прочие подобные.

Не всё сделано, так как делал основу, но работает, вроде :), безглючно, в дальнейшем буду делать под определённую игру и код уже будет не универсален ;).

Ещё раз линк на исполняемый файл (272 730 байт):
http://cyborg1979.newmail.ru/programs/DXDrawEngine.zip

Забыл сказать, что сделано всё на процедурной основе, никакого ООП нет и в помине.

Добавление объекта в игру делается простой функцией
Function Create_Sprite(ChainNum : Word; DataSize : Cardinal = 0) : PSprite;
Удаление функией
Function Del_Sprite(Var Sprite : PSprite) : PSprite;
которая возвращает следующий спрайт в цепочке спрайтов за удалённым.

И ещё, дам только хороему человеку :), редискам просьба не обращаться. :р


 
Плохой человек   (2003-04-20 17:38) [72]

А мне?


 
cyborg   (2003-04-20 18:16) [73]

А ты плохой человек :), кому нужно в аську ломитесь.


 
Думкин   (2003-04-21 06:25) [74]

Спорите?
Да все можно сделать, примеры есть.
Игры разные бывают.
И на GDI - хорошие вещи делаются.
Вот мы сейчас делаем большой проект.
Основная вещь написана на Си, но я видел тексты и прочее - на Дельфи - спокойкойно реализуется.
Там есть вставки игровые - все сделаны на Дельфи.
Когда я их сделал, то понял, что там еще огромный потенциал - в логике. Основная проблема - графика в момент вывода. Но тут есть замечательные примеры работы с графикой - поговорите с MBo.
Исходники этих вещей дать не могу - имущественное право - не мое.
Но как-нить выложусь по простеньким вещам.
Игры - это не только Дуум3 и иже с ними. Игры разные и на Дельфи реализуется - все.
А лучше ли Си или Дельфи - это вопрос недорослей.


 
General   (2003-04-27 18:04) [75]

>Игры - это не только Дуум3...
Воистину, верно! Я вот, вдохновлённый многочисленными сообщениями, что написать всё-таки можно, решил попробовать свои силы на этом новом для меня поприще. Так вот, пишу игру гонки. 2D. За графику отвечает интерфейс id3dxsprite объекта Idirect3d8. (Если кто не понял - вывод двумерной графики осуществляет Direct3D. Он побыстрее DirectDraw осуществляет поворот картинки.) Заголовочные файлы - JEDI. Никаких DelphiX ;) С созданием, загрузкой и выводом карты и машины игрока разобрался. Теперь это представляется самым простым... Никак не могу справиться с физикой игры. Как мне связать переменные, символизирующие скорость (двумерный вектор), угол поворота машины (single) и её текущее положение по двум осям с константами максимальной скорости машины, мощности её двигателя, тормозов, скорости поворота, устойчивостью, массой, константами, характеризующими данный участок трассы (макс. скорость, коэффициент трения, коэффициент вращения) и нажатыми клавишами управления курсором??? Если у кого есть готовые наработки, просто добрый совет или ссылки по теме - plz, шлите на мыло: General1@mail.ru


 
Плохой человек   (2003-04-27 20:01) [76]

>Воистину, верно! Я вот, вдохновлённый многочисленными сообщениями, что написать всё-таки можно, решил попробовать свои силы на этом новом для меня поприще.

Удачи.


 
Дмитрий К.К.   (2003-04-29 06:54) [77]

Аминь.


 
Редиска   (2003-04-30 02:44) [78]

2 cyborg

Обидно...


 
Мор   (2003-04-30 02:50) [79]

2 cyborg

Сразу видно - никаких DelphiX. У меня на 900 Атлоне при 1024x768 за 200 FPS косит :)


 
viman   (2003-04-30 11:26) [80]

Народ посмотрите сайт http://www.gamedev.ru/.
Мне вот это особенно понравилось http://www.gamedev.ru/almighty/images.shtml?id=9
Надо исходнички поискать у них.
А DXDrawEngine.zip фигня какаято.



Страницы: 1 2 3 вся ветка

Форум: "Игры";
Текущий архив: 2003.11.13;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.62 MB
Время: 0.041 c
14-41995
Aleksandr
2003-10-17 14:55
2003.11.13
Как из проекта DLL на Делфи скинуть файл .h?


1-41440
Petrovitch
2003-10-29 12:33
2003.11.13
Как записать данные прямо в EXE-шник


3-41105
Witaliy
2003-10-26 20:03
2003.11.13
TIB компоненты в потоках


1-41222
SkyRanger
2003-10-31 16:21
2003.11.13
Небольшой вопрос про наследование


1-41658
Mister
2003-10-25 15:52
2003.11.13
Помогите пожайлуста!





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский