In|Framez® Papers

XSI Particles FAQ

By Homam Bahnassi


After hanging around in different XSI lists and discussion groups, I noticed that a very big amount of these discussions are about particle problems and how to achieve common effects using them...
That was when I decided to write this paper as a share point for some of the info I know about these common problems. I am looking forward to contributions from everyone who has any useful info/tips/tricks to share about this topic to post it to this page so we can minimize the (how to) time for known particle cases.

So, this article is not a tutorial like where you can follow a few steps with a companion scene to learn a new thing. It is much like a “tips and tricks” archive for particles where everyone can share with his own expertise and learn at the same time.

For this part I will start by listing most of the problems and workarounds that I usually face while dealing with particles, for others who have info to share, I would really appreciate that… just mail your contribution to hbahnassi@inframez.com along with any pictures/sources you find useful.



Q. How to render particles blobs (metaclay balls) with true reflection and refraction?

by Homam Bahnassi

This is one of the hottest topics that was discussed a lot of times.
The problem lies in that the current version of XSI (4.2) has no direct way to control refraction/reflection in the blob shader, and it is really ugly to have only simple transparency (ptype alpha) on the blobs without any refraction or reflection. Even if you try to enhance it with static blur, it will still not look acceptable for most SFX renders.
One method that I use frequently (easy to setup and control) is to use the legacy particles blob shaders (volume and material) that were used in XSI prior version 3 (they are still in 4.2 for backwards compatibility).
The use of these shaders enables us to add a lot of nifty effects to the blobs, including reflection/refraction/fractal bump/static blur along with a lot of shading models. However, on the other hand we lose the ability to build complex render trees, since these shaders don't accept any input nodes.
The use of these shaders might be a little bit tricky; you need first to connect them to the cloud’s material, then save your scene and restart XSI to be able to see the render results!
For me, I have created a custom toolbar to get all legacy particles without restarting XSI, and it is available at the inframez netview as an addon (read how to install it).
So this is one way to achieve such effects without twisting your head with complex render tree setups, and I hope that the guys at Softimage consider moving these old features to the new blob shaders to make things more straightforward.

Click for full resolution image           Click for full resolution image           Click for full resolution image

Download fire clip (805,313 bytes)...



Q. How I can change the particle type color without re-simulating the damn cloud?

by Homam Bahnassi

A very buggy problem that drives me nuts is that when you change the particles color you need to re-simulate the whole particle cloud to render the effect. It is really a time killer especially if you have a long and complex particle simulation and you have to wait until XSI computes all the frames for each time you change the color.
To workaround this problem, I use the particle gradient node where I can change the color freely and see the changes in the renderer without re-simulating the cloud.
The only problem for this workaround is that you cannot view your color changes in the viewports so you'll have to stick with the render region to fine tune your particles color.


Q. Animate more than one parameter with the “age%” without screwing the particles?

by Homam Bahnassi

It's very common to animate more than one parameter with the “Age%” as animation reference mode especially when creating effects like smoke and dust where you need the particles to grow in their size and fade out their alpha.
The problem here is that if you try to render your particles with the previous parameters animated, you'll get crazy rendered behavior with their alpha usually.
To fix things, you can use again the magic particles gradient shader to animate the particle color and alpha along the particle age without much headache, but again you will lose the real-time feedback in your viewports.

Click for full resolution image



Q. How to render toon blobs?

by Homam Bahnassi

One interesting effect is to render particles blob with toon shading which looks really cool for a lot of scenes.
Unfortunately, you can’t connect any of the available toon shaders directly to your particle type. So you'll need to fake it using a special combination of shaders as shown in the figures below:

Click for full resolution image

We used the incidence node to compute the blobs shading by setting its mode to (surface/light), so uncheck "apply shading" from the blob node to render only the shading that is computed by the incidence.
You can now control the highlight coverage and the shading smoothness by adjusting the bias and gain parameters.
In the mixer node, you can control the highlight and shading colors by adjusting the base and mix color.
Finally, you can add ink to them simply by just adding the ink lens shader to your camera.


Q. Animating seasons effect on trees?

by Homam Bahnassi

This a one nifty trick to animate growing trees using XSI particles.
In the animation you can see how the tree leaves start to grow, then as they get older they start to go yellow, and finally they falloff and fly with the wind.
Doing such effects with particles is really fun, since you can control animation for all leaves through dynamics (collision, forces, etc), in addition to the animation control which enables you to grow and change the leaves color as they grow older, and of course, you still get the full shading/shadowing for rendered particles/leaves (even in real-time as in the capture).

You can use the particle sketching tool to define particles for the tree leaves, or you can use simple shapes to emit particles from (that is what I have done in the example).
One last note, it is not really fast in rendering, especially if you are rendering with soft shadows with area lights, so if you’re planning to render a rain forest it may not be your best option but it is worth it for closer shots.

Click for full resolution image           Click for full resolution image

Download tree clip (2,187,627 bytes)...



Q. Rendering cigarette smoke with particles?

by Homam Bahnassi

For this type of rendering it is very hard to do it using the standard particles billboard shader, because you need to emit a very high number of particles to get acceptable smooth results.
For these situations, the GenieTail shader is your hero if want to produce really smooth results with a very low particles count.
You can download it and explore its possibilities from Alan Jones web site.

Click for full resolution image