Ben Houston’s Exocortex approached me to help on the development of a realtime smoke simulator for Softimage ICE. This is the outcome which I just got permission to show.

SlipstreamRT for Softimage is a proprietary real-time smoke simulator developed for Softimage’s ICE system in collaboration with [exocortex.com/ Exocortex Technologies, Inc.] This video is posted with permission from Exocortex Technologies, Inc. For licensing information please contact [email:info@exocortex.com]

I’ve worked on most of the components of the solver including boundary conditions (laminar flow, turbulent flow), vortex shedding, the vorticity equation and particle splitting algorithms.

Most of the tests on this video are done by myself, I’ve also implemented all the workflow and controls demoed in the video.

And Guillaume Laforge is doing this pretty cool project that constructs a fast scalar field in ICE and passes to the polygonizer in a grid structure.

The coolest stuff for me is that the distance function on Guillaume’s polygonizer is an ICE compound! So you can play with it right there and manage to change the way the polygonizer will weight the surface.

It’s exciting to see all these people developing these tools and they are all compatible with my SPH solver, have fun!

I’ve finally finished producing 4 hours of training material on Softimage|ICE platform. I explain the math, core workflow and several computer graphics techniques behind creating some amazing tools that can be used in production.

This series is packed with examples and is more of a intermediate/advanced focused. Although if you are a beginner you might find this really exciting get you to dive into ICE right away!

I’ve been working on this SPH (Smoothed Particles Hydrodynamics) fluids simulator for XSI’s ICE.
I did my own collisions logic, integration, substeps, all the physics part, etc… using low level ICE nodes, and now some compiled C++ nodes.
The simulator supports pressure, density, viscosity, tension, collisions and some other stuff.

Visualize the graph of a function is not easy (at least for me), without plotting the function.
It can be really hard to understand what y = x^2 * z^2 looks like.
So I obviously did an ICE compound with these most common graphs.
I couldn’t stop doing functions and playing with it, so I ended up with this list, all in the same compound: x*z
x^2 + z^2
x^2 – z^2
x^2 * z^2
x^3 + z^3
sin(x)
cos(x) + cos(z) ^ 2
cos(x^2 + z^2)
sin(x^2 + z^2)
-1 / (x^2 + z^2)
|cos(x) + cos(z)| ^ (1/2)
cos(x) + cos(z)
| cos(x^2+z^2) | ^ (1/2)
|cos(x+z)| ^ (10/2)
cos( |x| + |z| ) * ( x + z )
cos( |x| + |z|) * (|x| + |z| )
cos( |x| + |z| )
|sin(x) * ( sin(x) + cos(z) )| ^ 0.2
sin(x^2) * cos(z^2)

Some are very common, others are not. It’s cool how many crazy patters you can get using these functions.

Hopefully this will work as a “educational” resource, so you can see what these functions look when applied to a 3d shape and understand how Sin, Cos, Absolute values, etc, can affect the function.

Here is what these equations look like when applied to a grid:

What’s even more cool in ICE is that after I had all the functions done, I could apply this as a force, a weightmap… basically anything that reads a 3d vector or a scalar.

Based on the number of neighboring particles, this compound can adjust the color around the boundaries of a particle cloud.
The range is calculated based on the number of points in the island, so a gradient is smoothly blended to the particle color.

This can be used in any region of the stack. Plug the Execute Color in one ICEtree port and you are good to go.
However if you want the color to update with the simulation, you must use this in the simulation region.

Like the grease pencil tool for Maya, this tool allows you to draw with the sketch tool for 2d animation/per frame annotation, directly in the XSI viewport.
Changes V1.1

Assembled the XSI Bezier curve tool, CV Curve tool and Curve Text tool to be used from the TC_sketch PPG

Added the “edit frames” command, now you can move your frames in time, selecting a frame in the listbox and using the “up” and “down” buttons.

Added the code to work on linux system.

The current frame stays visible until the next frame.

The listbox now let you navigate/select frames to edit.

“Default frame duration” option in the setup tab was renamed to “Last frame duration”. So now it just affects the last frame of the animation.

Curves color and Visibility/Selectability overrides.

Curve editing The “nav slider” in the “Edit Frames” group is useful to edit/add curves to existing frames. Change this slider will jump the XSI timeline to where the sketched curve is in time.

Auto-select curves option will automatically select all the curves for that given frame.

XSI Brush tool and View Proportional Transform Tool can be called from the TC_sketch PPG.

The Sketch tool creates a standard XSI curve, so you can use any XSI deformer tools on it.