Difference between revisions of "Hair"

From Animation Master Wiki
Jump to navigation Jump to search
(New page: == Hair == A good place to start is [http://www.hash.com/forums/index.php?showtopic=37184 John Bigboote's tutorial].)
 
Line 2: Line 2:
  
 
A good place to start is [http://www.hash.com/forums/index.php?showtopic=37184 John Bigboote's tutorial].
 
A good place to start is [http://www.hash.com/forums/index.php?showtopic=37184 John Bigboote's tutorial].
 +
 +
=== Baking Hair ===
 +
[http://www.hash.com/forums/index.php?s=&showtopic=40063&view=findpost&p=351420 Source]: Hair is a particle system. When you choose to "bake particles" in the chor, an extra file is created in the project directory with the name of the particle system eg hairmaterial.par, along with an index into the .par file (called .pai). The .par file contains the values for the dynamic hair splines, so that, in theory (and works most of the time), hair will not be recalculated on the fly, and one can then observe the behavior of the hair/particle systems in real-time, as well as, in theory (not so sure about this), save on render time (maybe). Presumably data for sprites are also stored in similar files, with the name spritematerial.par. The name of these files are referenced in the chor, under the name of the group that that has an associated particle/hair system, after baking.
 +
 +
I have found that funny stuff happens if one tries to turn particle systems on/off individually: the .par files, .pai indices can get corrupted - so it is better to rebake, rather than fool with that switch. Also be careful about sharing project directories, as baked files will get created in the last project saved, and for someone like me, who doesn't work with projects, that can make a mess, if the same model is used in multiple chors.
 +
 +
When making changes in the animation, you have to re-bake the scene.  It's best to bake at the end 1) to see what corrections you might need based on dynamic hair movement, because you can play the animation in real-time and 2) maybe? to save on render time later perhaps - ie doesn't have to be recalculated.
 +
 +
Note that it is not necessary to bake particles (hair) before rendering - and I find that sometimes it works better, ie more consistent, to NOT bake. If you have problems with hair rendering funny, unbake if you've baked, or try baking if you haven't baked.
 +
 +
Baking of hairs(and particle systems) is highly recommended if you plan to use NetRender... because the processors can solve the hair dynamics differently and give you 'flicker'.
 +
 +
After I baked my hair and reload the scene I find it's got the classic hair-stretched-a-mile-long look that I've seen before. Anyone know how to get that not to happen?
 +
 +
Some things that sometimes work:
 +
 +
I sometimes find that this clears up if I save the chor (after baking) & then restart A:M.
 +
 +
I have in general found that it is best to be on frame 0, before baking, or starting a render. (with hair or anything). It is best to render after restarting A:M in general, always. With my current animation, I am noticing that it is NOT good to bake before rendering. I only experienced the hair stretch problem after baking. But hadn't experienced it before then in this particular chor, if I didn't bake. I am running 32bit, and run only 1 render thread
 +
 +
I also have observed that in previous versions (and maybe the release version), if it didn't clear up by going to frame 0, then sometimes the act of going to frame 1, and then back to frame 0 might clear it up.
 +
 +
EDIT: the other thing that may or may not have anything to do with anything - is to unhide any hidden models in your chor before baking, rendering. That is a workaround, for a current bug, that I reported, that Steffen has fixed for the next release, and he let me know that the workaround was to unhide all models for my particular problem (non-related models getting corrupted after "Bake Dynamic Systems").

Revision as of 09:32, 29 May 2011

Hair

A good place to start is John Bigboote's tutorial.

Baking Hair

Source: Hair is a particle system. When you choose to "bake particles" in the chor, an extra file is created in the project directory with the name of the particle system eg hairmaterial.par, along with an index into the .par file (called .pai). The .par file contains the values for the dynamic hair splines, so that, in theory (and works most of the time), hair will not be recalculated on the fly, and one can then observe the behavior of the hair/particle systems in real-time, as well as, in theory (not so sure about this), save on render time (maybe). Presumably data for sprites are also stored in similar files, with the name spritematerial.par. The name of these files are referenced in the chor, under the name of the group that that has an associated particle/hair system, after baking.

I have found that funny stuff happens if one tries to turn particle systems on/off individually: the .par files, .pai indices can get corrupted - so it is better to rebake, rather than fool with that switch. Also be careful about sharing project directories, as baked files will get created in the last project saved, and for someone like me, who doesn't work with projects, that can make a mess, if the same model is used in multiple chors.

When making changes in the animation, you have to re-bake the scene. It's best to bake at the end 1) to see what corrections you might need based on dynamic hair movement, because you can play the animation in real-time and 2) maybe? to save on render time later perhaps - ie doesn't have to be recalculated.

Note that it is not necessary to bake particles (hair) before rendering - and I find that sometimes it works better, ie more consistent, to NOT bake. If you have problems with hair rendering funny, unbake if you've baked, or try baking if you haven't baked.

Baking of hairs(and particle systems) is highly recommended if you plan to use NetRender... because the processors can solve the hair dynamics differently and give you 'flicker'.

After I baked my hair and reload the scene I find it's got the classic hair-stretched-a-mile-long look that I've seen before. Anyone know how to get that not to happen?

Some things that sometimes work:

I sometimes find that this clears up if I save the chor (after baking) & then restart A:M.

I have in general found that it is best to be on frame 0, before baking, or starting a render. (with hair or anything). It is best to render after restarting A:M in general, always. With my current animation, I am noticing that it is NOT good to bake before rendering. I only experienced the hair stretch problem after baking. But hadn't experienced it before then in this particular chor, if I didn't bake. I am running 32bit, and run only 1 render thread

I also have observed that in previous versions (and maybe the release version), if it didn't clear up by going to frame 0, then sometimes the act of going to frame 1, and then back to frame 0 might clear it up.

EDIT: the other thing that may or may not have anything to do with anything - is to unhide any hidden models in your chor before baking, rendering. That is a workaround, for a current bug, that I reported, that Steffen has fixed for the next release, and he let me know that the workaround was to unhide all models for my particular problem (non-related models getting corrupted after "Bake Dynamic Systems").