Quaternion Rotations + Motion Blur

   602   2   0
User Avatar
Member
60 posts
Joined: Aug. 2015
Offline
Hey everybody,

I was just doing some testing with Karma/motion blur, and unfortunately, it hasn't been going very well thus far. Right now, I am running into a wall with render times and the creation of sub-frame USD samples. Here is a link to a .hip file that tests curved motion blur with around 100,000 particles.

At first, I did this successfully when applying a pop force that used a turbulent noise. Then, I switched that particle sim out for another one that uses a pop axis force instead. As soon as that happened, everything froze up. I didn't change anything except for the particle sim that was cached out, and it's still around 100,000 points.

Here is the file:
https://drive.google.com/file/d/18oyZyPt-KH2rGfp60EqnmCAVzG89Wjx0/view?usp=sharing [drive.google.com]


Which brings me to a question on how to potentially avoid and/or reduce sub-frame USD caching altogether...

In the documentation:
https://www.sidefx.com/docs/houdini/solaris/kug/motionblur.html [www.sidefx.com]

It states:

"Karma internally represents rotations as quaternions beginning with Houdini 20.0. This means you might not need to author as many samples in USD, to get decent motion blur."

Along with:

"Beginning in Houdini 20.0, Karma internally represents transforms as quaternions. This can allow Karma to smoothly interpolate rotations, without requiring artists to author many time samples in USD."

However, it is not clear to me if these "transforms" and "rotations" only refer to obj level transformations or if that relates to object deformation within a geo network. In this situation, I have 100,000 particles, so do I need to prepare specific attributes for these quaternion rotations to be internally understood? It says I "might" need less substeps... but does that mean no substeps? only 3 to make some kind of bezier curve along the motion blur arc? What might be the minimum?


Thank you for any and all help.

Have a great day,

- Tyler
User Avatar
Member
7796 posts
Joined: Sept. 2011
Online
tbay312
However, it is not clear to me if these "transforms" and "rotations" only refer to obj level transformations or if that relates to object deformation within a geo network. In this situation, I have 100,000 particles, so do I need to prepare specific attributes for these quaternion rotations to be internally understood? It says I "might" need less substeps... but does that mean no substeps? only 3 to make some kind of bezier curve along the motion blur arc? What might be the minimum?

I imagine it means it decomposes matrices into quaternions so that when motion is only complex due to rotation it will take fewer steps. It will have no effect on motion that is purely translational. I also think it will have no effect on particles or geometry deformation blur.
User Avatar
Member
60 posts
Joined: Aug. 2015
Offline
jsmack
tbay312
However, it is not clear to me if these "transforms" and "rotations" only refer to obj level transformations or if that relates to object deformation within a geo network. In this situation, I have 100,000 particles, so do I need to prepare specific attributes for these quaternion rotations to be internally understood? It says I "might" need less substeps... but does that mean no substeps? only 3 to make some kind of bezier curve along the motion blur arc? What might be the minimum?

I imagine it means it decomposes matrices into quaternions so that when motion is only complex due to rotation it will take fewer steps. It will have no effect on motion that is purely translational. I also think it will have no effect on particles or geometry deformation blur.

Yeah, that's been my experience with it as well so far. I'm assuming that it may be referring to obj level animation that's represented as a transform matrix.
  • Quick Links