Leaf blower into paper stack


#1

Hey guys. I have to show a wide shot of a guy using a leaf blower to blow away a static pile of paper.

I’m emitting a bunch of instanced paper to create the stack.
The instances is using a random starting point only on the Y axis.
I use animated fields to blow it away.
I have a PP attribute to increase particle scale, to grow the self collision attribute as they move. (it’s based on velocity). So essentially the all start of stacked closely together with no self collision, but as they move they push each other away, creating a nice random feel.
That’s all very easy and working fine.

What I would like to do is to ad a randomPP attribute to all tree axis, based on their velocity (or speed) . Basically, they are in a static position with a random Y rotation, but once they move, they rotate on all three axis. I managed to get as far as using a simple RotationPP*velocity. but the problem is that they all move at the same time in the same direction. This obviously doesn’t look natural. I need them to all move in different random directions.

A second challenge, and I fear this one probably cant be done, is to add animation to each paper based on their velocity. So lets say I have an animated sequence of geo. Can I use a “if , else” statment to trigger the animation if say velocity is grater then 1?

Needless to say I am a beginner, so any help is surely much appreciated.

Cheers

Christian


#2

The rotationPP is computed based on the angularVelocityPP. You can set this velocity to random values inside the particle creation expression… they will then all rotate differently.
You could load the full animated sequence(hopefully a looping one) into the instancer and set the current instance to use inside a particle runtime expression, but it would be a bit of work to get it working nicely.

For handling a stack of paper, however, nCloth is generally easier and more realistic:
stack_of_paper.ma

The above scene does this with nCloth. Just create a poly plane, lower the subdivisions a bit, duplicate special with 40 copies with a small upwards translate, then poly combine into a single mesh.
Then make that ncloth, enable the ground plane, set self collisions to full surface and use a volume axis field to blow the sheets off the top, animating the field down into the stack.
The cloth should have higher bend resistance, higher friction, and increased drag/lift. The collision thickness should be carefully adjusted… just to where the stack does not collapse. Also increase substeps for better collisions… especially if you increase gravity.