[size="5"]What would you like to do?
This part of the article is very important. Game development is a very hard business. Nights are missed, days are full and money is lost. If you are not doing something you are enjoying, there is no point in even starting. There are many different sections in game development. There is programming, art, music, design, managing. I made these categories very broad so you can research more on each section later.
Programming is, to me, what makes a game. It takes every other section and implements into a 'engine' which is made to support all parts of the game. Artificial intelligence is programmed, graphics are rendered, music and dialogue heard, numbers crunched and environments created and destroyed. Programming can take away your life or enhance it to the fullest. Money is definitely to be made in this black art of game development and these skills can be used (and should be) in programming out of game development.
Art can make or break a game just as much as programming. You must be creative, open-minded and willing to redo anything you have for the enjoyment of others. Art has many subcategories including, GUI (graphical user interface), 3D modeling (the actual characters, weapons, buildings and anything else you see), texture art (the 'textures' you see on these weapons which paint them) and animation (moving everything you have just seen in a realistic fashion).
Music is in the game development world to set the mood for games. If you were playing Metal Gear Solid and heard *NSync playing in the background, it sure would lose the tension it once had, wouldn't it? A musician or sound technician must also be creative and be able to create an environment just like the artists of the company will do.
Design may not take many technical skills but you must know the game industry and development process inside out to be good at this. Our lead designer/3D modeler at Silverlime Studios studies books/articles on game design, researches games and knows what to do in every situation to create a game that we hope will be original and show his designing talents. Design can be very fun but can also be a very stressful job that goes on without end. A typical design document is at least 50 pages long and describes every menu, mission, item and action along with every other game component. A good design document should get the whole development team excited about the game.
[size="5"]The tools you will need
If you are looking to be a programmer, you will definitely need a lot of books or be able to sit at the computer for hours at a time. The first thing you should get and be familiar with is a compiler/IDE which is where you will actually program the game in and compile it into a .exe file with resource files like models/music/icons. I recommend Visual C++ 6 from Microsoft. If you *really* hate Microsoft, there are other options like Codeplay's VectorC which is made specifically for game development.
There are two main ways to go when you are programming: the OpenGL and DirectX ways. For all the Microsoft haters out there, OpenGL is the way. OpenGL can also be the way if you don't want to learn all the Microsoft-specific code which can be a killer.
I personally use OpenGL to program, along with C++. I have never had the time or guts to learn MFC or anything I didn't learn while programming in DOS. There are many tutorials on the internet for those of us learning to master this language and this really helps.
Art can be a very expensive hobby when in game development. To develop a GUI, you will need a great 2D art program such as Adobe Photoshop v6.0. This costs $609.00 US currently but it is all that you need. I use Adobe Photoshop for all my 2D graphics development which I use for web design, GUI's and just when I want to be creative. If you want the free option, use Microsoft Paint, it doesn't produce as stunning graphics but does the job.
A great 3D modeling program used by almost all professionals is 3DS Max by Discreet Software. The software is very expensive but it is definitely the best out there. Discreet Software also makes a free 3D modeling program which is great for beginners called GMax. It is something to definitely look into and all you have to do is register.
Music is something I am less familiar with. You will need more hardware than with any other part of game development because sounds are recordings of sounds, with changes made using software. A good recording studio software package is key and will put you up at the top because having some great tools is a huge part of this profession.
For design, getting a word processor such as WordPad is good enough. You and your team should use a private forum to discuss ideas because it saves the data and allows for thoughtful posts.
[size="5"]The production process
You may be thinking that it is a bit too early to be mentioning this but it is great to know what is going to be happening before you get into it. The first job that will be really effective in the process is the designer(s). I am breaking the process down into steps, read on below:
1) Design
- The designers meet (over the internet or in person) and get a feel for the game
- A design document is written
- Explains every aspect of the game including menus, items, actions, the world etc.
- Shown to all members of the project for review and editing
- A final design doc should be written 2) Technical Document
- All the programmers (and others, if necessary) should read the design document together
- Explain what the engine is going to be like and how it is going to implement the design
- All the code should be broken down so it is able to be easily understood 3) Engine Development
- Programmers will be working very hard at this point
- Program every important aspect of the game (graphics, sound, input, output, terrain etc.)
- Usually called the 'framework', the first version should include everything for an alpha
- Keep as bug free as possible and test everything one step at a time 4) Initial Art
- A simple GUI should be created
- Models needed for an alpha release created
- Nothing needs to be 'final' art
- These should prove what the engine can do
- Excite the team even more (no screenshots on the internet, yet!) 5) Sound
- Intro music to set the tone
- Nothing final or time-consuming
- Just create a semi-realistic world for the alpha 6) Beta
- After the alpha release is perfected
- Add most if not all levels of the world
- Almost all final art should be completed
- Sound should be complete or very close to completion
- As bug free as possible 7) Testing
- Release the beta publicly or privately for a beta release
- Bugs should be able to be reported easily
- Get skilled gamers and preferably people who know about the game dev. industry 8) Final Release
- All bugs should be out
- Everything perfected and the full team excited
- Publisher contacted and ready for distribution, whether online or on shelves This process takes most studios between 6 months and 3 years so do not try to rush it. Keep the team excited and working fairly hard at all time because if the team is not excited, they will not produce their best-possible work and the game will fall apart right before your eyes.
[size="5"]A step-by-step guide to your game development profession
- Programming
- Choose a compiler/editor/debugger
- Dev-C++ for Windows, Click Here
- Octopod C++ for Windows, Click Here
- Rhide for Linux, Click Here
- Glimmer for Linux, Click Here
- Borland C++ for Windows, Click Here
- CodeWarrior, Click Here
- Visual C++ 6, Click Here
- Learn C++
- CPlusPlus.com Tutorial, Click Here
- CodeWarrior University, Click Here
- Cprogramming.com, Click Here
- OpenGL or DirectX
- Microsoft DirectX 8 SDK, Click Here
- Learn DirectX 8
- Mr. Snow DirectX 8 Column, Click Here
- 3D-Graphics, Click Here
- Learn DirectX 8
- OpenGL, Click Here
- Learn OpenGL
- NeHe Productions, Click Here
- GameDev.net OpenGL, Click Here
- OpenGL SuperBible, Click Here
- Learn OpenGL
- Microsoft DirectX 8 SDK, Click Here
- Choose a compiler/editor/debugger
- Art
- Choose your category
- 3D Modeling & Animation
- Choose your software
- 3ds Max, Click Here
- Gmax, Click Here
- Milkshape 3D, Click Here
- Learn It
- 3D Workshop, Click Here
- Photo Realism Tutorial, Click Here
- NeverWinter Vaults, Click Here
- Choose your software
- Texture Art
- Choose your software
- Adobe Photoshop, Click Here
- Adesign, Click Here
- Microsoft Paint
- CorelDraw, Click Here
- Corel PhotoPaint, Click Here
- Learn It
- Designs by Mark, Click Here
- Phong, Click Here
- Choose your software
- 3D Modeling & Animation
- Choose your category
- Music
- Choose your software
- Cakewalk Pro Audio 9, Click Here
- Cakewalk Home Studio 9, Click Here
- Steinberg Cubasis PC, Click Here
- Choose your hardware
- Lexicon Core2, Click Here
- M-Audio Audiophile 24/96, Click Here
- Get familiar with it
- Record sounds, edit and see what happens
- Create sounds from scratch
- Try to recreate other effects
- Download sound effects
- Stonewashed, Click Here
- Sound Ideas, Click Here
- Choose your software
[size="5"]Recap
I hope you have chosen your path to entering the game development industry. I have left some more confusing paths in the dark as to keep this simple for those of you like I was, just a while back. We all need something like this at one point or another.
Whether you make it as a programmer, designer, artist or sound technician, game development can be the best thing that has ever happened to you. There are great rewards and some great people and communities.
Each profession/hobby has its benefits and you will find those out. It is best to do this early so why not try them all. There will be one that you catch on to and, before you know it, you will be applying to a game development studio; whether it be a virtual development team or a giant game development studio in your city.
Brock Ferguson,
brock@lonegamers.com - Programming