A new version of Softimage|XSI has arrived and from the looks of this release; the crew working on it appear to have been very, very busy. Updates and new features have been added to just about every major aspect of the software. However the one that seems to stand out the most is called ICE. What is ICE? It's an "Interactive Creative Environment" that can be used to create effects and tools. If you are familiar with XSI, then you've most likely used the render tree. (A node based material creation tool.) Formerly named Moondust, ICE is similar in that it is also a node based tool that allows you to build an effect from scratch, using very basic nodes (for atomic-level control) or higher level (pre-built) nodes to create something relatively complex in a much shorter time. Sounds great, but what does it do?
It allows you to use nodes to create interactive tools via a visual programming interface called the ICE Tree. Networks of these nodes can get data from the scene, modify and process it to create tools which can then be used to generate all sorts of effects and changes to the scene. Technically ICE can only be used to create particle effects and deformations, but that's an oversimplification. Since pretty much any point data can be manipulated with ICE it can create a lot more effects that most people would not think to put in those two categories. Additionally, there is a hidden feature that allows ICE to write to kinematics. (At the moment you can only read them.) You've got to adjust an environment variable to get to it, thus opening yourself up to the possible instabilities caused by an unsupported feature. But just knowing that Softimage is working to expand ICE into other areas of the program is very exciting. While ICE comes with hundreds of operators, it also comes with more than 200 presets that anyone can drop into the scene so they can start working immediately. These presets are actually compounds (more on that later) and can be "opened up" and modified to create totally different effects. Opening up a compound is also a good way for users new to ICE to learn how everything works.
Once nice thing about ICE is that anything it generates can be accessed by any other area of the program. For example, say you've created the perfect particle simulation but the client wants it slowed down or sped up. In the past, this would require a re-simulation, reworking of the particle system or manipulation of rendered frames. Now, with ICE you can drop your particle animation into the animation mixer and stretch or squash your simulation till you get the proper results. ICE isn't like most systems either. Feedback is very fast as it is 100% multi-threaded. So, if you've got an 8 core machine you won't have 7 cores idle while you wait.
ICE is not just limited to particle effects either. If it's in the scene, ICE can connect to it and manipulate it. For example, it can connect to an extrude operator and push out polygons. The effect can then be driven by a slider or just about anything. Textures, weight maps, the distance between objects, the color of a light, the current scene frame, the shape of an object etc… ICE can offset time on instances with animation. It can generate cloth effects, control rigid body dynamics, flocking crowd effects and much, much more.
While ICE can not yet create geometry but it can create what are known as Strands. These are solid trails that are drawn along a particles trajectory. They are continuous shapes generated at render time and cannot be manipulated in the way you would a scene mesh. Strands are great for creating grass, hair, seaweed, ribbons, light trails, fireworks, etc… and they can interact with other objects in the scene.
ICE trees can become pretty complex, so Softimage has added a great annotation tool. This allows users to write descriptions of nodes or groups of nodes. Making it easier to decipher what is going on in the tree when users pass scenes between each other or when accessing old scenes where you may not remember just what you did.
Another tool for simplifying large ICE trees is the compound function. This allows the user to collapse any tree into a single node making it easier to pass from one scene (or user) to another. Additionally the creator can hide some of the unnecessary controls exposing only the ones needed by the end user. Compounds can also be opened up and adjusted in case the user needs more control. Some people might not want their compounds altered. For situations like this Softimage has provided a mechanism to lock the compound by saving it in a binary format.
I suspect that once ICE has been in the hands of the Softimage user base we'll see tools created that the designers never even thought of when they were writing it. For example, its capabilities are so unlimited that I've even seen it used to create a raytracer! ICE is such a huge addition to XSI that I could fill an entire set of reviews going over its features and abilities and barely scratch the surface. In order to try to cover as many of the other new aspects of XSI 7, let's move on.
The new ICE feature in XSI 7 is massive. To fully understand ICE it must be seen. Click on the videos below to see ICE in action.
Rendering and materials have gotten a huge upgrade in XSI 7. First off, mental ray 3.6 has been added and along with that comes a lot of new features. There is a new raytracing acceleration technique dubbed BSP2. Anyone familiar with mental ray, regardless of which software you use it with, knows about BSP and the effects it can have on rendering times. The biggest problem was that it had to be tuned properly in order for it to work efficiently. With BSP2, those parameters, such as depth and leaf settings, auto-tune themselves. This feature alone should save XSI users untold numbers of hours.
There is a feature called render archives/stand-ins. These are objects that can be loaded and unloaded on-demand if mental ray starts to run low on memory allowing for faster rendering times.
The Rasterizer gets a couple of new options as well. Motion Factor, which lowers the shading frequency as an object moves faster and Max Depth, which will adjust shading samples based on the distance to the camera
The interface for the render manager has been streamlined and simplified. Many of the requests made by users of the previous incarnation of the render manager have been addressed.
Some of the ICE tree features such as node compounding and annotations have been added into the rendertree. Also, unconnected rendertree nodes no longer vanish when you refresh the tree: Dropping a rendertree node on to a connection line between two other nodes will auto-insert/auto-connect the three nodes together as best it can.
Fantastic new color management tools have been added to XSI allowing you to manage your gamma correction so there won't be any surprises when your renders get shipped out the door. It's not just some lens shader that makes an attempt to show you what you are going to get. It's fully integrated into the software. Total support is available everywhere you'd need it. From the rendertree with f-curve controls similar to the curves control in Photoshop and textures that can have their own profile, to the built in compositor, to the render region (allowing for side by side comparisons) to the full support of lookup tables of just about any type and much more. It really is a first class implementation.
There are quite a few miscellaneous rendering features that have been added as well. There is a terrific new realtime shading API. The ability to edit multiple UV sets in the texture editor. Support for importons, which is an irradiance particle algorithm used to get a similar rendering solution to FG + GI but faster. In order to speed up renders there is a new option to display or not display the frames as they render. When the display is turned off, only the render progress bar is visible. There are quite a few "Binary Alchemy" shaders such as Volume, Cell, Fractal and a few other volume specific shaders. The Render Channel Shaders and the Share Shaders have been updated to include more features geared toward making them easier to use and access. The editing of local or global passes is now the same as all other shared properties in XSI, making the "Make Local to Current Pass" and "Copy This Pass to Global" buttons obsolete. A new function allowing you to override any of the global rendering options for a specific pass (just editing the options) has been added. There is so much more I'd like to add here but again, like the ICE tree, the rendering and materials upgrade for this release is just too massive to list in one single review.
Sometimes it's the small (or not so small) stuff that makes life easier. Quite a few useful tools and functions have been added to XSI 7. A new licensing system has been implemented. It is much easier to use and includes a "Panic Buttons" in the event that there is a problem. This button will allow Softimage to continue to function till the user(s) have time to contact support and resolve the issue. Interface speed has been increased dramatically. I've done some tests and scenes that previously ran at 4 or 5 frames per second are now running at 30 to 45 fps. Included with version 7 are eight hours of training created by Digital Tutors. This should really help users get a grip on the new ICE tree as well as some of the other new features. The text editor now has a customizable Scintilla-based editing feature that allows full text adjustment of color, font, size, syntax styles, auto-complete, folding, highlighting and much more.
There are quite a few new primitive models like, XSI Man Armored and Little Dude. There are dozens of small user interface enhancements. Sliders now dynamically "adjust" for ranges that were not coded into the property page. Zooming in views (any view, not just 3D views) can now be done using the scroll wheel on the mouse. Typing in a very, very small value such as "0.00001" is now accepted in XSI and not "rounded" to zero like they were in the past. There is a new display mode dedicated to particle work. Filtering via keyword has been added to so many new areas of XSI that it is just too much to list. Audio support has grown to include WAV files that use MP3 compression. There is a new referencing system called Delta II that is more robust than previous referencing systems. In fact, referencing is such a massive update that there is simply too much to list here.
Softimage has phased out the Foundation version of its product, leaving only Advanced and Essentials. At first this may seem to be a disappointment to current Foundation owners. However, Softimage is offering a very good upgrade price for those willing to step up to Essentials regardless of what version of Foundation they have. For a very reasonable fee Foundation users can now access the functions that only Essentials users could, such as: The FX Tree compositor Illusion, polygon reduction, GATOR, MOTOR, references, the ability to code operators, cloth, hair, rigid and soft body dynamics and more. As well as all the new features of XSI 7, such as ICE.
This release of XSI has really lived up to its expectations. There was so much hype around ICE and version 7 that many were worried it might not live up to it. But from what I've seen so far, it has gone beyond the hype and surpassed even the most hardcore critic's expectations.
Ed Harriss is a 3D artist/technical director, working at SAS Studio Productions in North Carolina. He is a Softimage expert and very well known in the community for his Softimage Learning Tools at EdHarriss.com and his book How to Get a Job in Computer Animation. Ed is also writing for several online and print magazines and he is forum moderator on XSIBase.com.