sprockets TV Commercial by Matt Campbell Greeting of Christmas Past by Gerry Mooney and Holmes Bryant! Learn to keyframe animate chains of bones. Gerald's 2024 Advent Calendar! The Snowman is coming! Realistic head model by Dan Skelton Vintage character and mo-cap animation by Joe Williamsen
sprockets
Recent Posts | Unread Content
Jump to content
Hash, Inc. - Animation:Master

Recommended Posts

  • Hash Fellow
Posted

I know that's a bit vague, but I've never baked hair before.

 

I'm trying to bake the hair (tree leaves mostly) in that opening aerial shot in TWO.

 

It's a big shot and it will take many minutes to compute the particles all the way to the last frame if I'm just scrubbing the timeline, but should baking the scene take much longer?

  • Replies 41
  • Created
  • Last Reply

Top Posters In This Topic

  • Hash Fellow
Posted

Well, after about an hour and half it finished, but I can't find any new keyframes made.

 

Is it even possible to bake hair on an object that only lives in in the chor as an action object, as the trees in Winkieville in TWO do?

  • Hash Fellow
Posted

Hold on... it seems every particle system now has some ".par" files associated with it, I guess that's where the baked info lives.

 

But if everything is baked now, why is there still a wait for "computing particles"?

Posted (edited)
Hold on... it seems every particle system now has some ".par" files associated with it, I guess that's where the baked info lives.

 

But if everything is baked now, why is there still a wait for "computing particles"?

 

I will assume you are talking about scrubbing in real time with a chor that has particles baked, & in particular hair.

 

Is the property in chor, groups/hair group name/Hair system/Particle baked = ON? Baking sprites, streaks etc may work differently, especially if there is also hair.

 

I find sometimes when there is funny behavior, I have to restart A:M and then it works properly. I am only baking hair, & there are multiple systems, but only on one character, and he is not in an action.

 

I also find if I turn off "Particle baked" on only one of the hair systems - the real-time playback still seems to assume it is baked for all of them. I have to turn OFF particle baked for all systems for the real time to acknowledge that. And then when I turn it back ON for only 1 of the systems, the real-time recomputes for the system, but still has other systems that aren't baked.

 

So perhaps not all your systems are particle baked? And there is some toggleling-demon at work.

Edited by NancyGormezano
Posted

Yes, the baked info lives in a par file... watch out- they can get BIG for long scenes. If you are not using the 'dynamic' feature for the hair you should not need to 'bake' at all.

Posted
Hold on... it seems every particle system now has some ".par" files associated with it, I guess that's where the baked info lives.

 

But if everything is baked now, why is there still a wait for "computing particles"?

 

Did you deactivate the dynamics after you baked the particles?

 

See you

*Fuchur*

Posted

Excuse my ignorance, but, bake hairs?

I already read about bake materials but hairs ?

..particle bakes ... I lost the thread somewhere

Posted (edited)
Excuse my ignorance, but, bake hairs?

I already read about bake materials but hairs ?

..particle bakes ... I lost the thread somewhere

 

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.

bakedparticles.jpg

Edited by NancyGormezano
Posted

thanks Nancy ... for the brief tutorial :)

but if I do some correction in the animation, I have to "re"bake the scene, right ?

Posted (edited)
thanks Nancy ... for the brief tutorial :)

but if I do some correction in the animation, I have to "re"bake the scene, right ?

 

yes definitely. 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

 

EDIT: 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.

 

I've uploaded screen grab of what .par,.pai files look like in the project directory

samplebakefiles.jpg

Edited by NancyGormezano
Posted

Great explanation, Nancy. ALSO- 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'.

  • Hash Fellow
Posted

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?

 

stretched.JPG

Posted (edited)
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?

 

Voo-dooo, and in particular, chicken bones.

 

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")

Edited by NancyGormezano
  • Hash Fellow
Posted
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?

 

Voo-dooo, and in particular, chicken bones.

 

Some things that sometimes work:...

 

thanks, I'll investigate those.

 

One more thing... how do i define where the various par and pai files are written to? They are landing in my A:M "library" folder now.

Posted
One more thing... how do i define where the various par and pai files are written to? They are landing in my A:M "library" folder now.

 

The files get written into the same directory as the Project is stored.

 

What I do is start a new project, import my chor, create a folder for my project, then save the project in that folder, then bake, then save the chor.

 

I then do not work with the project any more - those file paths seem to get permanently embedded in the chor data. There doesn't currently seem to be a way to specify where the files should be stored.

 

Also be aware that if you start a new project, import a different chor (in same session as the previous), and do a bake - it appears that the par,pai files will be written into the same folder/directory in which the last project was saved. Not good.

 

But obviously one can move the par, pai files and then text edit the chor files to point to the new location.

  • Hash Fellow
Posted

Here's a new wrinkle... the baking process isn't able to access the dir where the PRJ was saved. Anyone have this before and know why?

 

BakingProblem.JPG

 

I was able to at least bake this before. Now however it is a "consolidated" PRJ but that change of location shouldn't make any difference. I am otherwise able to save and load this project from the consolidated location.

Posted
Here's a new wrinkle... the baking process isn't able to access the dir where the PRJ was saved. Anyone have this before and know why?

 

BakingProblem.JPG

 

I was able to at least bake this before. Now however it is a "consolidated" PRJ but that change of location shouldn't make any difference. I am otherwise able to save and load this project from the consolidated location.

 

1)Did you consolidate after you baked? or 2) baked after consolidating?

 

I would say if it's the first, then the filepath to the pai, par files in the chor didn't get redirected (updated) during the consolidate process in the chor or if it's the 2nd case then you might have to resave the project first into the newly created consolidated folder, and rebake particles so that the path does get updated in the chor, as well as possible in the .pai file (who knows what's in there?) - or else text edit the files to make sure the paths are correct?

 

Thatsa my wag-olas

  • Hash Fellow
Posted

I discarded any previous baking then I consolidated the project. Now I want to bake it again so i can have the whole deal wrapped up in one place for a bug report. But now i can't bake it.

Posted
I discarded any previous baking then I consolidated the project. Now I want to bake it again so i can have the whole deal wrapped up in one place for a bug report. But now i can't bake it.

 

1)How did you discard? - did you unbake particles, and as well delete the chanels that were created in the chor for all systems (references to pai, par files? before consolidating? delete the par, pai files as well?

 

2) then after consolidating - try resaving the project (in the new consolidated location) - and then rebake.

 

If you haven't done 1) - then delete the channels, files, etc in the consolidated chors, etc. resave project, rebake in the consolidated project. If you still can't do it: restart A:M before rebaking?

  • Hash Fellow
Posted

As I sort thru it with a text editor it looks like "unbaking" has left some debris that makes for unsolvable filenames.

 

I've backed up to a version that was never baked and am retracing my steps.

Posted

Looking at your image Rob... it looks like some sort of valley with some 'grass roof' houses... Are the material groups different for each emittor? Meaning, is the material(hair) for house 1 different(seperate) from house 2 and the stuff that populates the ground?

 

It should be or else you are confusing the system and will get... stretchy glitches. Do a save-as multiple times to your material and make sure each has a unique name.

  • Hash Fellow
Posted
Looking at your image Rob... it looks like some sort of valley with some 'grass roof' houses... Are the material groups different for each emittor? Meaning, is the material(hair) for house 1 different(seperate) from house 2 and the stuff that populates the ground?

 

It should be or else you are confusing the system and will get... stretchy glitches. Do a save-as multiple times to your material and make sure each has a unique name.

 

 

that's a scene from TWO that has been rendered successfully before. So the scene should be correct in itself.

 

But i need to bake the hair to re-render it with NetRender for TWO 2.0

 

 

Nancy, have you generally been able to load and render scenes that you have baked hair in in V16? So far this scene from TWO has not survived a baking in V16.

Posted (edited)
Nancy, have you generally been able to load and render scenes that you have baked hair in in V16? So far this scene from TWO has not survived a baking in V16.

 

I have only been trying 1 chor so far in ver 16 and I am not using netrender.

 

For my particular chor, I hadn't been baking and hair was rendering ok. Then I tried baking, and experienced the hair stretching. So I went back to NOT baking before rendering.

 

However I have recently retried baking (in the same chor that had a stretchy problem) and it appears that I now do have a sucessful baked version. So the problem is elusive.

 

What I did change however in my procedure for baking - was before baking: unhide all models, go to frame 0, bake from there. Save chor, then restart A:M, render.

 

Your particular chor (that set in particular) that you are trying to render for TWO, in my recollection was always a problem for stretchy hair. Baked or not baked (there wasn't any baking in ver 14 iirc).

 

I have found also that funnies happen, if one is using multiple instances of a model in a chor that has hair. I have seen the stretchies when I've used multiple copies of the same plant model.

 

So if those houses are just multiple instances, that might? be contributing to problem. If you can, save the house model under different names house1, house2, etc and substitute those in the chor. The other thing that might? help, is that even tho the models might be unique, is that they are all using the same hair system - and it would be better to have them reference unique hair system.

 

EDIT: I see Matt has also mentioned the stretchies with multiple instances - same name material. I suspect that scene rendered before - only by luck, or magical thinking

 

EDIT2: Are there any dynamic systems in that chor? they should be baked as well, and perhaps before hair is baked.

Edited by NancyGormezano
  • Hash Fellow
Posted

I can render that scene fine in V15 and V16 if it isn't baked So I regard it as functional scene that shouldn't need additional fixes.

 

What I did change however in my procedure for baking - was before baking: unhide all models, go to frame 0, bake from there. Save chor, then restart A:M, render.

 

 

I'm pretty sure I've restarted A:M at least once in these experiments but I'll try it again when the current bake is done.

Posted

Let me ask this again... is there a specific need for baking at all? Is the grass blowing in a 'force' wind or is there any sort of dynamic effect at all in place? If no, don't bake... or just set the chor to 1 frame and only bake frame 1. If there is a need for baking and I missed it above due to my lazy reading habits, sorry.

  • Hash Fellow
Posted
Let me ask this again... is there a specific need for baking at all? Is the grass blowing in a 'force' wind or is there any sort of dynamic effect at all in place? If no, don't bake... or just set the chor to 1 frame and only bake frame 1. If there is a need for baking and I missed it above due to my lazy reading habits, sorry.

 

I would have thought there wasn't a need since the hair won't be moving but I was never able to start a render unless it started a frame 0. I was never able to stop, pick up at some middle frame later and continue. Steffen said it would need to be baked to do that. So that's why I'm baking

Posted
Let me ask this again... is there a specific need for baking at all? Is the grass blowing in a 'force' wind or is there any sort of dynamic effect at all in place? If no, don't bake... or just set the chor to 1 frame and only bake frame 1. If there is a need for baking and I missed it above due to my lazy reading habits, sorry.

 

I would have thought there wasn't a need since the hair won't be moving but I was never able to start a render unless it started a frame 0. I was never able to stop, pick up at some middle frame later and continue. Steffen said it would need to be baked to do that. So that's why I'm baking

 

Uh...so just what is a "dynamic" system in that scene? Are there special effects? Dynamic constraints? If I understand, did you not say that there was something in the scene causing a wait "for computing particles".

 

Does the hair material (hair systems) on the houses (or trees or anything) have the dynamic options = ON? when it doesn't need to be?

 

I notice if I turn OFF all my hair dynamic systems - then I can scrub thru my chor in real-time without baking - there is some short computation that still goes on (probably checking for dynamic = ON), but there is not the extraordinary computational wait when it is set on.

  • Hash Fellow
Posted

I don't know a lot about the scene since I didn't make it. My interest in re-rendering it is to do it in 3D and to see how much more res or passes is needed to fix the texture sparkling.

 

It does have the trees made of hair. Whether they are dynamic or not I'm not sure. It's possible that baking isn't necessary, but again, I was advised to bake it.

 

At this moment I'm having success with having baked it in V15 and rendering in V16 Netrender. 3D Frames are getting rendered and much faster than V15 was able to do.

 

But for some reason, baking in 16 was unsuccessful.

 

If I understand, did you not say that there was something in the scene causing a wait "for computing particles".
Fuchur's suggestion to turn off display dynamics seemed to fix that on a baked scene.
Posted

If there is nothing dynamic going on... and you need to bake... set the chor length to 0:01 and just bake 1 frame. I would attempt a render in Netrender to see if you even need baking at all, chances are...no.

Posted
It does have the trees made of hair. Whether they are dynamic or not I'm not sure. It's possible that baking isn't necessary, but again, I was advised to bake it.

 

I took a look at 1_01_01.prj - the opening scene, and I notice that the following HAIR material systems have DYNAMIC OPTIONS = ON (when they probably don't need to be): Straw Hair, River Plants, Flowers, Mark Tree Willow Base, Mark leaves Tree3. You could turn them all off in those systems (save them). It would help baking. Not sure about the straw hair - it might need to be ON.

 

There is also a sprite system: Sprite_Clouds - which does need to be ON. That is why you would need to Bake particles.

 

Turning off the display of dynamics, only turns off the real-time display of it and makes it easier to scrub, it does not turn off the dynamic computation for rendering, or baking.

 

 

At this moment I'm having success with having baked it in V15 and rendering in V16 Netrender. 3D Frames are getting rendered and much faster than V15 was able to do.

 

But for some reason, baking in 16 was unsuccessful.

 

I am guessing that there is some conflict between sprite baking and hair baking. If your objective is to just render the scene - then never mind. If your objective is also to help track down why it isn't working in ver 16 - then I would suggest turning off the dynamic option in all the hair material systems mentioned above and just bake with the sprite system and see if you can get it to bake then in ver 16

hairdynamic.jpg

  • Hash Fellow
Posted

Clouds... I haven't seen those yet. I'll investigate this some more.

 

Thanks for your tips.

  • Hash Fellow
Posted

Nancy, I can't find a particle cloud material in that scene. Are you sure you looked at 1_01_01?

 

And don't Dynamic Options need to be On or the hairs will just stick straight out like there was no gravity?

Posted (edited)
I can't find a particle cloud material in that scene. Are you sure you looked at 1_01_01?

 

I imported 1_01_01.prj

 

My 1_01_01 (both prj & the cho file that it references) on my harddrive are dated 9/29/2007 (last time I grabbed it). I notice from the SVN log that there were adjustments made to that chor by Ken on 10/24/2007, and Mike Sanderson on 11/03/2007. Did they take out the clouds? I remember that cloud scene when I viewed the TWO movie - however I never did get a final copy dvd (I never asked for one)

 

Be careful of those clouds - their sprite system has a preroll of 100 frames - that makes even frame 0 a bitch to look at. That's probably why it took so long to bake

 

And don't Dynamic Options need to be On or the hairs will just stick straight out like there was no gravity?

 

Not necessarily. If you groom the hair, then the hair won't stick out, for NON-dynamic hair. It will look how you groomed it.

 

However what I notice is that some people like to put a pre-roll on dynamic hair. I guess so it will settle? And I guess they groom it in an action? or a pose? I don't know why they use pre-roll.

 

I never set a pre-roll for hair. Instead, I groom the hair as to how I want the dynamic hair default to look when still. AND I always turn the "use gravity" OFF in the hair system/dynamic options, but I leave Use Forces = ON. So it still responds to movement, but doesn't drop, nor need pre-roll. Additionally, when I turn dynamic options OFF, it looks how it was groomed.

 

So for example, I notice that the river_plants hair material in MY 1_01_01 project has a pre-roll. (and has dynamic options ON). For the 1_01_01 cho that I am looking at (I have no idea which one you are looking at? - post a screen shot, and I might be able to tell), I wouldn't know why there would be dynamic river plants (or any of the other dynamic hair materials mentioned above), loaded with the project.

 

HOWEVER - I just now also notice that the 1_01_01 chor references only a camera model (that has dome, lighting, camera), mountain2 model (which doesn't appear to have any trees, hair, etc) - so all those dynamic hair systems loaded with the project are probably not referenced by the chor! - and only the cloud sprite system, and the goose (which has non-dynamic hair feathers) are referenced.

 

EDIT: I also notice that Main Camera_v13 model references the forest_1 hair system (dynamic = OFF) - and has 4 emitters.

1_01_01.jpg

Edited by NancyGormezano
  • Hash Fellow
Posted
So for example, I notice that the river_plants hair material in MY 1_01_01 project has a pre-roll. (and has dynamic options ON). For the 1_01_01 cho that I am looking at (I have no idea which one you are looking at? - post a screen shot, and I might be able to tell), I wouldn't know why there would be dynamic river plants (or any of the other dynamic hair materials mentioned above), loaded with the project.

 

I'm looking at the shot that I posted in "Oz in 3D" yesterday. That pretty much shows the shot from start to finish. That's what appears in the movie after the title. It's not the very first shot in the movie, but that's what's labeled 1_01_01 in my TWO archive.

Posted

The intro scene is the one with the clouds (duck flying). The scene Robert rendered is after the duck flies through them, no clouds.

 

As for the dynamic hair, the willow tree needs them and the house roof needs them, not sure why tree 3 has it on. For this shot, you could probably turn it OFF though.

Posted
I'm looking at the shot that I posted in "Oz in 3D" yesterday. That pretty much shows the shot from start to finish. That's what appears in the movie after the title. It's not the very first shot in the movie, but that's what's labeled 1_01_01 in my TWO archive.

 

Are you using a different archive than me? Here is what the svn looks like to me with the repo-browser - what does your's look like?

svnscreenact1.jpg

  • Hash Fellow
Posted

I'm currently test rendering brief sequences of consecutive frames to look for oddness. One thing I'm noticing is how a shaft of hair will jump out like a stick for one frame then disappear. You can see a couple instances of that in the 3D test I posted.

 

The good news is that when it's odd it's odd in both the left and right views so it's probably not a problem with 3D rendering itself.

 

 

I'll be back with more questions.

  • Hash Fellow
Posted
Are you using a different archive than me? Here is what the svn looks like to me with the repo-browser - what does your's look like?

 

I don't have a 1a in my trove. But I haven't been able to update via SVN for about a year now.

Posted

I just looked at 1_01_01a - that is the one you are using probably.

 

I also notice that Willow hair has pre-roll 100! frames, straw - 25 frames, tree3 - 4 frames - that is why particle baking takes so long in this chor. That is the answer to your original question.

 

As to why you can't bake it in ver 16 (and can in ver 15) - try baking it without preroll and see if that is the problem with 16?

 

EDIT: those pre-rolls are from what is currently on my harddrive - I do not know if those materials were ever updated/changed since I last downloaded them, and lawd knows what you're using.

Posted

I helped render TWO and from what I remember, it was quite a task. I drove down to Hash several times and stayed for several days at a time and me and Jason pretty much spent all day every day working on it. There were too many issues for me to list (or remember) and we just tried different things until we could get something usable. I apologize that I can't remember specific issues and what we did to fix or work around them. The most common fixes I remember were:

-simply rerender borked frames

-render troublesome scenes on a single computer instead of netrender

-paint out artifacts in photoshop

-turn off dynamics in troublesome scenes

 

My interest in re-rendering it is to do it in 3D and to see how much more res or passes is needed to fix the texture sparkling.

If this is all you want to do, maybe import the image sequence into AM and apply a Denoise Post Effect to the frames. Maybe that will do the trick.

  • Admin
Posted
My interest in re-rendering it is to do it in 3D and to see how much more res or passes is needed to fix the texture sparkling.

 

I understand your interest in doing it all in 3D but I'm going to guess that using a different texture... one with less noise... will produce the best effect?

The various shaders that exist are often used to preprocess troublesome elements of a scene that would be otherwise need to be processed in post.

I don't know enough about shaders to speculate further.

 

All in all though, I'd say the 'texture sparkling' is a reason compositing is still used as often as it is today.

Concerning post processing, if the textured/particle area can be isolated for post processing you might have some success using the Denoise plugin on the texture. Of course using Denoise will likely require you to have garbage mattes of some sort to mask and control any transparent areas... and note... Denoise can take a lot of time to run through all those frames!

 

Even after all these years it's still hard to get some effects/textures perfect in one single 'in camera' rendering.

In such cases, it may be easier to manage/edit the elements of the shot independently.

  • Hash Fellow
Posted

I've rendered some consecutive frames from the same baked CHOR in v15 and so far none of the momentary hair problems are occurring, so eventually I guess I'll need to boil this down into an AMReport regarding V16 or V17.

 

Why not re-render in V15? Because stereo rendering with multipass (more than 1 pass) doesn't work in v15 and I need to render with multipass to get a saved depth buffer in OpenEXR renders and I need the depth buffer to use FakeAO.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...