   Normal Mapping Sprites..
  Ok so I'm not an artist but I am a programmer whose currently working on an XNA game engine which currently supports vertex & pixel shader effects against sprites (since they're handled as textured quads/billboards..)So basically I'm trying to figure out how practical it would be for an artist to successfully create accurate normal/bump maps for 2D sprite-based characters?The purpose of these would be to allow me to setup some nifty shaders to use the normal information to approximate some pretty cool dynamic lighting and have all the lighting react to the sprite-based characters in order to "fake" the impression of "volume"..I kind of assumed it would be pretty difficult to create good quality normal maps for sprites, especially given that they'd (have to?) be hand painted due to a lack of depth information to procedurally generate them from some pre-defined geometrical data for example. I wanted to get some expert advice on the subject however. Just to know that as soon as we start developing content I'm not asking my artists to do too much...:D   
  I would seriously consider creating your sprites in a 3D program. That way you can just render a depth map.   ;  There is an nvidia plug-in for photoshop that allows you to convert a greyscale height map to a normal map. Painting a height map over a sprite is much easier than trying to paint a normal map directly (which is possible, but wrapping your head around what each colour actually means is a bit of a mindfuck).The smaller your sprites are the less effective and accurate it will be, though using the generated normal map as a base for tweaking by hand could work.Regardless, get your artists to prototype a couple sprites to see what they think before you make any major decisions.EDIT: Oddly enough, I just ran into a Paint.NET add-on that does this as well. Although it has far less features than the photoshop one, it makes for a nice free alternative.[Edited by - LockePick on September 10, 2007 9:29:56 PM];  Great!Thanks for the advice!   ;  If you 3D generate your sprites, why in the world would you render a depthmap?At the same time you render the sprite, you can render a normal map billboard (create a material or shader that would render the model normals as its ambient/self illumination color and render that).  It will be 100 times better than a converted depthmap.  For ideas on how to render, you can check out www.bencloward.com , should have some info, but being a programmer I'm sure you can figure out something.   ;  Hmm...You could just process your sprites through one of those normal map filters then use something like DOT3 to render them in game. This can generate a nice high contrast B&W sprite...perfect for a old hollywood B&W horror movie themed sidescroller. Or even for produceing the strikeing visuals as seen in the Sin City movie.Also, why not use normal maps to just texture the sprites...make them look like they are carved from stone, as in a cave painting. Or even that your game sprites are part of some graffiti spray painted on a brick wall.Why stop with sprites. Certainly normal maps for the tiled backgrounds can be useful as well.   