View Full Version : So who's got a good head of hair?

02 February 2002, 12:20 AM
Just wondering what your thoughts are on what game characters (either out now, or down the pipeline) have the best in-game, realtime head of hair. What techniques strike you as being most effective (and the most next-gen)?

David Lightbown
02 February 2002, 04:59 AM
Final Fantasy X comes to mind: Tidus' hair looks best from the top or from the side, but when the camera focuses on him from a lower perspective, you'll see that his hair is made up of a whole bunch of slighty curves polygon strips. I don't have a screenshot to post, but I'm sure all of you can visualize what it looks like when you see hair like this head on. Of course, there is also the hair texture painted onto his scalp to make up for some of the holes that you may see.

Another example would be Metal Gear Solid 2, where Raiden's hair, although it looks like his hair is made of feathers and he just took 19 showers, it moves rather realistically. I'm certain that the reason for which his hair seems so light is because the developers wanted to emphasize this and so player could see that they had a physics engine in place affecting the hair, much like Snake's bandana, despite the fact that you can see the divisions in it, because the engine obviously can't update a 300 poly bandana in real time, so something thats about 24 polys is clean and looks good at a medium distance. You'll see in many cases where characters have cloth or hair simulations in real time, the poly count is rather low.

In both of these cases, there are certainly different amounts of hair for different Level of Detail models. There are other instances that take a bit of a different or more stripped down approach, such as the later incarnations of the Tomb Raider series, where much effort was put into ensuring that Lara's polytail floated on water, whipped over her shoulder, etc... doing this with a single chain is easier than animating a bunch of strips, like Tidus or Raiden's hair (of course, Tidus' hair moves very rarely)

Finally, of course there's the Tony Hawk 2X on Xbox grass thing, or the fur on Star Fox on the Gamecube. This is most probably the same kind of setup as the plugin Shave and a Haircut, which uses pixels instead of polygons, drawn at the right angle and at a fine enough resolution, and updated every frame. This kind of hair is the way of the future, albiet more processor intensive.

My 2 cents !

02 February 2002, 02:09 PM
the hair in FFX looks to be done with alpha maps. that hair would consume too many polys if made up of seperate polygons for each strand. i do agree, it looks wicked. As a matter of fact i think FFX uses alpha maps more than any other game i've seen, the jewelry etc.. all one this way. beautiful game, too bad the gameplay and story was terrible

David Lightbown
02 February 2002, 09:10 PM
OK look, I know its made up of alpha maps... when I said slightly curved polygon strips perhaps I should have specified that they were alpha mapped too, but I didn't think it was necessary. I didn't mean each strand... whoa, how much crack do you think I'd be smoking there, buddy ? :) hehe

02 February 2002, 11:41 PM
How about DOA3? It sort of looks like phong shaded alpha strips.

03 March 2002, 01:11 AM
yeah doa3 has probably the best hair i've seen. can the xbox do true phong shading in hardware or are the doing some kind of environment mapping? oh wait, what am i saying of course it can be in hardware with the shaders. stupid xbox.

i'm doing alphamaps on my ps2 guys, and also doing fur with alpha'd strips. realtime lighting tends to screw with flat strips so we have a flat shading mode for the hair models that lights them evenly... basically takes the intensity of light hitting the entire hairpiece but disregards the normals.

as far as the future of hair, did you see the bunny fur xbox demo? it uses 3d textures as well as alphad flats to make one kickass looking little fuzzy bunny.


03 March 2002, 01:18 AM
Originally posted by suck

as far as the future of hair, did you see the bunny fur xbox demo? it uses 3d textures as well as alphad flats to make one kickass looking little fuzzy bunny.


Ah, there's the crux. I've seen some pretty promising fur stuff coming around soon, but nothing thats quite got that human Hair Salon groovething down - (except for FMV, of course)

The Magic Pen
03 March 2002, 02:45 AM
Have to agree with the DOA3 ..and it's so funny this came up because me and a buddy at work where just talking about how we are going to do hair and we fired up the x-box looking at DOA3 and it is the best hair. Though I don't see our programers taking the time to get the collision detection working so well the verts slide right over the geometry like in DOA3 on the long haired characters .. :(

03 March 2002, 03:28 AM
Originally posted by The Magic Pen
Have to agree with the DOA3 ... :(

Kinda salivate over the per-character triangle budget fighting games get. :p

03 March 2002, 04:19 PM
Mmm. Hair. I was just trying out some cloth stuff last night on my little test bed app at home. It's amazing just how much you _can_ do with simple spring systems.

I'm thinking that for my money, best bang for the buck is still in alpha'd hulls for hair. The grass you speak of on the box is actually the same effect, it's just calculated at run time. The algorithm takes a base mapped surface, drapes splines all over it, extrudes them, then textures them with a lookup to the base texture, which is what gives you the strand look. Useful for fur too. The best part of the proceduralism though, is that because it's built in a predictable way, it can be dynamically deformed in the same manner. When you have a nice regular mesh you can make assumptions about, you can do all sorts of neat stuff.

As for dynamics and hair, I'm still a little early in playing around time, but I think you can get away with not doing it properly at all for quite a few hairstyles. I'm really keen on trying to see if there's anyway to generalize certain cloth and hair motions 'good enough' for realtime from an artist's pov. I do find sometimes that programmers tend to get so stuck on the 'simulation' aspect, that they don't see the obvious aesthetic shortcuts.

Strings are OK (ponytails), but be aware they're not exactly that cheap. The complication comes from having to make sure it doesn't twist. Sometimes it's cheaper to just have a narrow strip of cloth pretending to be a string. Either way, the ponytail mesh is skinned to the string as the last step.

Lighting hulls, strips of hair in this case, can be a pain. You should be able to come up with something dynamic though. Depends on which platform you're on as to how complicated that gets (anisotropic highlights anyone :) but all 3 should be able to do something satisfactory, given that you're not already busy doing too much with the rest of your 1/60th of a second.

On that tangent subject, lighting on the Xbox can be a seriously sublime experience, and frustrating one. It's wonderful because you can start to see inklings of what we'll soon be able to do (and I do mean soon) far more than the other 2, but it's annoying because it just falls short of being completely amazing. Most efforts are still really programmer driven, which tends to focus on effects. Me, I'm happy writing a shading model that burns every register in there just for my standard lighting model. Imho, that's a far better use of the hardware. As it is, I do have a testbed shading model, but with support for 4 lights (area or directional), it pretty much precludes doing anything else with the shaders _and_ takes up some CPU time. My kingdom for more texture stages, more precision in the register combiners, and more video memory!


03 March 2002, 07:11 PM
my apologies dave :)

CGTalk Moderation
01 January 2006, 02:00 AM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.