There are a vast number of different ways to approach this. Todo
2D
animation, you generally draw your sprites using a paint package such as
Photoshop or PaintShop Pro. then
you create an application using Delphi to
draw these sprites on the screen.
Todo
3D, you can either generate the 3D information algorithmically or use
a 3D editor such as 3DS Max or MilkShape (to name two of the numerous 3D
programs out there) to generate a mesh. You then
create an application in
Delphi that loads this mesh and displays it using OpenGL, Direct3D or one of
the many engines/libraries that encapsulate OpenGL or Direct3D.
So, put simply, you need a number of data creation tools. This could any of
the following
- paint package to create 2D artwork (sprites, fonts, etc) and/or textures
(to map onto your 3D mesh)
- 3D design package to create the 3D meshes and animations
- sound editor for recording and editing wav files
- music editor for creating and editing music
- level editor to create the levels for your game. This is usually specific
to your game.
- any other custom tools that you may require for your specific game
Your game then
loads the data created by the above-mentioned tools or
generates the data via various algorithms at run-time and displays it
on-screen using 2D or 3D as desired or plays it through the soundcard.
I spent most of my university days playing games and studying how they were
created. That's probably why I ended up failing the course, but Ido
think
of those days, twelve years ago, as an essential step towards my current
career as lead programmer on a major PlayStation2/GameCube title. We use
all the above tools and many more in the development of our games.
Take a look at http://turbo.gamedev.net or http://www.delphigamer.com for
many links to resources about creating games and animations in Delphi. For
example, http://www.delphi3d.net and http://www.sulaco.co.za have many great
demos using OpenGL that will just blow you away. And they come with full
source code.
If you want to use Delphi for your first little games (and there is no
reason against it) you'll discover very soon that it isn't possible to make
fast and good looking graphics with standart-delphi. the gdi-functions that
go with windows-api or the vcl-components like tcanvas won't suit your
requirements. They are pretty slow anddo
n't support alphablending, rotating
and so on.
There are at least three possibilities for you to achieve nice graphics in
delphi:
- write your own bitmap-manipulation functions. That isn't necessarily
faster but you cando
things like rotating or blending or manipulating the
pixeldate very well. But thats probably a bit complicated for the
begin
ning... (I just point at the Tbitmap.scanlines property!)
- you cando
wnload the jedi-directx files, some wrapper units that allow you
to use directX in your games. I've not tried this yet, but it's as far as i
know the best and fastest way (at least for windows-games) but i guess it's
very complicated too!
- the last way to start is using DelphiX. That's what i did when the
standard stuff wasn't sufficient anymore. DelphiX contains some great
components and tutorials wich allow you to use directX accelaration in your
game. It's really easy to use.
Have a look on www.delphigamer.com or at http://turbo.gamedev.net (as steve
allready said). there you'll find linksdo
Jedi-DirectX and DelphiX.
Btw: I'm quite a newbie too, so if i said anything wrong please correct me!
And i know that i forgot things like openGL and SDL in my list...