Jump to content

VRAYforC4D: GI animation tut-03


STRAT
 Share

Recommended Posts

OBJECT ANIMATION, ALTERNATIVE METHOD

 

tut-01, GI, camera animation - http://www.cgarchitect.com/vb/33137-vrayforc4d-gi-animation-tut-01-a.html

tut-02, GI, object animation - http://www.cgarchitect.com/vb/33138-vrayforc4d-gi-animation-tut-02-a.html#post229775

 

In part 3 of these GI rendering tutorials I'll be experimenting with a new render method for obtaining flicker free object animation. A lot of people are still suffering with long render times and flickering animations, so I thought I'd try out a different method of gi calculation. It's more of a hybrid method than a new different method, but works very very effectively.

 

Basically, in an object animation (ie, moving lights or objects etc) the gi solution changes from frame to frame. Part 2 of this series explored the current render methods available to render object animations. The methods described all work perfectly, but due to the very nature of what the render engine needs to calculate (ie, a constant changing gi environment), you need to pay close attention to render settings, gi settings and sample rates. The out come of this means comparatively slow render times. Render times were still relatively fast, but for a home user or hobbyist this isn't much consolation.

 

It was concluded that the method of BF+LC was the fastest and cleanest method for flicker free object animation. It involves using QMC (or brute force) for your primary bouncing, and Light Caching for your secondary bouncing. Both rendered live 'on the hoof' so to speak.

 

This new hybrid method is still using similar speeds, but is faster on the whole. Also in testing, I found it difficult to actually obtain flicker let alone get rid of it!

 

It's still using the BF+LC method, but I'm pre-caching the LC before hand. In a 10 minute per frame render, this can save on maybe 4 mins per frame, ie, 6 mins per frame instead of 10.

 

What you basically do is just switch off any animated elements in the scene before pre-caching the light cache. You then switch them back on for final render. This means the secondary LC pass wont have taken the animated elements into consideration when generating, but not only is this not a problem in most animations (the secondary bounce is generally most subtle anyway. almost a fill-in light), but you can compensate by slightly increasing the animated object's material gamma settings a tad.

The primary bouncing does the donkey work and provides the lion's share of the gi. This is where the gi quality and definition is mainly generated.

 

Why not precache the LC with the animated objects left in the scene? well, you can (your scene might lend itself to this, try it), but you've a serious chance of LC flicker because a flythough anim pre-cache is a static scene calculation, not a moving object calculation. The chance of flicker is enhanced greatly.

 

Now, the only 'active' gi ingredient in the final render is brute force. Brute force is completely unbiased, so inherently cant be an issue in gi flicker. Although, what you are now left with is trying to make the render as clean and grain free as you can. The settings I've shown in the below examples will help towards achieving this. They're not the cleanest grain free settings (you can amend to those yourself) but they are settings that render speedily and visually acceptable, and of course, flicker free.

My ethos is always to optimise and get usable solutions in professional deadline situations in the real world, not for the world's finest settings you've ever scene. (thats the easy part)

Light Cache is unbiased too, but has a lot more control over light sample caching, and if not treated correctly will cause gi flicker. This is the usual route cause of BF+LC object animation flicker.

 

As mentioned, this render method works beautifully for most architectural type scenes that contain 'the usual' type of animation, ie, opening doors, moving cars, walking people etc etc. If you have a lot of animation or your scene is predominantly dominated by heavy animation, then I'd suggest using the standard BF+LC method as outlined in part 2 of the series. But try it - vrayforc4d is vray adaptive and forgiving.

 

Most important to appreciate when viewing these movies is to keep in mind the render method used. An object animation method that's completely flicker free. The actual animated elements are just the cherry on the cake. They're not even needed in the scenes as they don't effect anything. Any flicker present is down to video compression in post.

 

In these 4 examples below I've rendered 4 different situations, and they're rendered specifically to demonstrate the point, so don't take too much notice of different elements in the scenes not looking real enough for you.

 

Note - in the steps below I've copied and pasted from example to example if the step stayed the same, but there are also minor changes to be aware of. Dont assume.

 

All were rendered on Dann Stubbs's RenderKing Farm (thanks very much for your continued patience with me mate), at 1024 x 576 (16:9) resolution. Each took around 6-8 hours to render. And the colour mapping and contrast/saturation levels are to suit

 

 

 

EXAMPLE 1 - INTERNAL DAY TIME ANIMATION.

 

http://www.leedavid.co.uk/steve/tut03_a.mp4

 

A typical daytime internal style animation. Fixed light source, but animated characters, doors and camera.

 

1) Turn off all animated elements.

 

2) Pre-cache your LC file - in OUTPUT tab, change resolution to full size and frames to ALL FRAMES. Turn off image saving.

 

3) In the vray bridge, check DONT RENDER FINAL IMAGE in options, turn off all AA sampling and filters and turn both primary and secondary bounces to LIGHT CACHE.

 

4) LC settings - subdivs=3000 : passes=8 : scale=screen : screen samp size=0.02 : prefilter=on : prefilter samps=10 : use lc for glossy rays=on : file type=nearest : int samps=5 : mode=flythrough : autosave file=(your choice)

 

5) Hit render. After first frame has rendered, press escape.

 

6) Staying in the LC panel at the bottom, change mode=from file and copy and use the cached file you've just created in the box. (copy and paste should do it).

 

7) Change the primary bounce to BRUTE FORCE , with a subdiv=14

 

8) Un-check DONT RENDER FINAL IMAGE in options, turn on AA sampling to aDMC, filter to PARZEN=1.75, min=1, max=8, thr=0.01 (this is ample AA for this sized animation)

 

9) DMC Sample tab - adapt=0.85 : noise=0.01 : globSD=2 : min=8 and uncheck TIME DEPENDENT.

The important settings for lessening grain in the BF is the ratio of the adaptive amount against the global subdivs. Also, switching off the time dependent switch gives a better feel to the grain rather than a fresh grain for each frame.

 

10) In the save tab click on SAVE IMAGE and save to your choice.

 

11) Switch back on all the elements you initially switched off, then hit render.

 

 

 

EXAMPLE 2 - INTERNAL NIGHT TIME ANIMATION.

 

http://www.leedavid.co.uk/steve/tut03_b.mp4

 

Same scene as above, only in the night. Again, animated doors and people, but static spots in reception. I've added a visible vray area light into this scene to show how extreme light changing can be most effective with zero flicker.

 

1) Turn off all animated elements, including the animated area light ball.

 

2) Pre-cache your LC file - in OUTPUT tab, change resolution to full size and frames to ALL FRAMES. Turn off image saving.

 

3) In the vray bridge, check DONT RENDER FINAL IMAGE in options, turn off all AA sampling and filters and turn both primary and secondary bounces to LIGHT CACHE.

 

4) LC settings - subdivs=3000 : passes=8 : scale=screen : screen samp size=0.02 : prefilter=on : prefilter samps=10 : use lc for glossy rays=on : file type=nearest : int samps=5 : mode=flythrough : autosave file=(your choice)

 

5) Hit render. After first frame has rendered, press escape.

 

6) Staying in the LC panel at the bottom, change mode=from file and copy and use the cached file you've just created in the box. (copy and paste should do it).

 

7) Change the primary bounce to BRUTE FORCE , with a subdiv=14

 

8) Un-check DONT RENDER FINAL IMAGE in options, turn on AA sampling to aDMC, filter to PARZEN=2.0, min=1, max=8, thr=0.01 (this is ample AA for this sized animation)

 

9) DMC Sample tab - adapt=0.9 : noise=0.5 : globSD=0.65 : min=8 and uncheck TIME DEPENDENT.

The important settings for lessening grain in the BF is the ratio of the adaptive amount against the global subdivs. Also, switching off the time dependent switch gives a better feel to the grain rather than a fresh grain for each frame.

 

10) In the save tab click on SAVE IMAGE and save to your choice.

 

11) Switch back on all the elements you initially switched off, then hit render.

 

 

 

EXAMPLE 3 - INTERNAL DAY TIME ANIMATION.

 

http://www.leedavid.co.uk/steve/tut03_c.mp4

 

Similar scene to example 1, but a pure internal. Light by 2 spots in the room, and a large area light in the hall. The camera and people move.

 

1) Turn off all animated elements.

 

2) Pre-cache your LC file - in OUTPUT tab, change resolution to full size and frames to ALL FRAMES. Turn off image saving.

 

3) In the vray bridge, check DONT RENDER FINAL IMAGE in options, turn off all AA sampling and filters and turn both primary and secondary bounces to LIGHT CACHE.

 

4) LC settings - subdivs=3000 : passes=8 : scale=screen : screen samp size=0.02 : prefilter=on : prefilter samps=10 : use lc for glossy rays=on : file type=nearest : int samps=5 : mode=flythrough : autosave file=(your choice)

 

5) Hit render. After first frame has rendered, press escape.

 

6) Staying in the LC panel at the bottom, change mode=from file and copy and use the cached file you've just created in the box. (copy and paste should do it).

 

7) Change the primary bounce to BRUTE FORCE , with a subdiv=14

 

8) Un-check DONT RENDER FINAL IMAGE in options, turn on AA sampling to aDMC, filter to PARZEN=1.75, min=1, max=8, thr=0.01 (this is ample AA for this sized animation)

 

9) DMC Sample tab - adapt=0.85 : noise=0.5 : globSD=1 : min=8 and uncheck TIME DEPENDENT.

The important settings for lessening grain in the BF is the ratio of the adaptive amount against the global subdivs. Also, switching off the time dependent switch gives a better feel to the grain rather than a fresh grain for each frame.

 

10) In the save tab click on SAVE IMAGE and save to your choice.

 

11) Switch back on all the elements you initially switched off, then hit render.

 

 

 

EXAMPLE 4 - EXTERNAL DAY TIME ANIMATION.

 

http://www.leedavid.co.uk/steve/tut03_d.mp4

 

This is a short typical external scene. Globally light by an infinite light only. Only the car, people and barriers are animated.

 

1) Turn off all animated elements.

 

2) Pre-cache your LC file - in OUTPUT tab, change resolution to full size and frames to ALL FRAMES. Turn off image saving.

 

3) In the vray bridge, check DONT RENDER FINAL IMAGE in options, turn off all AA sampling and filters and turn both primary and secondary bounces to LIGHT CACHE.

 

4) LC settings - subdivs=3000 : passes=8 : scale=screen : screen samp size=0.02 : prefilter=on : prefilter samps=10 : use lc for glossy rays=on : file type=nearest : int samps=5 : mode=flythrough : autosave file=(your choice)

 

5) Hit render. After first frame has rendered, press escape.

 

6) Staying in the LC panel at the bottom, change mode=from file and copy and use the cached file you've just created in the box. (copy and paste should do it).

 

7) Change the primary bounce to BRUTE FORCE , with a subdiv=14

 

8) Un-check DONT RENDER FINAL IMAGE in options, turn on AA sampling to aDMC, filter to PARZEN=1.75, min=1, max=8, thr=0.01 (this is ample AA for this sized animation)

 

9) DMC Sample tab - adapt=0.9 : noise=0.01 : globSD=1 : min=8 and uncheck TIME DEPENDENT.

The important settings for lessening grain in the BF is the ratio of the adaptive amount against the global subdivs. Also, switching off the time dependent switch gives a better feel to the grain rather than a fresh grain for each frame.

 

10) In the save tab click on SAVE IMAGE and save to your choice.

 

11) Switch back on all the elements you initially switched off, then hit render.

 

 

I haven't tested the other object anim methods as the BF+LC methods seems to be the preferred choice. Ultimately, BF+BF would be even nicer, but you'd have slower render times.

All settings above work nicely with the shown examples, you might need to tweak them to suit your scenes. Also, it's still a render farm operation in reality.

Be careful when changing the DMC settings - the adaptive amount gives less grain at lower values (ie, 0.85 compared to 0.9), when used in conjunction with the global subdiv multiplier, but watch this level in your testing as you might end up with longer and longer render times whilst not effecting the visual of your image. Also, more subtle changes can be made by adding or lessening the BF subdivs.

 

Thank you

Link to comment
Share on other sites

  • 6 months later...

Hi strat, thx for sharing. i will give it a try :)

But let me make you a question before that, even if avoiding the flickering thing; what if light is changing at every frame (and therefore the gi)? Sun moving is a typical scenario but calculating both Imap and Lcache for every frame is definetely not realistic for my equipment. BF at first bounce wouldn´t make it too fast as well...

Any idea or i´m just asking for too much?

Salut.

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