1. A Crash Course in Game Design and Production Week 4 Part 2
- Posted by Michael Packard <lgp at EXO.COM> Jan 21, 1997
- 1107 views
A Crash Course in Game Design and Production ======================================================== Week 4 - Basics of Computer Art and Art Specification ======================================================== Welcome back! This is the fourth installment in "A Crash Course in Game Design and Production. Like last time, this lesson is in multiple parts. In PART ONE, we'll discuss computer graphics in general, and what we need to know before we can talk about ART. In PART TWO We'll discuss the ART Specification, what it is and what we need to put in it. In PART THREE we will write the fourth section of the Design Spec for our Course Project, the Art Specification. This is part 2 of 3 ------------------------------------------------------------------------------ Part 1 Addendum ------------------------------------------------------------------------------ I left out something REALLY important from part one. Colors As I said previously, in VGA modes, the color palette is 16 or 256 colors chosen from 262,144 colors in the VGA master Palette. I didn't tell you how they are chosen, or how they are stored in the Palette. D'oh! RGB Values Remember when you were in school and they gave you only 3 crayons and told you could make any color by mixing varying amounts of the 3 "primary" colors, and you tried all day and it didn't look very good? It's true. On paper, if you mix Cyan(blue), Magenta(red), and Yellow(yellow) in varying amounts you can get any color you can see. Determining the right amounts of each is called creating a CYM Color Separation. On your Monitor(and light in general) it works exactly the same way, only with different colors. Every color you can see on your monitor is made up of varying amounts of Red, Green, and Blue "light." In your art program, when you change a color, you do so by changing the RGB (Red, Green, Blue) values for that color. For VGA video modes, you have effectively 64 levels each of Red, Green, and Blue to play with, for a total of 64x64x64= 262,144 possible colors, of which you can choose any 16 or 256, depending on your video mode. EGA modes give you 4x4x4=64 total colors of which you can choose 4 or 16 for your palette, depending on your video mode. 4-bit, 8-bit, 16-bit, 24-bit Color Modes You hear this phrase thrown around a lot, "I only have an 24-bit video card" or "I'm writing my game in 8-bit video." This just tells you how many colors can be displayed on the screen at one time, i.e. how big the color palette is. 8 bits is 2^8 or 256 colors. 16 bits is 2^16 or 32768 colors, 4 bits is 2^4 or 16 colors. How Palettes are stored While VGA only has 64 values each for R,G,B, some image formats, most notably BMP, store them as whole bytes, as if the values were from 0-256. They are stored as 4 times bigger than they really are, consequently, in Euphoria, you have to divide the palette sequence by 4 before you can do a all-palette(). Many art programs also edit the colors as if you have 8 bits or 256 levels of R,G,B to stay consistent with 16 and 24 bit video modes where you have 16.8 million colors to choose from. Just make a mental note that the real values for those colors are 1/4 what you tell the program they are. ----------------------------------------------------------------------------- Part 2 - The Art Specification ------------------------------------------------------------------------------ Our Screen Design and User Interface Specification describes in detail what each screen and control of our game will look like and what will happen on the screen. The Art Specification details what graphic images and animations we need to MAKE each screen look and work as described. Think of it as a PARTS LIST for your game. The SD&UI Spec is like the picture on the side of the box. You see what it's supposed to look like when you get done and the Art Spec is what we need to build it. Anatomy of The Art Specification ================================ It's been 3 months, I guess you're ready for another anatomy. The first part of the Art Spec is called the Screen and Image Parameters. This is a list of art guidelines your artist needs to follow to make his art work with your screens. In this section you MUST HAVE: * Video Mode the GAME WILL BE RUNNING IN. 320x200x256, 640x480x16 or whatever. * Normal game screen size(s). Generally this is the same as the video mode, but it doesn't have to be. In JetFighter III for example, the video mode was 640x480, but they wanted all of our animation sequences letterboxed in 320x160. * Aspect Ratio. Generally this is the same as the video mode closest to the image size, but sometimes it isn't. For the above mentioned animation sequences, you would usually use an aspect ratio of .82 for 320x200 mode, but since they decided to double the pixels and play the animations in 640x480 mode they needed to have an aspect ratio of 1. If you draw all your art using the video mode the game will be in you will have no trouble with this usually. * Color Palette allocation. How will you split up the 256 colors you have to work with? Are some colors reserved for certain use and unavailable for any other? Say you have a windowing user interface with pull down menus and stuff like that. You want to set aside the interface colors so you don't screw them up if you need to change palettes or colors in your game. For OidZone, I set aside 128 colors for the background (so I could change it at will without having to remap all my sprites), 10 colors for my color cycling logo and explosions, 64 colors for my asteroids and 54 colors for my ship. Also list how many Color Palettes you need (if you want to change them during the game) and common colors between them. * Masking color. What color position is it in the Color Palette, and what color to make it. The COLOR is VERY IMPORTANT. If you choose to make it bright red (see part one on Masking) Write down the exact RGB (RED GREEN BLUE) values for this color (64,0,0 or 255,0,0 in this case depending on your art program) and use these exact values for EVERY IMAGE. If you have to remap your color palettes, the red in some images may not remap to the right RED in your masking position and the art won't mask correctly (at all) * Naming Convention. This is EXTREMELY IMPORTANT!! You need to have some standard filename system for your game art, as well as for any other data files, so you know what is what. Take some time and plan out your filenames. The second part of the Art Spec is Background Art. Remember last time I made two categories for Game Art, Backgrounds and Sprites? Backgrounds are anything that doesn't move AND is NOT drawn on top of something else during the game. If it moves or if it appears in front of something else it's considered a Sprite, because it needs to be Masked with whatever else is drawn on the screen. For the Background Art Section, you need to go through every page of the Screen Design Spec and detail all the background pieces. For each of these you MUST put in the following: * Object Name * FILENAME of Object. Everything has been abstract up to this point. This is reality time. What is the filename.ext you need for this object. It REALLY HELPS to have the first thing in your parts list be the part name so you can find it. * Description of object - What is it? What does it look like, color scheme, etc. If the object has multiple parts, what are they? How big? * Size of object in pixels, width x height. For example, the Feedback window for OidZone is 90x192 pixels * Location on screen in X,Y coordinates. As the art is completed, you need to place it on screen and check it with the other art to see if it "fits." * What other art pieces (if any) need to fit into the background object? How many?. Where do they need to go? For our Course Project, we need to put 3 spare Packys in the Feedback Window for each player, along with his score, and the logo art. The third and fourth sections of the Art Spec detail Sprites. Sprites can be split into two categories as well, Characters and Foreground Objects. A Character is anything that moves and\or animates on screen, like Packy or the Ghosts. A foreground object is anything that DOESN'T MOVE (much) that is drawn ON TOP of EVERYTHING ELSE. Characters can move BEHIND Foreground objects or run into them. In OidZone, for instance, asteroids move behind many of my game messages (prepare to enter, game over, title image, etc.) The asteroids are Characters, and the messages are Foreground Objects. Part three is Characters. Again you need to go through every page of the Screen description and write down EVERYTHING YOU FIND ABOUT EACH CHARACTER. You must include: * Character Name * FILENAME (convention if you have multiple frames) * Description - General Characteristics, color... * Size of Character width x height * Personality traits we need to show, and how many images we need to show them. If the Ghosts need to roll their eyes or look frightened, spell it out here. Describe in gross detail EVERYTHING this Character needs to do in the Game. List each thing and what is required to show it * Total number of images required for this character Part four is Foreground Objects. For our Course Project, Foreground objects include the lighted marquee sign in the title sequence, Get ready image, Game Over Image, and animated logo in the FeedBack Window. * Object Name * Filename * Description * Size width x height * X,Y position on screen * Total Number of Animation Frames Part five is the last part, this is FONT(S) You spell out the game's font requirements here. Some games do not require ANY fonts at all, they have word sprites for whatever messages they need, or use the normal bios print routine. (which sucks in 320x200) * Font Name * Description: Characteristics needed, what characters needed, etc. * Point Size: How many pixels high, wide is it? * MISC font parameters:Leading(line spacing), Kerning(letter spacing), Bold, Italics, Underline, etc. By the end of the Art Specification, you should now every piece of art you need for the game. Make sure you go back through the Screen Design Spec and check that everything is accounted for. When the Art Spec is finished, you can give a copy to your art staff and they can draw while you go on to the Sound and Music Specification. See you next week. =========================================================================== End of Week 4 - Basics of Computer Art and Art Specification Part 2 - The Art Specification. If you have any questions for group discussion post them to the list server. E-mail any other questions, comments or suggestions to lgp at exo.com Mail monetary donations large or small to Lord Generic Productions 1218 Karen Ave Santa Ana, Ca 92704 A Crash Course in Game Design and Production - Euphoria Edition (C) Copyright 1996,7 Lord Generic Productions - All Rights Reserved ===========================================================================