Jump to content

flythroughs?


AJLynn
 Share

Recommended Posts

So we have this government job where the state is actually asking for flythrough animation at each stage (30% SD, 60% SD, full SD, 50% DD, etc. ad nauseum). Big project, multiple buildings with quite a bit of repetition in the layouts. I'm hoping we can get away with not actually flying into the buildings.

 

My question would be, assuming I'd like to set up sun, sky and some kind of GI and throw a ton of CPU at the problem (the other obvious choice would be faking it but it would depend on a lot of variables I don't know yet) and I have Max 9, do I:

 

-Use mental ray? (I'm getting fairly good at stills but is there something like Vray's incremental add to irradiance map that makes a GI flythough work at a reasonable speed?)

 

-Decide this is all silly and just flippin' have the office buy Vray, since I already know how to do it that way?

Link to comment
Share on other sites

I don't really know anything about animation with GI in mr - I looked around a bit and it looks like there's a way (in Max9 at least) to do an every-several-frames FG incremental map but I have no idea how it works and it doesn't appear to be in the documentation (would it really be so hard for Autodesk to write decent docs for mr?). Have you tried doing that?

 

I think I'd actually prefer mr if it can do a decent job of that. Much as I love Vray, I'm impressed as hell with mr 3.5 and we already own it.

Link to comment
Share on other sites

Will anything other than the camera be moving (or changing, like sun location)? If not, then you're money. All you need to do is calculate & save the .fgm file (assuming you're only using FG for this). Then enable the FG freeze option and render the entire animation off that one saved map.

 

If things are moving and you have a farm, then you can network render the .fgm using every Nth frame and combine it using the fg_copy command. There's more info on that process in the help file (mental ray help, not help). There's also a current thread at CGtalk about this that might be helpful.

http://forums.cgsociety.org/showthread.php?t=422067

 

Jeff

Link to comment
Share on other sites

So is this as simple as choosing a new file in the FGM file slot, then setting the render to every-nth-frame, running it (does it have a way to just calculate FGM and not do final rendering like in Vray, or do I just have to minimize the time loss by setting the image sampler to 1/64?) then when it finishes, freeze FGM and do the render? And I'm assuming that it will behave like Vray in that if there are parts the camera didn't see in the every-nth-frame those will have lighting errors?

 

Damn, this is so easy now it's almost embarrassing.

Link to comment
Share on other sites

So is this as simple as choosing a new file in the FGM file slot, then setting the render to every-nth-frame, running it (does it have a way to just calculate FGM and not do final rendering like in Vray, or do I just have to minimize the time loss by setting the image sampler to 1/64?) then when it finishes, freeze FGM and do the render? And I'm assuming that it will behave like Vray in that if there are parts the camera didn't see in the every-nth-frame those will have lighting errors?
Exactly. If the camera can't see it, you'll need to calculate for it when the camera finally gets to it. And no, unfortunately there's not an option to just render the .fgm...wish there were. But as you said you can turn both min & max sample to 1/64 and it's fairly fast.
Link to comment
Share on other sites

I just noticed something else interesting - it looks like you can make some changes to materials while reusing the FGM file. Anybody know anything about that, and whether it's going to screw up my lighting?
Well, it won't change the lighting as long as you're using a saved .fgm with the freeze mode enabled. In fact it can be used as a trick to eliminate color bleed if needed. For example, if you have a solid red floor, naturally it will produce some color bleeding. You could calculate your .fgm file with a white floor and then after saving the file, freeze the .fgm. Then replace the floor material with the red floor and your render will show the red floor, but there will be no color bleed. No color bleed = unrealistic, but I know sometimes you arch-viz people have clients that don't like or understand color bleed and want it removed, so this would work great for those situations.
Link to comment
Share on other sites

  • 2 weeks later...

To take it one step further, it is quicker to calculate a FGM with "grey chalk" materails than with full textures, so generate the FGM with a grey chalk material override, turn it off, and rerender with the frozen FGM

 

Once again, no colour bleed, but great for speed and previews.

 

JHV

Link to comment
Share on other sites

I am also testing the FG freeze option.

 

Last night I ran a 740 frame animation to record the FGM at every 10th frame . This morning I set the freeze FGM and rerendered every frame.

 

It seems that is still generating the FGM. Is it just reapplying the FGM? or adding more samples? or doing a totally new FGM?

 

In both renders the render times were the same.

 

JHV

Link to comment
Share on other sites

Right when you think you're getting a grasp on MR you get knocked on your a$$ again. :mad:

 

Anyways a couple of questions if I may:

 

1: When you say "freeze" the fg, is this done by un-checking the "rebuild" box and checking the "Use File" Box within the FG rollout after of course you have calculated every nth-frame?

 

2: I've read through the mental ray help book, regarding the fg_copy command, but I'm getting lost within Max's UI, I still know how to access the .mi file and use the . Is this done through maxscript? Haha! I don't even know if I'm asking the right question.

 

I geuss I still have a lot to learn/read about MR.

Link to comment
Share on other sites

Yes "Freezing" th FGM is unchecking the rebuild button and checking the use from file.
Eh, that's not really "freezing" the file, that's just using a stored .fgm map, if you don't enable the freeze option in max9, then the .fgm can still be written to.

 

The "freeze" option in Max9 is basically adding a write-only protection on the .fgm file to prevent it from being written to. In older versions of Max you could do this manually by right clicking on the .fgm in windows explorer and enabling the read-only option.

 

Jeff

Link to comment
Share on other sites

So I am really missunderstanding the "freeze" option then, please correct me if I am wrong...

 

If I render every 10th frame to get a FGM and then rerender every frame from the frozen FGM, then the additional samples (ie the ones from frames 1 - 8 etc) that are now generated but not written to the FGM? Therefore the only saving I will get is for every 10th frame and the rest are lost.

 

JHV

Link to comment
Share on other sites

If I render every 10th frame to get a FGM and then rerender every frame from the frozen FGM, then the additional samples (ie the ones from frames 1 - 8 etc) that are now generated but not written to the FGM? Therefore the only saving I will get is for every 10th frame and the rest are lost.
I think it's just the terminology that's getting crossed here (IMHO). When you say "frozen", I associate that with the read-only/freeze option that is available in Max9 for the .fgm files.

 

In your example, you have the .fgm which contains every 10th frame. I'm sticking to Max9 here, if you render that without the read-only/freeze option enabled, then yes, it will modify your .fgm file for the extra frames 1-9, etc..

 

However, if the fg freeze option is enabled, then the calculation for the inbetween frames does not even happen, so there's no data lost since it's not calculated. It just renders the scene with the existing data in the .fgm.

Link to comment
Share on other sites

I am talking max9 too.

 

I dissagree that it just renders with the frozen FGM, when I rerendered my animation with the freeze option on it still calculated the FG, which brings me back to my first question, is it recalculating it all or just adding more samples where needed?

 

JHV

Link to comment
Share on other sites

Well, I don't know what to say then. All I know is that from my own tests with using saved .fgm's and the freeze option it simply goes directly to rendering without performing any additional calculations so there's no extra fg data to be lost.

 

This is the only thing somewhat useful I could find in the documentation in regards to the freeze option:

"If a filename is specified using the -finalgather_file option, it is normally loaded and used if the file exists. -finalgather_rebuild on causes existing files to be ignored, all final gather points will be recomputed and an existing file will be overwritten. freeze is equivalent to on, except that the final gather map, once created by reading it from a file or building it in the first frame, will never be modified. Extra finalgather points created during rendering will not be appended, and the finalgather file on disk will not be modified."

 

That only verifies the obvious, in that the .fgm will not be added to when the read-only/freeze option is enabled. However, it doesn't specifically state whether calculations are generated when the freeze option is enabled. In my tests they aren't even generated, it just renders without any calculations. But in your testing, it doesn't work this way.

 

I guess the only thing I can do at this point is create a test scene that I can send you. Write my exact steps to render down and then send it to you to verify if the results are the same. If not...then I'll really be confused! :)

Link to comment
Share on other sites

Cool, it's small enough for me to post here. Ok, here's what I have as a test. It's a greeble box (converted to poly so you don't need to worry about the greeble plugin). It has the daylight system with mrSun/mrSky, FG, and I've animated the box, daylight position, and camera movement.

 

I didn't include the precalculated .fgm since it's a test of that anyway. So try these steps and let me know what happens:

 

1. Open the scene and turn off the Read only (FG freeze option), and select a new location to save your .fgm (unless the path I have works for you too).

2. Render the scene at frame 0. Then render again at frame 60, and it should perform the calculation and add that info to the .fgm file.

3. Enable the Read only FG freeze option.

4. Render the scene at frame 30 and it should immediately start rendering without any calculations.

5. Turn the FG freeze option off and render frame 15 again and it should run the fg calculation and add to the .fgm.

Link to comment
Share on other sites

I am getting FG calculation regardless of freeze state, even on the same frame

 

1. render frame 1 saving the FGM to disk

2. switch to freeze

3. render

 

result = fg calculation

 

scratching my head now:confused: :confused:

 

If I have both read/wright and freeze turned on then it works. Is this right?

 

JHV

Link to comment
Share on other sites

If I have both read/wright and freeze turned on then it works. Is this right?
Hmmm, did you turn that off for some reason on my file? I know that I had that enabled.

 

Yes, if the read/write option is not enabled, then you're not even using the .fgm in the first place. You're just calculating the FG solution all the time just as though you haven't even specified a .fgm file. The read/write option enables mental ray to read from and write to that .fgm. The freeze option disables mental ray from writing to the .fgm, but it can still read it as long as the read/write option is on. So anytime you want to use a .fgm you must have the read/write option enabled.

Link to comment
Share on other sites

Makes sence now , silly me

 

I was under the impression that you tick read/write to create the FGM, saving it to file, and then once its created turn off the write and turn on freeze. Seeing that the file path is still there it should read the FGM.

 

Now I understand that in order for MR to know that there is a file then read/write has to be on and both be on for it to reuse the solution.

 

Its a little obscure to say the least, glad we have gotten to the bottom of this one.

 

Thanks so much for the help, now my animation is working great and saving a whole 2 minutes per frame.

 

JHV

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...