Author Archives: Andrew

Align Pivot

A set of javascript functions for pivot aligning purposes.

Recently I had to rig a model that consists of a bunch of little parts. It was modeled in Maya and than exported through obj to XSI, so all pivots were feezed – set equal to world coordinates. I made a set of script buttons (insiped by this video) and it saved me a whole lot of time, really.

Note that all of the buttons are freezing Modeling stack. It’s done because they create Center operator there and it notably slows down interaction with the scene – especially if you have to deal with a bunch of objects to align. If you don’t want them to freeze Modeling, just remove
FreezeModeling(null, null, null);
lines from the scripts.

Download script.

stBasket compounds

We had to make a basket model for some poster, so I built a set of compounds to create sennit-like mesh on NURBS surfaces. It was my first experience with ICE modeling, so it took a little time.. and a little more… and a little more than a little more…. But it was done in time and I’m satisfied at last :)

Some notes for those who’s interested.

Extrusion base shape’s points must be in local XY plane – as in standard Circle primitive, for example. So use Front View to draw them correctly.

Compounds that create strands extrusion are faster and more accurate than standsrd one, but they don’t create UV coordinates on the mesh. Maybe, later I’ll fix this, but this time there was no need in them.

stCreate_Strands_TopoDesc compound use StrandUpVect attribute for section orietation of the extrusion. StrandUpVect is a 3dVector per-point array with the same size as StrandPosition. If there’s no StrandUpVect attribute on the pointcloud, it use Default UpVector input port instead.

For some reasons I don’t use PointPosition itself to create extrusion – just make first element of StrandPosition equal to PointPosition.

Here’s a short video about using stCreate_Strands_TopoDesc and stCreate_Mesh_From_TopoDesc compounds.

Download stBasket compounds

Download sample scene.

Fun with ICE. Wheel

Played a little with ‘interactive playback’ simulation environment mode. Some simple ICE Kinematics and some ICE mesh and nurb deformation – and here we have quite useful auto-rotated wheel rig. I used to do it with ScOps before, but it’s much easy and comfortable to built such things with ICE.
Note. If you hide nulls in viewport, it becomes a little bit buggy (but doesn’t stop working at all:) ) . Strange but true.

Download scene.

al Arabi Oil – Guilt

A fried potato rig I made for al Arabi Oil commercial.

A couple of features in it are done in ICE, such as
- hands alignment on spline
- squash and stretch effect
- iris and pupil scaling
- eyelids correction
- shape combiner

Done for Asymmetric VFX Studio.

stAlign Mesh On Curve AxisUpvect

ICE compound for aligning mesh objects on a curve. Note that when curve makes U-turn around upvector axis, mesh “flips” – turns on 180 degrees around curve. So it’s not enough for a real worm rig (but there are some solutions for this), but quite useful in many other cases so I used it in real projects a couple of times.

Download compound



A simple compound that pins vertices of one mesh to another (objects must have the same topology). It’s really very simple and easy-to-build ICE trick, but I used it a couple of times and then decided to make a compound to avoid building it again and again. Quite useful in some specific cases..

Download compound



ICE compound for bending paper effect. Inspired by Curriculum Vitae┬ácommercial. I was impressed by this video and thought of how could this compound work.. and, I think, I got the idea. It’s quite simple but useful. Guess, they used more complex one in a real production, but I didn’t need any more from it, just checked the idea.

Download compound.


ICE compound for flipping shapes. Doesn’t need Symmetry Template Map. Create ICE tree, insert compound, connect to tree, plug shape’s name into Shape In Name port and play with options.. You can freeze the tree after it’s set up – the shape will stay flipped (but it will freeze Copy Shape operator too!).

Download compound.