Ok, some time ago I copied an effect I saw in a maturefurk demo. In my
version, each hair is made of a cylinder with 3x25 quads.
There are some simple fake physics, it mostly reacts on rotation which can
be controlled by the mouse, but there is also some kind of gravity. each
hair segment is represented by a vector. The vectors are motion-blurred and
have the "will" to be straight. If I switch off all forces, the while thing
moves slowly towards a star-like shape.
From these vectors I generate a coordinate system using dot- and
crosspruducts, then I set up the three vertices and normals. The normals are
not normalised, but it looks ok.
Then I stream everything through dynamic vertex buffers. Since I don't use
any fancy vertex shaders and stuff this runs almost everywhere, in full
refresh rate (75hz) on a GeForce MX + Athlon-1100, a little bit slower but
still pretty well on my G400 + PII-350. I use simple dot product light, so I
actually only need to calculate one third of the normal. My FVF is "xyz
color". I could calculate the whole normal and use "xyz normal" as FVF and
use hardware accelerated lighting, and thats what I plan to do next after my
game project at work passes beta...
Performance? Well, I havn't started to optimise, therefore I have no real
figures, but I can switch some more effects before it starts getting slower
on the athlon machine.
Dierk "Chaos" Ohlerich