cycles hack volume lighting

Awesome Kai!

Holy cow! nice examples Kai!

Hi Kai, amazing test!
How you got this method to work with animation? I thought it only works for still images since it relies so heavily on high motionblur values.

Hey Kai, did you use the cube array or just a plane?

One plane moving cyclic back and forth for each frame. Well, to be exact two planes facing each other and moving into opposite directions to make sure the volume density is exactly the same at each frame. You can also add more planes to increase density even further but then it gets also slower.

When looking at the video I notice some ghosting at 0:08 - I get the same problem when using the technique for animations as seen in this frame (camera is rotating in this scene):


Yes it looks like the geometry gets a low intraframe sample value so you get fewer iterations to create blur on a frame. What does the frame look like with out the volume plane but with the motion blur on?


Here without the volume hack.

Trying to do SSS with the hack. I’m restricting the volumetric planes to only render inside the object with light path node (forcing them transparent when light path is not transmission), then I just use glass material with 1.0 IOR in the object and mix it with whatever surface I want:

Attachments


Very clever sss. You could even build subdermal structures.

Based on your method I created a setup for spotlight. In general it uses a rotating cone instead of a plane. Good thing is it doesnt need as much samples but on the other hand it looks not as good as the original method.

You can download it at blendswap =)


One plane moving cyclic back and forth for each frame.

@kai: So how far away from the focal plane do we place our plane? When you say back and forth does that mean into the FOV then back to the focal plane or side-to-side? If so how far into the scene does the plane need to move? What value did you use for the Motion Blur Shutter?

Sorry for the barrage of questions I am just trying to get this to work. Still not sure how it all functions yet…

The plane would have to traverse the volume of the light, like lamp clipping it doesn’t have to be the whole frame. The plane should move at least the entire volume distance within shutter (exposure) time. More cycles/oscillations may produce denser effect (a guess as it may not add anything). I would suggest that the motion blur amount would be tied to speed of travel for the plane. That is, you should select the amount of m’blur appropriate for the other elements that might be moving in the shot. Then increase the velocity/oscillation of the plane.

very clever! thanks for sharing

now this is cool. how exactly do you do this? take a plane, move it back and forth across the camera, once a frame? is that correct? should it be passing through objects? maybe someone has a .blend i can check out? that’s a lot of ?s, sorry!

should i be using two planes moving left to right and right to left, with their edges facing the camera at all times? any particular material on those planes?

This is one of the most interesting threads I’ve come across lately. Opens up so many possibilities for both fog and SSS.
Thanks to Secrop for recently posting the piece ‘Winter’ or I wouldn’t have found this.

Hi Kai!
Your video example is awesome! Thanks for sharing.
Would you mind showing what your f-curves look like for the animation of the planes?
I’m having the problem of varying density every other frame with my current curves:
[ATTACH=CONFIG]287463[/ATTACH]
Thanks!

Here is my setup:


The planes are parented to the camera to make the rig more flexible. Also you need to turn the motion blur shutter speed up to 1.0 to avoid empty space.

I hope this helps.

Yes! Thank you, Kai!
That helped a lot! Now I know where I got stuck.
I needed to turn off snap-to-frame in the Graph Editor in order to keyframe between the frames.
Something so simple, yet I had never done it before.
The screen shot you shared got me to take a closer look.
You rock!

Edit: Looking at your screen shot again I can see you don’t have between-frame keyframing.
Although I suppose that’s another way to do it using just one plane - have a single plane go back and forth and cycle back to be in the exact same position in time for the next frame.
In any case I am getting good results already, and will continue to experiment.