So before you spend your acne cream money on buying Tricks of the Windows Game Programming Gurus--listen up.
It seems lately that there is a great interest in the area of developing games. Although this is great, before you decide to make the next Final Fantasy series, or Quake 3, you should really know what you are getting yourself into.
Lets start with the basics: inspiration. Inspiration is the way that most people start programming games. They have an idea, and they think that it will be REALLY cool if they can actually bring life to their inspiration by means of creating a game. Which is how i started, and how most other people gained interest. This is great, the gaming industry needs original games. But the reality is, that if you are just beginning, your game will most probably not hit store shelves anytime soon and here why...
The first thing you need in order to bring life to your creation is a basic knowing of what is involved: What type of skills are required for the creation of games? What type of skills do I possess? What type of game is it going to be? What software will I need? What hardware will I need?...Lets answer these questions together.
First, what type of skills are required to actually create a game. The first skill you need to have, and this even preceeds programming, is the ability to plan out every detail of your game. Every single intricacy, every minute detail needs to be dealt with before you even think about actually doing computer work on the game, although these may change slightly later, it is important to have a goal to work towards.:::::Ok, you got the storyline, character interaction,the platform(s) you intend to design it for, and other aspects of gameplay down; lets move onto what skills are required to make the game on your computer.
(Note: you do not need to be able to do all of these, but there should be at least one person working with you on the same project should)
*)A basic understanding of how a computer actually works. Now some of you *scoff* at this, but dont, it is more important than knowing C++ syntax. If you don't know whats going on, then there is no way to understand programming errors and such.
*)A computer language that you are comfortable with(ie know enough about to do more than a "Hello World", preferably C/C++, but is dependant on the scale of your project)This is important, because most of the API's are written in C)
*)A basic understanding of how graphics work(if it is not a text game, once again, Im assuming), there are tons of resources on the net and in books to help you with this. In fact gamedev.net is an excellent place to start(plug).
*)If your game has sound, you have to know how your specific platform handles sound.(once again, these are what is expected in "a basic understanding of how a computer works")
Now to the aesthetics(pretty stuff)
*)Some one is going to have to know how to use an art program, your crayons dont work on the screen.
*)If you plan on making a 3D game, then someone is going to have to know how to use a 3D development tool.
Ok, ok, sounds like alot, are those all the skills that I need?:::Well it really all depends on the scale of your project, and the type of game that you are making, but these are generally the bare necessities.
Ok, well that answered three questions...see it isnt that bad. Lets continue to the next question: "What software will I need?"
Now here is a question that brings up debate for a couple of reasons: the first, well as always people argue on which package you should use; the second is should someone use warez. Let me answer this concisely: Use whatever you can afford, and if you can afford everything, use the one that gets better reviews if you have time to learn it, but if you dont, then use the easier ones. And no, no warez (period). Warez is an insult to programmers, and developers. "but but, w-what if i cand afford i'h" Then dont buy it, goofball, you dont need it.
Ok, lets list some software:
*)Compiler/IDE-Well this depends on your OS and your targeted platform. You should get one that you are comfortable with, and one thats nice to look at for long periods of time. I choose Codewarrior because I develop Mac(and now Linux) software, but if you are aiming at windows Ive heard that Microsofts VC++ is the best one. Now these are all pretty costly. If you want to just get your feet wet to see if you like it, there are plenty of free compilers out there and some IDEs too.(MPW for mac is amazing, almost as good as Codewarrior, and DJGPP, is a free compiler for dos, im not familiar with others, but this is a great place to ask, and linux is usually package with everything that you would need)
*)Art program-These can cause you to take out a second mortgage, but there is some good advice when it comes to purchasing them.1)If money is tight, look for free ones, GIMP for linux is amazing, and there is a port for windows. For macintosh there are plent of freeware/shareware programs out there and all at www.macdownload.com. 2)Know what you need: you _dont_ need 3d studio max if you are just beginning, so dont ask your parents ro advance your allowence for the next 40 years so that you can buy it. The truth is, most people, and all beginners can do without an industry standard 3d modeller. For a run down on 3d modellers go to www.3dcafe.com.(plug)
*)Sound program-well, this isnt my area of expertise, but my sound-artist does a great job. Sound Forge is good. I dont know if there are any cheaper ones. But like i said before, i dont need to know how to make music/sfx
Ok, these are all pretty necessary, there are some others, but you wont need them to start.
Hardware Hardware Hardware.
Ok, well first off youll need a computer.
You probably know that(or at least i hope so) so lets go on to development specific hardware. Some games you can just make on your normal pc, but others require a bit extra(not too much
*)RAM-yes, ram, youll need 128 megs if you plan on using a 3d suite, or if you mind your computer reading from the hardDrive every two seconds(slow)
*)Monitor-id suggest at least 17", especially if you are doing graphics. its nice to be at a resolution above 600x800 and a refresh rate that wont give you a headache. And if you are incharge of graphics id highly reccomend a 19" if you have the money, although it isnt required.
*)Video card-This is an integral part of gamedev if you plan on using a 3d api. You'll need one that supports OpenGL or Direct3D. Or on a mac, one that will not make you cry because of its speed.
*)Hard Disk-Are you going to try to include cinematics? Well those take up alot of space. 20 gigs should be nice enough to carry your programs/work and leave room for you to have playtime. You wont need SCSI, IDE is fast enough nowadays.
*)Mouse/Keyboard-hey dont be stingy, youre making an investment, get comfortable tools
*)CPU-Im an advocate of the clock-speed doesnt mean anything school, but id suggest at least a P2(cellie too) or PowerPC 604e if you are doing heavy stuff. Although id reccomend higher.
That just about covers hardware.
Now you see how much is involved in making a game. If you have the time and dedication go for it!!!! but if you dont, wait until you do, then start.
If you need any help with Mac programming, or just programming in general, come to #gamedev on afternet, thats what its there for, just dont be rude.
And if you want to know about mac software packages email me at firstname.lastname@example.org
And if youve read this all of the way through, pat yourself on the back.
Edited by - firahs on 1/25/00 12:18:25 PM
Ok, maybe the title should be, "A word to the youth, and beginners of all ages..." (Im not implying that the youth will benefit from this, but lately, it seems as most would