The Art and Science of Computer Game Design

November 8, 2006

For anyone that enjoys playing computer games, a career and computer game design would be a dream come true. What could possibly the more enjoyable and rewording then designing your own computer game and actually being paid for it? Some designers are paid very, very well indeed. Every fan of computer games has no doubt at least occasionally fantasized having a career in computer game design, as a gamer myself, I have thought about how cool that would be myself.

If you are dreaming of a job in the computer game design industry, the good news is it’s a huge industry and there are loads of jobs available and it pays remarkably well if you should happen to come up with a hot seller. The bad news is that it is very difficult to learn the requisite programming skills that are required. Getting a degree in computer science is a solid beginning, but there’s nothing easy about achieving that either. Of the six friends I had in college that were computer science majors, only one of them has the fortitude to see it through and actually get a degree. It is a grueling major filled with advanced mathematics classes and tedious programming exercises. You really have to be smart, and you really have to be motivated.

If these things sound like something you could handle that a computer game design career may be something you could do. You will definitely need a deep abiding affection for computer games, but that’s pretty obvious isn’t it? My college friend that got his computer science degree is currently working for a well knowing game design company, and absolutely loves it. He will tell you though, that it is nowhere near the fun and games that he first imagined it would be.

Computer games today have absolutely huge amounts of complex code and can take years to complete. In the infancy of the game industry, computer game design teams often consisted of just a few people. Nowadays, a lot of the games have many different production teams all working simultaneously on a project, with each working in their own field of expertise.

For the really skilled programmers, there is no limit to what you can achieve. Experienced programmers with a proven track record under their belts can not only command a large salary but can have a lot of creative input over the direction of the game.

There are some other job in the computer game design industry and programming does not interest you. Generally, programmers are the most sought after, but good graphic artists and writers can be attractive employees to say game design producers. They may not be paid as well, but they most certainly still make an excellent living in the ever burgeoning industry of computer game design.

Morgan Hamilton offers expert advice and great tips regarding all aspects concerning games. Get the information you are seeking now by visiting Computer Game Design

Good Book: MUD Game Programming (Game Development)


C++ Tutorial 1, Introduction to C++

November 6, 2006

Introduction to C++

Why Learn C++?

C++ may at first seem like a boring, confusing programming language that you can only program command prompt applications with. Well, that is what it is like in the [b]begining[/b]. And you are going to need to learn the basics like this with any programming language. As you get better and progress in your C++ skills, you will begin to learn that you can start making some cool applications easier than you thought you could. The main reason to learn C++ though, is that it teaches all the basics of programming and you will learn concepts that will be used in other types of programming. Many other programming languages are like C++ or use C++. For example, PHP, a powerful web development language uses almost the same syntaxes as C++. DirectX, a common game development graphics library primarily uses C++.

Setting up C++

Ill assume that most people are not going to want to spend the money for a compiler, thats fine, there are many great free compilers. I use Dev-C++ because it has some nice features and is fast, and best of all, its FREE!

http://www.bloodshed.net/dev/devcpp.html

You can download it here.Download it and install it, this step is pretty easy. During instillation, select all the deafult values during instillation.

Create a New Project:
Go to the top menu: File -> New -> Source File, or just press Ctrl+N

You should now have a text document. Then, write the following text in the document:

#include

using namespace std;

int main() {cout<<”Hello World!”;

cin.get(); }

I would suggest typing it instead of copying it, you will get alot more out of actually typing it rather than copying it, because you get used to the syntaxes and development.Run the Application:
Now that you have your first C++ Application, [b]Press F9 [/b] to compile and run it. If you did everything right, it should open a command prompt like application and say ‘Hello World’ or whatever you told it to say. If it doesnt, look over the code and make sure everything is correct.

Code Analysis

#include
Tells the compiler that we are going to be using the iostream library, which includes information on things we will be using in the code.

using namespace std;
Saves time by telling the compiler that we are going to be using the ’std::’ functions, which stands for ’standard’.

int main()
Starts the main function, this is were the heart of the program is. I will get into what functions are later on.

{ Starts the main function.

cout<<”Hello World!”;[/code] Writes "Hello World!" to the screen. cout stands for 'console output.'

cin.get();[/code] Gets a variable from the user, we wont really be using this, but it is what will keep our application from being closed really quick.

} Closes our main function.

Analysis:
Now that we have made a simple C++ Application, we will start getting into more advanced topics so you can start making useful applications.

Chris Silop - http://www.syschat.com Computer Forum

 

Good Book:

 

Bundle of Algorithms in C++, Parts 1-5: Fundamentals, Data Structures, Sorting, Searching, and Graph Algorithms (3rd Edition)


Importance of Coding Standards

November 6, 2006

By John Dirk

Programming Help for Beginners

We write programs to instruct computers. When programming using a high level programming language like C++ or Java, we are using a syntax that is somewhat closer to human languages. However, we use these programs as inputs to either compilers or interpreters to be converted to computer understandable binary format. For this reason, as far as the program code adheres to the syntax of the used programming languages, the compilers and interpreters never bother about the layout or visual formatting of the program code. However, as human programmers, we ourselves need to bother about the aesthetics of the program code.

What is a Coding Standard?

A coding standard is a set of guidelines, rules and regulations on how to write code. Usually a coding standard includes guide lines on how to name variables, how to indent the code, how to place parenthesis and keywords etc. The idea is to be consistent in programming so that, in case of multiple people working on the same code, it becomes easier for one to understand what others have done. Even for individual programmers, and especially for beginners, it becomes very important to adhere to a standard when writing the code. The idea is, when we look at our own code after some time, if we have followed a coding standard, it takes less time to understand or remember what we meant when we wrote some piece of code.

Coding Standards Make a Difference

Look at the following example:

int volume(int i, int j, int k) {

int vol;

vol = i * j * k;

return vol;

}

Looking at this code at a glance, it takes some time for one to understand that this function calculates the volume. However if we adhere to a naming convention for variables and method names, we could make the code more readable.

Here are few sample conventions:

use meaningful variable names
use verbs in method names
use nouns for variables
use 4 spaces to indent

int calculateVolume(int height, int width, int length) {

int volume = 0;

volume = height * width * length;

return volume;

}

It takes more time to type this code, however this saves far more time. This code is far more readable than its original version. With a little bit of effort, we could make the code much more understandable.

The Benefits

It is not only the readability that we get through a coding standard in programming. Writing more secure code could also be encouraged through a coding convention. As an example, in C++ we could say that each pointer variable must be initialized to NULL.

char* myName = NULL;

This ensures that we would not corrupt memory while using this pointer variable.

Code readability is just one of the aspects of maintainability. Coding standards help a great deal with program maintainability, our ability to change programs with ease. Consistency imposed through a coding standard is a key factor to achieve success in maintaining prorams.

Defining Your Own Coding Standard

A programmer can define his or her own coding convention and adhere to that in writing programms. However there are many coding conventions available on the Internet. Those who program in Java should have a look into http://java.sun.com/docs/codeconv/html/CodeConvTOC.doc.html – Code Conventions for the Java Programming Language by Sun.

For C++ coding standards, I would recommend that you have a look into http://www.bbc.co.uk/guidelines/webdev/AppB.Cpp_Coding_Standards.htm – C++ Coding Standards from BBC.

http://oopweb.com/CPP/Documents/CPPHOWTO/Volume/C++Programming-HOWTO-14.html – C++ Programming HOWTO has some C++ Coding Conventions and also a bunch of links that lead to several coding standards that you can pick from.

John Dirk

Programming Consultant

http://www.programminghelp4u.com/
Programming ( Assignment / Project ) Help

Good Book: C++ Coding Standards: 101 Rules, Guidelines, and Best Practices (C++ In-Depth Series)