rotational motion blur

   5417   2   1
User Avatar
Member
121 posts
Joined: July 2005
Offline
Can't figure out how to do this. :?:

I have particles which follow a path and rotate around it. When I render velocity blut, I just get a straight blur, but I want it to be curved.

In the mailing list archive I found a solution from Caleb Howard, but I'm not sure how to set this up.

We have done this on a couple of shows - most demandingly on “The Sum of All Fears”.

We used a copy SOp with a time param stamped onto each copy, and each copy shifted in time to a subframe position. We used six subframes, but could have used as many as we wanted. Then we stuffed the difference in position from one copy of a point to the next into the velocity
attribute, and rendered with velocity motion blur.

It was trick to accomodate camera movement, but we did so by
transforming everything to a fixed referance coordinate frame.

We had to consider the FPS in stuffing the velocity.
It wasn't trivial, but it wasn't too hard, and it worked perfectly.

Can someone please show me how to set up this solution or describe another possible approach

Thanks
Achim
User Avatar
Staff
2540 posts
Joined: July 2005
Offline
First PRMan has a feature called multi-segment motion blur but only works well for transformations. Deformations and velocity based blur are not really supported (although you can do nasty hacks to get it to go).

Caleb is playing the sub-frame cooking game to generate enough linearly blurring objects to fake the radial motion blur. I have done this with copy stamp as well as with pops directly then copying geometry to the points inheriting the little bit of velocity blur from the points. The POPs method is faster as it does not rely on stamping. Works great with instanced objects as well.

The main idea is to realise that when Houdini is doing deformation motion blur it will cook houdini twice for each frame. The first time it cooks is to get the “start” of the motion segment, the second time is on the actual frame to render the “end” of the motion segment. Knowing that you can cook houdini at any time is the real trick. Just turn your playbar off Integer Frame Values and start scrubbing. You will be cooking houdini at non-integer frames.
To turn off integer frame values on playback:
In H6 press the square button at the lower right of the playbar to open the range slider then press the “+” button just above the square to open up the playbar preferences.
In H7, just press the “+” button on the lower right of the playbar.

Knowing that, you can then build a sequence of “cooks” between frames that properly corelate to the desired shutter time, the current playback speed ($FPS), and the number of geometry “segments” you want. That is the “time” component in the param function that you need to set up.

If you use the POPs method, there is one more complication: you need to manage the Oversampling. Oversampling is the number of times POPs cooks per frame. You have to factor that in as well. I like to use split POPs followed by an age POP to kill particles within the subframe to get the right behaviour on top of the particle leaders. I then copy geometry to those particles or use instances.

I hope this is enough to get you thinking in the right direction.
There's at least one school like the old school!
User Avatar
Member
121 posts
Joined: July 2005
Offline
Hey jeff, thank you for the clarification , you got me thinking in the right direction. I think I will be able to figure out the remaining parts myself :roll:
  • Quick Links