In|Framez® Papers

Non-Linear Dynamic Caching Systems

By Homam Bahnassi


This article is divided into the following sections:


Introduction to The New Cocktail

Welcome to the bar! Today, you’ll taste particles made of ingredients that we all know in XSI, but in a new cocktail mix!
Behind the XSI bartender, you can see that he already has tasty mixes of rigid body dynamics and tail simulations... All made with his powerful animation mixer! But what about particle simulations?
Unfortunately, at the moment he doesn’t seem to have the specialized tools for creating our new delicious particles cocktail mix.
Oh well, then we will have to use the current mixer along with other available tools to create our particle mix...
We will make a sample shake and pass it over the customers to see what do they think about it. I bet the will like it when they know about the list of vitamins and healthy features that this mix contains!
And if they like it, then it is up to the bartender to standarize this new mix and add it to his every-day menu...


Mixing The Particles Well Without Shaking

First, let’s introduce a workaround for creating the particle mix using the currently available set of tools... We want to use the animation mixer to control particle simulations!
The idea is simple, and we’re not going to go through a step-by-step tutorial to show how to do it.
This is actually based on the fact that XSI deals with particles as points of the cloud, where the particle operator is deforming them in space just like any other deformer or other operator that is deforming geometry objects’ points.

pic1 des

Depending on this fact, we will plot the particles movements to shape animated clips. These can be mixed in the animation mixer pretty much the same way with geometry objects.
The
attached scene shows this concept in action!

pic2 des

We have a small issue however... While particles are being emitted through time, their points count is changing, which is not the case for ordinary geometry shape animations. So to make sure the shape animation trick works correctly, we have to emit some particles at the beginning only and store different clips for a couple of simulation cases.

pic3 des

In the attached scene, you can solo the two bottom tracks to view the movement of the original particle clips.
Now let's mute the bottom two tracks and see how the new mix is gonna taste when using mixed particles from the two upper tracks.
Well? How does it taste? Yummy, eh? It actually uses a lot of delicious ingredients, all mixed together (time wrap, extrapolation, standard blend, weight curves, etc…)...

Oops, the mug is empty! Unfortunately, it’s a little bit limited because we don’t have specialized tools to prepare a more sophisticated mix. But still, it’s helpful in cases where the particles count is constant through time.

(I used it once to mix and control the animation of flocking fish school (available from 3dtutorial.com) where I mocapped the fish control object, plotted the particles and then used the mixer to fix their movement).

pic4 des

Below, you can find a list of healthy vitamins in this new mix…


Benefits From This System: The Vitamins


Now these were some... There is actually many additional vitamins/minerals that I didn't mention. If you’re interested, you can ask your doctor about it!
I can already see the smile of satisfaction over the customers' faces! Try it... You'll like it!




Writing The Final Recipe

It is time then for writing down how exactly do we want this feature to be in the end...
The list below is actually a subset of a complete wish list that was discussed at XSI Base at sometime ago...

We want to be able to:

A Final Word: The Bill

Since this was a test-drive for the new mix, then it will be for free! If at some point Softimage decided to integrate this idea into XSI, then I believe we'll have to pay then… Let's just hope it won’t cost a lot.

Finally, I would like to thank one of my students “Abdul Raheem Younes” who enlightened me with the idea in his Monday class when I was explaining to him the different ways of caching/managing simulation systems in XSI.
Thank you Abdo… and thank you all people… Take care!