Prev | Next

The Scripting Environments

“it” and the IceMan Image Computing Environment

Like all RenderMan Studio (RMS) applications, “it” is built atop a tcl language interpreter (see Tcl is well-suited for the specification of initialization and preference data as well as small programming tasks such as extending “it”s capabilities. Unlike other RMS applications, “it” is also built atop a second scripting language. Prior to RMS 1.0 we provided a custom scripting language, the combiner, for imaging operations. In RMS 1.0 we introduce a fundamentally more powerful imaging environment — IceMan.

First and foremost, the underlying imaging model has been rebuilt from the ground up. The IceMan imaging model is a sophisticated framework for expressing general computations on image data in a variety of representations. IceMan's execution engine employs dependency analysis, lazy-evaluation, and multi-threading to ensure efficient execution of your IceMan scripts. We've selected a new open-source scripting language called Io (see as the syntax for IceMan scripts because of its elegance, power, lightweight syntax, and embeddable nature.

We provide hooks for extending both of these scripting environments. Generally, you use tcl to manipulate the application objects — images and catalogs, as well as to load and store program state and to execute IceMan scripts. To extend the IceMan scripting environment you use Io. We provide the entire Io-side execution environment in source form to serve as a reference for your extension activities.

Here are a few features of the IceMan environment:

  1. Speed: substantial effort has been expended to optimize operations.
  2. Quality: sub-pixel accurate positioning, full floating point (or double!) precision available.
  3. Multiple data types.
  4. "Lazy" evaluation of image processing expressions: optimized evaluation occurs only when necessary.
  5. User-transparent multiprocessing on machines with multiple CPU's.

For more information on “it” scripting, check out the “it” Scripting Tutorial.


Prev | Next



Pixar Animation Studios
Copyright© Pixar. All rights reserved.
Pixar® and RenderMan® are registered trademarks of Pixar.
All other trademarks are the properties of their respective holders.