Thursday, February 27, 2014

Creating 3d video games 1 - Introduction to game design






Video games have come a long way since the days of pong and pac-man. They evolved from simple squares and bricks chasing each other about the screen into complex multidimensional worlds. Have you ever wondered what goes into the creation of video games or even thought about making a video game yourself ? The task of creating a video game can seem overwhelming and finding a place to start can be confusing. This guide will help you begin your journey into the world of video game development. Keep in mind this guide is designed for hobbyist and low budget game developers. Most of the tools referenced here are free and/or open source. My best advice for you a you begin your journey is persistence. Video game creation consist of multiple task that will require you to master multiple software tools such as 3d modeling and programming so be patient and don't give up. Are you ready ? Then let's jump right in.

Video game creation requires multiple tasks coming together to make one complete piece of work. To best explain the process it's easier to look at each task involved with the creation process individually. I have broken this down into three basic tasks , concept and story , graphics design , and programming.

Let's start with concept and story. All good games begin with a concept. For example , maybe you want to create a new style of first person shooter games. Before you can even begin developing the game you need a story to base your game on. Maybe you are a lone gunman trying to save a planet from an alien invasion or maybe you are squad of highly trained armed forces chasing enemies from planet to planet across the universe. Each of these games would require a different level of depth in your story which would change the design process dramatically. Creating one small world would be a much easier task then creating an entire universe with multiple planets.

Large scale games especially those with intense graphics can be very expensive. Before your game vision become to lofty you need to think of what is your budget and time limit. Perhaps if you're a hobbyist you may want to start by creating a simple game that can be done solely. Something like Pac-Man or Tetris. These types of games can be made in a few short days using today's modern technology.
 
The best part of concepts and stories is they don't require any special high tech tools. A simple pen and paper along with your imagination is all you need. However it's important to consider what resources you have before you start designing your game. Someone who has never dabbled in the world of game design should probably start small and try to create a simple game first then work your way up to something more complex.





Once you have your games concept and stories it's time to move onto the next step in the process , graphics. Graphics would include any images , models , and for simplicities sake audio in the game. There are tons of different tools for creating graphics. Such as Blender for 3d modeling and Gimp for creating great textures. Both of these are free to use however each one has a steep learning curve and will require months if not years to master , however these are very popular and also the tools we use for our game design needs. There are also other cheap 3d modeler tools such 3d Crafter. I would take time in considering what graphics tools you will use because every tool has a different learning curve and switching modeling software mid project can cause lots of complications. Blender and Gimp are always safe choices because they support multiple formats and are very popular with large arrays of tutorials and how to's.

For game audio you can search the internet for thousands of free sounds or use simple sound editing software such a Audacity along with a simple home recording equipment such a computer microphone to achieve the desired sounds you want.



The final and most complicated step of game creation is programming. There are dozens of programming languages to choose from. Currently C/C ++ being the most popular. Choosing what programming language to use will effect every other aspect of game creation. My personal favorite has become Java. The beauty of Java is it is not platform dependent. Java also is the language used by Jmonkey which is a platform independent game creation system. Which means you can write one piece of code that can run on multiple operating systems such as Windows , Macintosh and Linux. Some languages such as C# can only be used to create programs for one operating system.

Once you have chosen what modeling tools and language you will be using to create your game you are on the path to making your first game. Take you time in choosing your programming language and modeling tools because once you learn one set switching to another can be difficult. I suggest researching on the web before you make your pick. My best advice especially if you plan on following this blog is to learn Blender and Gimp for modeling , Java and Jmonkey for programming. These are popular and relatively easy to use.

Good luck in journey. Please feel free to ask any questions about game development and I'll be happy to help you out.