Skip to content

Game Development- An Art or a Science? Part 1

November 11, 2009

 

Mario Galaxy

We can all agree that it's awesome, but is game development an art, or a science? The answer is not simple.

Is game development an art or a science? A game designer might say art; A programmer might say science; A video game player could say that it’s simply entertainment. You could ask 10 people what video games are, and get 10 different answers. Simplified, a science is something that has hard unbreakable rules, and an art is a form of expression, where there are no constrictions. So, which category do games fall into? On one hand, game programming and design both have rules. Programming has rules, which if deified would only result in errors and broken code. Design has rules as well, mostly revolving around the best ways to go about communicating information to the player, but these rules aren’t as rigid. Are games ever used as expression, like a painting or fiction novel? If so, can only the music and graphics be considered art? What about the design, or even the programming? Video games are a medium which is diverse and variable, and today I’m going to go into what makes games an art, science, both, or maybe even neither.

 

 

The Legend of Zelda: Ocarina of Time

The behind-the-scenes work going on here is arguably as interesting as the product. What goes into making a game?

When considering the topic, I made sure to think about all of the areas of game development. A far as programming is concerned, the first thought to come into my head was “programming is a science”. This is true. After all, if you go to school to learn programming as a major, you are getting a degree in “Computer Science”. However, after going into the subject, I discovered that there is a little more than what meets the eye. Now, programming has many, many rules that can never be broken. Commands must end in a semicolon, “if” statements must use parenthesis, so on and so forth. Breaking any of these rules results in code that will not even run. That is what makes programming a science. An interesting thing to consider, though, is that while the rules cannot be broken, there are many different ways to follow the rules. Let me give you an example in the code. (Keep in mind that you don’t have to understand what any of this actually means to get my point.)

 

Example 1:

for(int i = 0; i < 5; i++)

{

array[i] = 5;

}

Example 2:

array[0] = 5;

array[1] = 5;

array[2] = 5;

array[3] = 5;

array[4] = 5;

array[5] = 5;

MetroidSo, what does this even mean? Well, one thing you should know is that both example one and two do exactly the same thing. You don’t need to know any programming to understand. “1 + 1” is the same thing as “4-2”, You know that much. So, there are multiple ways to achieve the same goal. What does this mean? Well, if you think about it compared to other sciences, such as physics, or even cooking, you will notice an immediate difference. In physics, gravity acts upon an object to pull it towards the ground. No other force does this, and there is no other way of anything having the exact same effect as gravity. In cooking, you create dishes by combining ingredients. No other combination of ingredients will have the exact same effect. Sure, using milk instead of water could produce a similar product, but there is only one combination that will make a meal the exact same way. This is where programming is slightly different. Sure, there are ways of doing things that are slightly more acceptable than others (for example, saying “1+1” is a lot more acceptable than saying “1+1-2+5-3-4+1+1+1+1+2-3+1”,) but any way you want to accomplish a task will work. This degree of variation I feel is important for a couple of reasons: It creates diversity among programmers, allows developers to use their own style and methods, and gives people the option of having options, rather than being confined to a single method. In all honesty, they way you program, and the methods you choose don’t make a very large difference (at least to a play tester or somebody other than the programmer), but I feel that no difference can be ignored. Especially because this variation is consistent in video game development, and is seen again and again throughout game design, only at a much greater magnitude.

 

The Science/Art conversation is too large to have in a single sitting, so I’m going to create a part 2. Next post I’m going to continue on this topic, but instead of focusing on programming, I’ll go into the graphics, music, and game design.

Stay tuned!

Advertisements
No comments yet

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: