Welcome, Guest! Login | Register

Skeletal Animation: An Introduction [Print this Article]
Posted by: Spider
Date posted: Feb 08 2003
User Rating: 1 out of 5.0
Number of views: 3019
Number of comments: 0
Description:
Compare a sprite-based game's walk animation of 4 frames to Quake's 8 frames to Half-Life's maximum 80 frames. Half-Life is able to have a much wider variety of animation sequences, higher polygon counts and more skin textures for each character, all due to it's skeletal animation system. It would be foolish for 3D games not to utilize a similar technique. In fact, id software had planned to implement skeletal animation for Quake 3. This article will feature it's benefits and compare it to the standard animation techniques for 3D games.

Quake's mesh-based animation system stores each frame's mesh, which sets a low fixed rate of 10 fps. Quake 2 used linear frame interpolation to increase the frame rate for those that had faster computers. Half-Life's skeletal system stores only the bone information then deforms the mesh and texture map around them in real time. This allows the user's computer to determine the number of frames/sec. for animations. Although certainly not the minimum rate, Half-Life was running at 60 fps with a Voodoo 2 card on a faster computer. Quake 2's model polygon count maxes out at 700 with the bosses around 2000, and a character's total animation frames is limited to just over 500. Half-Life's polygons max out at 6000, and it's said that the human grunt alone has more frames of animation than all the characters combined in other games. Another advantage is that the skeleton, mesh and skin are all separate and can be manipulated separately. Even different body parts can be animated without affecting the entire body. Monsters can turn their heads to look at the player while they are running, or troops can reload and fire weapons while kneeling, standing and running, and also body parts can be replaced or removed to react to damage.

Quake 2 still had only one bounding box around the entire model which means you either hit the character somewhere on it's body or you don't. Half-Life has bounding boxes around individual limbs so damage assessment can vary if the character gets hit in the head as opposed to the arms. Plus it makes possible more interaction with level geometry.

Quake 2 has two skins per character - the regular skin plus a skin for damage. With VALVe's skeletal engine, textures can be added together to make a skin. This makes animation more realistic by swapping textures for facial expressions, and adds more variety by changing clothing for a character. And instead of an 8-bit color palette, Half-Life will be sporting 16-bit color as a standard, and 24-bit color with hardware acceleration.

Half-Life's scripted sequences are in-game cinematics that help convey the storyline without taking the player out of the flow of the game. It creates a more realistic environment when things are going on around you that are not so dependent on your actions. Because of the skeletal system and advanced AI, Non-Player Characters are introduced effectively and can serve purpose to the player. Scripted sequences also open up an unlimited variety of scenarios for those who want to edit Half-Life.

Worldcraft 2.0 is included with Half-Life as it's official level editor. It allows designers to control every aspect of their maps, including the scripted sequences. Monster intelligence can also be adjusted with Worldcraft. Instead of changing difficulty levels by adding more monsters, VALVe changes monster intelligence instead. And events and animations can be set to happen at a certain time during game play instead of just revolving around the player's position in the game.

Rate This Article
This article is currently rated: 1 out of 5.0 (1 Votes)

You have to register to rate this article.
User Comments

No User Comments

You must register to post a comment. If you have already registered, you must login.

Latest Articles
3rd person View in Multiplayer
Half-Life 2 | Coding | Client Side Tutorials
How to enable it in HL2DM

By: cct | Nov 13 2006

Making a Camera
Half-Life 2 | Level Design
This camera is good for when you join a map, it gives you a view of the map before you join a team

By: slackiller | Mar 04 2006

Making a camera , Part 2
Half-Life 2 | Level Design
these cameras are working monitors that turn on when a button is pushed.

By: slackiller | Mar 04 2006

Storing weapons on ladder
Half-Life 2 | Coding | Snippets
like Raven Sheild or BF2

By: British_Bomber | Dec 24 2005

Implementation of a string lookup table
Half-Life 2 | Coding | Snippets
A string lookup table is a set of functions that is used to convert strings to pre-defined values

By: deathz0rz | Nov 13 2005


Latest Comments
Spinning Corpses Simple Fix
Half-Life | Coding | Snippets
By: darkPhoenix | Sep 05 2008
 
Where do we go from here
General | News
By: MIFUNE | Jun 09 2008
 
The Input/Output system
Half-Life 2 | Level Design
By: nazitaco | Dec 23 2007
 
Where do we go from here
General | News
By: Rob_F | Nov 22 2007
 
Rescaling Half-Life
Half-Life | Coding | Shared Tutorials
By: christoph | Nov 12 2007
 
GameUI
Half-Life 2 | Coding | Client Side Tutorials
By: Evil_j | Oct 29 2007
 
3 State Zoom For Any Weapon
Half-Life 2 | Coding | Server Side Tutorials
By: Ennuified | Oct 18 2007
 
Storing weapons on ladder
Half-Life 2 | Coding | Snippets
By: cct | Sep 07 2007
 
CTF Gameplay Part 1
Half-Life | Coding | Shared Tutorials
By: DarkNight | Aug 28 2007
 
CTF Gameplay Part 1
Half-Life | Coding | Shared Tutorials
By: deedok | Aug 20 2007
 

Site Info
296 Approved Articless
5 Pending Articles
3940 Registered Members
0 People Online (34 guests)
About - Credits - Contact Us

Wavelength version: 3.0.0.9
Valid XHTML 1.0! Valid CSS!