• Advertisement

Archived

This topic is now archived and is closed to further replies.

Is Delphi good enough for rtgp?

This topic is 6222 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hello all! I ''m a newbie in Delphi and Game Programming. - I ''m just wondering; is Delphi good enough tool for a programmer to create a high quality real-time adventure game like WarCraft for example? Or C++ is a must in this case? If it is good enough, is there any example of quality rt adventure game writen in Delphi? - Any good introductory tutorials on the Net on graphics and game programming using Delphi? I found a few but you might know some good ones that I didn''t find. thanx a lot in advance GyLfEr

Share this post


Link to post
Share on other sites
Advertisement
I hear that Age of Empires was originally written in Delphi until they got Microsoft as the publisher then they made them switch. Boooo Microsoft!

Delphi is good enough to do anything C++ is don''t let anyone tell you different.

Share this post


Link to post
Share on other sites
offff courrsseeee ! why not ?

I think, all languages is good enough to make a game. remember, a good game is not only from its language, but also the design, the gameplay, the computer running it, etc.
agree ??? ^_^



--TONY ^_^

Share this post


Link to post
Share on other sites
You can make a top game in any language, provided that you''re smart ;-) (otherwise no language will be good for you). It''s idiotic to say that C++ is more "advanced" or "powerful" or simply "better" than Delphi just because it''s C++. Remember - the best language is the one you''re efficient in. In fact, u can make a game which will be a lot better than any #1 game at this moment in pure assembly (although it''s a lot of work ;-)).

Cheers
- Lifepower
(Haven''t been on these boards for ages... Cheerz Michael)

Share this post


Link to post
Share on other sites
Hi there,

saw an interesting article on Delphi3D the other
day about performance of code from several compilers
and it transpires that delphi is faster than c++builder.
according to the tests carried out there.

Share this post


Link to post
Share on other sites
And that''s why we have DelphiX for our help, to make us do better games! ))

Of coz you can program games in wich programming language you prefer, and I prefer DelphiX, I have my own Shoot''em up, don''t finished yet, but a good start anyway!
My group will do any effort to make games in Delphi, so don''t let MS get you guys!

Marco Eberhardt

Share this post


Link to post
Share on other sites
For me, I believe that the only things Microsoft have, which is better than Borland Delphi, is only his "line editor". All other is simply *suck*.


--TONY ^_^

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
I started out with DelphiX but have since moved on to using DirectX 8 headers from delphi-jedi. Was this a good move? I dont think DelphiX was past DX7 was it and now my code is almost exactly the same as all the C++ examples so it is much easier to learn from all those C++ tutorials on the net.

As for developing games in Delphi, the only problem I can see is lack of support. Almost all tutorials are for C++, but then again, if you know Delphi well, go for it.

Share this post


Link to post
Share on other sites
MS did not use Delphi in devolopment of Age of Empires that rumor started when some people messed Age of Empires name with Age of Wonders which is programmed in Delphi 3.

C++ Builder uses Delphi VCL lib so it is little bit slower than Delphi when you use component but when you use windows API directly speed is all moust the same.


Pexi

Delphi forever

Edited by - Pexi on January 30, 2001 2:38:08 PM

Share this post


Link to post
Share on other sites
quote:
Original post by Pexi
C++ Builder uses Delphi VCL lib so it is little bit slower than Delphi when you use component but when you use windows API directly speed is all moust the same.



I would have to disagree with that statement. The compilers are so similar that there should be no noticeable difference in speed. I would be interested to hear if anyone has real-world experience in differing speeds. Or to suggest a simple demo application that might best test any difference between the two.

Steve ''Sly'' Williams  Code Monkey  Krome Studios

Share this post


Link to post
Share on other sites
quote:
Original post by Sly
I would have to disagree with that statement. The compilers are so similar that there should be no noticeable difference in speed. I would be interested to hear if anyone has real-world experience in differing speeds. Or to suggest a simple demo application that might best test any difference between the two.



The speed difference doesn''t come from compilers because they are as you said "so similar" but it comes from the fact that C++ Builder uses Delphi VCL lib. Speed diffrence is so little that it doesnt matter... This is only my opinion and it doesnt base on testing.... I used C++ builder couple of years ago... But when I got my hand on Delphi I just fell in love... I have noticed some diffrence in speed of the previous versions of Delphi & c++ builder... But I haven''t used newest version of c++ builder so I don''t know if it is faster... Maybe somebody should do some speed testing... It would be very interesting to see the results....

Pexi

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
You can''t port delphi to a console , so for anything serious you need to do it in C...

Once this problem is fixed I''ll turn over to delphi.

bye
René Kneyber

Share this post


Link to post
Share on other sites
I''m a huge C++ fan, but the speed for creating games for Windows comes from DirectX, so long as you''re using Dx & not the GDI it''ll be fast enough.

In order for the minor language inefficencies of object pascal overr C to be realized on a modern machine, you would have to have a serious design flaw in your code. Even if it was a problem, you /could/ eliminate the issues by not using pascal calls and disabling bounds checking etc...

quote:

It''s idiotic to say that C++ is more "advanced" or "powerful" or simply "better" than Delphi just because it''s C++.


Common, Delphi can''t compete with the STL. Though you''re right, it''s not C++ that''s more powerful, it''s the libraries available that more powerful. Templates are awesome.
For a RAD tool, Delphi is the daddy, and it seems that to most RAD is more important than an efficent reusable stack... (TStack blows, hard IMNSHO).
Delphi''s OWL is more intuitive than MFC, but since I am familar with them both noww, it takes me the same amount of time to create a GUI in MSVC as it does in Delphi or Builder. Well, slightly less in Delphi than MSVC, becuase Delphi compiles so much faster
It does take a lot more time to become proficent with MFC than it does to start using Delphi TObject''s.

Share this post


Link to post
Share on other sites
>You can''t port delphi to a console , so for anything serious >you need to do it in C...

What do you mean ?
Delphi can do Win32 console applications, and there is no benefit from using DOS mode with modern CPUs, might have been true in the 486 years, but no longer is.
Btw, there is *no* benefit from making a console application at all. As a matter of fact, a console app is slower than a standard app, because Windows activates various console stuff that may not be needed.

You''re probably mixing up console and VCL. The only disadvantage of VCL is executable size, but unless you''re doing 20 kb utilities, exe size is not a problem in any real world application, the size of data, media and ressources is.

>Delphi can''t compete with the STL. Though you''re right,
>it''s not C++ that''s more powerful, it''s the libraries available
>that more powerful. Templates are awesome.

hehe, ever worked on multi-year-long projects with many people of various proficiency involved?
That''s when template-based approach and STL become everyday''s nightmare... Template are good as long as they are not overused and the functionality they provide suffices for your needs, if not, well, it''s like multiple inheritance, looks good with a few classes, but with many classes managed by many people, forget it, it becomes a bug-nest.

And, as a matter of fact, I have yet to see a STL-based project coming on faster than a similar purely OOP project based on a few well-thought foundation classes (mostly in the bug-hunt phase...)

On the compiled-code speed difference between BCB and Delphi, perhaps we should make a comparison/contest on a few standard algorithms/patterns?
Could be of some help if weaknesses are uncovered (f.i. the major Delphi weakness is its FPU code generation, clogged with unnecessary "FWAIT" instructions, dunno if BCB has it).

Just my 2cents... to restart the C/Pascal war



---
Eric Grange
http://glscene.org

Share this post


Link to post
Share on other sites
quote:
Original post by Eric Grange

>You can''t port delphi to a console , so for anything serious >you need to do it in C...

What do you mean ?
Delphi can do Win32 console applications, and there is no benefit from using DOS mode with modern CPUs, might have been true in the 486 years, but no longer is.
Btw, there is *no* benefit from making a console application at all. As a matter of fact, a console app is slower than a standard app, because Windows activates various console stuff that may not be needed.

You''re probably mixing up console and VCL. The only disadvantage of VCL is executable size, but unless you''re doing 20 kb utilities, exe size is not a problem in any real world application, the size of data, media and ressources is.



The poster meant console as in Sony, Nintendo or Sega (well, maybe not Sega since the Dreamcast is now discontinued). All of the dev kits for these consoles use C++. Delphi cannot be used for these consoles. Things might change with X-box since that will be so similar to a PC configuration (AMD processor, DirectX 8, NVidia chipset), but I doubt it.

Steve ''Sly'' Williams  Code Monkey  Krome Studios

Share this post


Link to post
Share on other sites
>The poster meant console as in Sony, Nintendo or Sega

oops.

That meaning of "console" is so alien to me I didn''t even thought of it...

>Things might change with X-box since that will be so similar to
a PC
>configuration (AMD processor, DirectX 8, NVidia chipset), but I doubt it.

I doubt it too, this is a world of hardware-specific tricks, and a relatively small developper market with lots of subsidized hardware and software...
The funny thing about XBox is its lack of memory... and with a memory hungry M$ OS and DX8 on top of it...

BTW, I thought it was an Intel processor?

---
Eric Grange
http://glscene.org

Share this post


Link to post
Share on other sites
99% of all commercial games are C/C++ (more C++) and 100% of all killer 3D engines are in C++. So this should be the final unquestionable answer to all questions of this kind. So the best way is simply learning C++, since the language is OK, but more important is is the damn standard, and 99% of all SDKs, documentation and books are made for it.

But this doesn''t mean you cannot create good games with delphi. I just doubt that Delphi was ever intended as a tool for creating high-perf applications. VB6 is just fine for developing COM objects, ActiveX controls and database stuff and RAD. You can also make games with it, but C++ is simply better suited for this. This doesn''t mean that Delphi or VB6 sucks, they are just not intended for this kind of development, they have other areas where they shine.

Even to a newbie it should be obvious that anything serious is developed in C++.

Tim

--------------------------
glvelocity.gamedev.net
www.gamedev.net/hosted/glvelocity

Share this post


Link to post
Share on other sites
ItZ a matter of history.

Just because most people use C++ does not mean it is the better language. Everybody tends to stick with what they were taught, and most of the industry got fed C++ during varsity.

The alternative a li''l while back was TurboPascal, which was a great little language; but did indeed have some limitations and problems that C++ did not offer.

Important to note is that not the language itself, but the compiler posed these limitations - modern compilers on the other hand are virutally identical in power and capabilities; and the choice of language comes down to personal preference.

Since games in particular tend to make heavy use of DirectX and similar COMs, the actual power of the compiler becomes less significant aswell - since only an interface from your program to the COMs need to be established.

The datastructures and other programming tools that >we< as programmers actually make certainly don''t make differences in compilers/languages prominent.

-- - --- -- -- -- - -- - --- - --

It should be noted that C++ is infact a >very< old language, and actually obsolete by modern standards (just because everybody uses it, don''t make it new).

Delphi looks like TurboPascal, but ultimately alot of its philosophy and methodology is based (to my knowledge) on the newest work by Wirth and his "Oberon" language (who holds the Turing Prize - the Nobel Prize equivalent of computing).

-- -- --- ---- --- - --- -- - ---

It is a pity that the Borland Compiler does not seem to have changed much since Deplhi 2/3 - it seems to deliver more or less the same results (primed for 486/Pentiums) instead of staying on the ball with newest compiling techniques and chip trends.

*grinZ*
my 2billion cents.

A-Lore

Share this post


Link to post
Share on other sites
>Even to a newbie it should be obvious that anything serious
>is developed in C++.

Do you realise the number of hours that get lost to pointer-related bugs in C++ houses? or the hours lost to compiling?

Like LoreKeeper said, it''s all a matter of history, you''ll find many peoples out there who aren''t programming in C/C++ because of legacy, to name a few FORTRAN, COBOL, ABAP, PL/SQL...
The first two are losing ground, but did you know the latter two are on the rise, while just being puny leftovers from the 70ies? (answer: SAP & Oracle...).
C++ is strong because of legacy. At a time, it *was* one of the best langages all around. But things change, and C++ is severely lacking in the OOP area.
One of the biggest supporters of C/C++ is Microsoft, but that''s mainly because their investment went into it early on, now they are stuck.

Funny thing:
Do you know that a majority of C/C++ developpers think OOP is slower than procedural programming because the virtual function calls are executed slower?
(unfortunately, many Delphi developpers think that too...)

>I just doubt that Delphi was ever intended as a tool for
>creating high-perf applications.

Hehe, just show the code snippet. :D
Most of the C "optimization" tricks (+=, ?:, ++) won''t take you very far if the compiler can do it on its own (and the ternary operator will actually take you down, it is a performance decelerator on superscalar CPUs like P3/K7).

High-perf is not a langage feature, it''s a state of mind.



---
Eric Grange
http://glscene.org

Share this post


Link to post
Share on other sites
To the person that said that Delphi could not be ported to console gaming systems. Tha is not true. The whole point of having a programming language is to have an interface with the under lying assembly code. Therefore any langauage can be ported to any platform. It is just a matter of tranlating the syntax to that particular machines native tongue.

It''s me, it''s that T-H-E-D.

Share this post


Link to post
Share on other sites
Heck... *grinZ* - gonna add another 1billion cents...

I dig what Eric Grange said... and just wanted to add a few more thoughts...

Think about some big-name games out there now... (Baldur''s Gate 2 comes to my mind (love that game) :D ).

On the programming front the game is "cheap" - seriously... the game/graphics engine is great, but it doesn''t take a Carmack to write it.

Seriously... the game is solely a massive multimedia database - its greatness is (in my mind) due to the excellent efforts of the story, music, sound and graphic artists.

Give me a set of people that produce such outstanding work (and have such an enourmous budget) and I''ll wip-up something worthwhile in Delphi or justabout any other language.

so start using Delphi already!
A-Lore

Share this post


Link to post
Share on other sites
Hmm, I''ve never tried Delphi...I got ''stuck'' with C(++) & assembly far to early on...anyone actually know any decent tuts on Delphi ?

Not really knowing much about game programming in Delphi, I''d assume you''d be stearing away from stuff like VCL, so I can''t see why there should be much of a speed difference (but I do like _small_ compiled files {to be honest LCC does the best job} )

> "Most of the C ''optimization'' tricks (+=, ?:, ++)..."

As far as I know the only reason for the "optimization tricks" is to save some typing, I doubt the compiler uses it as an optimisation hint.

Share this post


Link to post
Share on other sites
Heard on the Game Programming newsgroup :

"Age of Empires was written in Delphi. And it stayed that way."

"Microsoft has more licenses for Delphi than anyone else."

I think they meant Age of Wonders. Age of Wonders II is supposed to also be written in Delphi, along with Siege of Avalon.


"NPCs will be inherited from the basic Entity class. They will be fully independent, and carry out their own lives oblivious to the world around them ... that is, until you set them on fire ..."

Edited by - morfe on February 9, 2001 1:58:21 AM

Share this post


Link to post
Share on other sites

  • Advertisement