How would you approach creating a game with Delphi?
I keep playing with Delphi Prism and recently downloaded XNA Game Studio 3.0. It installs very nicely into Delphi Prism. I wonder what is the most commonly used software for creating games that will run on Windows, but also game consoles like Wii, XBox and Playstation and portables like Nintendo DS.
Do you remember "Prince of Persia" computer game for DOS? It was so fun and challenging to get through all 12 levels in just 1 hour. Have you seen how the newest "Prince of Persia" looks like? Here is the link to a video review.
Wouldn’t it be cool to create games in Delphi? Any ideas?
{ 20 } Comments
I think it would be a hoot to create a game in Delphi. I was actually thinking about doing something with XNA and Delphi Prism too. Did you play with the Robot-Rage SDK any? (www.delphi.org/robot-rage/)
I think it would be cool to start with something simple like battleship (with a twist). Then build up from there.
Hi Pawel,
This is a very good question. There were many reasons why my company (3D scanning) selected Delphi and still does. Multimedia and graphics were needed. And, at the time there was actually a lot of potential for Delphi and games, hence graphics. OpenGL graphics to be specific. While the .NET D8 syndrom seemed to have killed this progression at the time in did not change the decision for us to use Delphi (another version). But now again we are at a crossroads with Prism. The main idea behind Prism is liberation, allowing you to move your code onto different systems. That said, Microsoft XNA Game Studio is probably a great and easy way to code for multi "products" from Microsoft. I sincerly hope that this combination gets supported as well as stimulates other game hardware suppliers to open up there systems. Then again, using OpenGL in Prism means that you can easily liberate your code for core gaming "solutions" on most all OS. That was our reasoning.
Games have always defined the cutting edge of graphics technology. Games houses have jealously guarded secrets on how they achieve that speed. It would be interesting to discover how Microsoft XNA GS achieves this. Does it use DirectX?
>While the .NET D8 syndrom<
Oooh, I have a headache again…
Game development is a area where Delphi is used very little. That is a pity because game development is an enormous drive for getting young people interested in programming. It is also a field that have influenced a lot in entertainment industry and now rival the movie industry in value.
Graphics games are further a demonstrator for how powerful computers have become. It is what Formula 1 and racecars are to the car industry.
To improve this situation I really do not think that CodeGear should make game frameworks or toolboxes (again). It would be wasting CodeGear times for something that third party companies can do. Rather CodeGear should do the core thing for Delphi that nobody else really can do. Two main points:
- Cross platform compiler for native code. The more platforms that Delphi is available on, the more likely it is that someone will create game engines and games using Delphi. It also requires a long term commitment, not a Kylix go-stop-maybe situation. On the other hand game development (like server app developement) do not require a full VCL to be available on each platform.
- Code generation optimisations. You have to strive for the best not "good enough". If Delphi could output the fastest running code, game developers would be willing to walk to hell and back to use Delphi. In general Delphi is doing pretty well in code generation especially after the help from the FastCode project (great job guys), however some areas like floating point code need improvements.
On the Delphi good apps list that are listed a couple of Delphi made games. See e.g. Space Rangers 2, Soldat and Airblast:
http://tinyurl.com/loahz
News and more about Delphi and Pascal game development:
http://www.pascalgamedevelopment.com/
Doei RIF
Hello Paweł :),
zdaje się, że czasem pisałeś posty po polsku to co mi tam! Tak się składa, że od początku mojej drogi programisty towarzyszyły mi zdania "koduj w C++", "w Pascalu nie można pisać gier", a ja dalej swoje.
Dzisiaj jesteśmy z drugim programistom w miejscu dosyć ciekawym, mianowicie od 4 lat rozwijaliśmy własny framework dla Delphi, niezależny od VCL. Chyba jako jedyni na świecie mamy:
Silnik fizyczny 3D napisany 100% w Delphi, silnik fizyczny 2D napisany 100% w Delphi, silnik graficzny w OpenGL, zaawansowany edytor particle, GUI wzorowne na VCL ale niezależne od platformy ani rendera, edytor nieba, system wirtualnych plików, własny edytor animacji postaci 3D i framework do animowania ich w grze, Edytor kombosów do bijatyk i kilka innych…
Poza tym stworzyliśmy kilka Demek 3D, 2D, trochę dokumentacji i tony narzędzi.
Więc jak widać w Delphi natywnym można
Pozdrawiam.
Jak chcesz zerknąć daj znać na e-mail, to podeślę jakieś demka.
*wyżej oczywiście zamiast programistom powinno być programistą…
Here is a freeware 3D city simulation game called UrbanJungle made with Delphi 7:
http://www.download.hr/windows/file/2803/Urban-Jungle
The game was made by a small team of students and sponsored by several institutions. You have to drive a car and obey traffic rules. It’s a learning game for younger audience. However, please note that the game language is Croatian.
Screenshots:
http://uj.dir.hr/galerija.php
"Original War" is written in Delphi
http://www.original-war.com/
I created an asteroids clone Space Quarry with Delphi years ago (www.briggsoft.com/squarry.htm). My current game is a client/server poker system called Poker Mavens (www.briggsoft.com/pmavens.htm) where the server was written in Delphi using Indy Socket components and the client is a Flash file written in OpenLaszlo.
Funny, my oldest son was just asking about this exact thing last week. He was playing around with XNA and C# for a bit, then was watching me program in Delphi and said…"gee, that looks easier". I’ll have to set him up with a trial of prism and see what he can do.
Heck, its how I got my start into programming. My dad purchased my first computer on the basis that I would not use it for playing games. 4 months later he caught me playing one, and I looked up and replied "but dad I wrote this one."
@buletov
@HNB
@Kent Briggs
Thanks for the pointers, please list the games on the Delphi Wiki:
http://tinyurl.com/loahz
Thanks to project jedi, give us the C++ Headers translation and DirectX Header. however, there is no good framework to support it, vcl is too large, undelphix is old… and i haven’t find a 3dsmax engine for delphi. maybe we should start a project to make a 3d directx or opengl project which make it easy to make a delphi game.
There is a portage of Doom, Hexen and Heretic from C to Delphi, and it function very well the website is http://delphidoom.sitesled.com
And there is Delphi convertion of Quak2 at http://www.sulaco.co.za/quake2/default.asp so it demonstrate that it is possible to write a serious game with Delphi
Good games to make are simcity, civilization, risk etc they always make people feel good about something
@buletov
I tried the Urban Jungle Autoskola. I cannot speak a single word of Croatian, but I somehow managed to navigate through a number of menus and started my driving lesson on a closed area, doing parallel parking and so. I was then let out in the traffic. The driving teacher also speaks his instructions in Croatian. I had no idea what he said, but it was clear from his tone of voice that he did not like when I was driving onto the pavement or starting to early from traffic light before it was green :-). It is a really neat traffic simulator and looks good. If it was translated in English and placed on a site like download.com, I think it would find a lot of fans.
Other things I learned: da = yes, ne = no?
This has already been done. Don’t know if the link is still available, but there was some XNA samples with Chrome (Oxygene) and this should apply in Delphi Prism. Perhaps RO can give you the link to be published here.
@Rif: Well, you’re correct on the ‘Da’ and ‘Ne’. AutoSkola means CarSchool, this whole game was project sponsored by the local AutoClub to teach kids traffic rules, but the game is now also used in some car schools as well. It’s not translated probably because the sponsors have no real interest in translating the game into other languages :(. Also, there are no hills in the game, everything is flat. BTW, the town is actually a copy of the town I live in, and in reality it’s full of uphills and downhills.
@Liz
I think "Birth of America" would cover your request for a risk like game. Check the Delphi Wiki app list or here:
http://www.armchairgeneral.com/game-review-birth-of-america.htm
Wow you guys must have never heard of the PGD website. It’s the main watering hole for all things game development with the Pascal and Object Pascal languages. Yeah, it’s kind of a company line I guess, but it’s true.
I ran the site for 4 years, but stepped down from doing so it’s under new management right now. But guys have been making games with Delphi and other Pascal compilers since 2002. Using such things as DelphiX, OpenGL/DirectX/SDL/OpenAL translated headers, Asphyre, GLScene, Phoenix Game Library and a whole shopping list of engines and packages all for the intent of making games and working with sound and graphics.
I strongly recommend checking out the site and doing some reading: http://www.PascalGameDevelopment.com
Note that Delphi Prism does not work on Visual Studio Express 2008. It works on the Visual Studio Shell and commercial versions of Visual Studio.
Post a Comment