September 1st, 2012, 09:12 PM
How are graphics created?
I've been following devshed.com for quite some time and finally decided to register myself today. I am glad to be part of the family.
I've read a few articles on Game Development here on devshed and on google too but I couldn't really understand how game graphics are made.
Are they drawn on paper with pen and pencil and then scanned into digital format?
Are they made in Adobe Photoshop pixel by pixel taking huge amount of time and effort?
I a programmer so I have no clue as to how to proceed to get graphics for a game that I want to develop.
There are two types of graphics I am talking about here :-
1. Graphics like NFS has
2. Graphics like Mario had, back in the days.
So, what's the difference between these two types of graphics?
So, please tell me how are graphics made? What are the steps towards making graphics for a game?
And, say if I have graphics, how do i program them? Like do I keep a record of relative position of the hand of an actor in the game and keep checking if his hand is touching the wall (just for example)
I really have no clue about this.
Please help me solve this mystery.
September 2nd, 2012, 12:05 AM
No. Concept art for a game might be done on paper, and you might be able to find one or two games that have done it this way for stylistic reasons, but in general it is impossibly difficult to digitize a hand-drawn drawing into something that is useful in a game.
An image editor is an essential part of graphics design. Depending on the game's art style and the artist, they may use a digital pen type device for drawing parts of the image in combination with digital manipulation of the image.
The only definition for "NFS" that I was able to come up with was "Need For Speed", so I'll assume that basically you're asking about the difference between a 2d platformer and a 3d game.
Many 2d platformers, particularly older ones, use "sprites" for graphics. Basically, these are independent images that are stitched together to form the overall scene. For example, in a top-down style game you might have four sprites of your player character - one facing north, one facing south, one facing east, one facing west. The game engine would choose which to display and where to display it based on the state of the game. In this way you end up with a vast number of small 2d images that would be created using an image editor.
You can also make peusdo-3d graphics using this method, which often use an isometric viewpoint. For example, the older Sim City games.
3d games are completely different and obviously far more complicated. Generally you start by defining the three dimensional shape of an object using modeling software similar to engineering CAD software. Next you create an image called a texture that will be wrapped around that shape and gives it the appropriate colors. That part might be done using a standard image editor. There are various other "images" that you might construct as well, bump/depth maps or light maps that help tell the game engine how to render the object's lighting. These are often gray-scale images where white is one extreme and black is the other (depending on what the image represents).
I'm not very familiar with animation in 3d games, but I believe that it's usually done by defining "joints" in the model and then using animation algorithms to interpolate how the shape would transition from one position to another.
The rendering of 3d graphics is far more complicated than actually making them. It's best to leave that to a pre-made engine unless you have degrees in both mathematics and computer science.
These questions don't really have simple answers. How you make graphics depends on what kind of graphics you are making, and even then there are many different ways to do it. Likewise, programming the graphics depends on what sort of graphics you are programming. You should probably start by just making a game that displays flat images on the screen. Then find a third party engine that will dictate to you how your graphics need to be constructed and programmed.
September 2nd, 2012, 05:52 PM
That was a very detailed answer, thank you very much.
You talked about sprites and rendering 3D graphics using engines. That's a start for me.
So, if I were to make a 2D game say space fighter:-
I'll need sprites for a fighter plane
Anti air guns
Coins (Like from Temple Run :P)
What I still don't get it is - how will I draw the (lamest, just for getting started sake) aircraft?
Do I draw it using Bresenham's line drawing algorithm or DDA? Because you said hand drawing is out of the question..
Or, does a game engine have all these sprites that I need? But if such an engine has these sprites, won't games made using this engine look (graphically speaking) the same?
I know how to display an image on the screen. I know how to program game logic. I made a game using Allegro Game Library but I used text (The symbol '@') for graphics because I didn't know how to draw a character that could face (go) in all directions.
So, how do I make such a space fighter plane?
September 2nd, 2012, 06:18 PM
Open up Microsoft Paint and draw an aircraft as you want it to appear on the screen. If you want it to appear differently when flying in different directions, repeat this process once for each possible direction.
You'll probably want to use a transparent background for the image since most objects are not rectangular and you'll probably want to overlap sprites.
When I said hand drawing was out of the question I meant drawing it on paper and then scanning it in.
Using an algorithm to automatically generate different viewpoints of an object (as are needed to view an aircraft traveling in different directions) is not impossible, but requires a 3d model as a starting point (even if the game is only 2d). Some 2d games actually use 3d capable rendering engines and 3d models too (a significant number of arcade fighting style games).
Blender is free 3d modeling software that could be used to generate 3d models of the type used in games. Generally speaking though this type of software is far from easy to use. Learning to build 3d models is at least as complicated as learning to program.
I have no visual artistic ability whatsoever. I do not and will never understand how graphic designers are capable of drawing objects that actually look real.
September 3rd, 2012, 07:05 AM
This is how 2d is done
Hi, I develop games and game graphics and pencil and paper is a very important part of the development.
Everything need to be roughed out and designed. From the initial style to the actual design, this is probably the most important part.
If you go straight in with design software (unless you're exceptionally talented, have a graphics tablet and the latest software) you're going to end up with something more controlled by the actual software than the idea in your head.
I suggest you draft something out on paper, once happy, scan it or photograph it and use that as your template. at the very least, you'll have an original idea to reference while you slog away on the computer trying to make it look right.
Hope this helps... Example of one of my game sprite developments below....