Whats New - Version 6.1.0

31 December 2010

return to main index

Convert to Stereo

A beauty pass rib can be converted to a rib that renders two cameras - figure 1.

Figure 1

As shown below, Cutter copies the camera transforms from the source beauty pass rib and applies the appropriate transforms to the "left" and "right" cameras.

# Right camera transforms
    Translate 0.001 0 0 # separation
    Translate  0 0 7
    Rotate -30 1 0 0
    Rotate -0.5 0 1 0  # larger convergence gives more depth
    Rotate 0   0 1 0
    Scale 1 1 -1
    Camera "right"
Display "./camera_left.tif" "tiff" "rgba"
Display "+./camera_right.tif" "tiff" "Ci,a" "string camera" ["right"]
# Left camera transforms
Translate -0.001 0 0    # separation
Translate  0 0 7
Rotate -30 1 0 0
Rotate 0.5 0 1 0       # larger convergence gives more depth
Rotate 0   0 1 0
Scale 1 1 -1

The rendered images, "camera_left.tif" and "camera_right.tif", must be converted to a anaglyph before being viewed through colored glasses.

IceMan TCL Syntax Coloration

TCL scripts for Pixar's Image Tool application now have additional syntax coloration. For example, the following code shows words such as ice, it and IceExpr displayed in dark blue while the regular TCL commands are colored pale blue.

proc stereo {} {
global count
[ice::load camera_left.tif  -h left_raw]
[ice::load camera_right.tif -h right_raw]
# Grab the rgb channels
it IceExpr "left_rgb := left_raw Shuffle(list(0,1,2))"
it IceExpr "right_rgb := right_raw Shuffle(list(0,1,2))"


When the front window on Cutter's desktop is a beauty rib document several Other Passes are available - figure 2. For example, the Point-Bassed Occlusion pass will generate a (two frame) copy of the original beauty rib. The first frame will bake a pointcloud, the second frame will use the pointcloud.

Figure 2

To support the ribs that can be generated, several additional shaders have been included in this release of Cutter. The first time a pass is selected, copies of the shaders it needs are moved from Cutter_Help to the directory in which a user keeps their RSL files. The shader(s) are automatically compiled - figures 3.

Figure 3

If Cutter is unable to querry the compiled shaders in time to include their full list of parameters in the rib it generates it will issue a warning - figure 4.

Figure 4

The Other Passes menu can only generate ribs for use with Pixar's prman. A later version of Cutter will support DNA's 3delight.


Cutter now supports the use of two environment variables, CUTTER_APP_DIR and CUTTER_USERS_DIR. The value of the first variable should be the full path to the directory in which the cutter.jar is stored. The value of second variable should be the full path to the directory that Cutter should use as its present-working-directory (PWD). Prior to this version, the resources that Cutter accesses such as Cutter_Help and Cutter_Prefs had to be in the same directory as the cutter.jar file. That restriction has now been lifted.

For example, on MacOSX a user may have saved the cutter.jar file to,
However, the user may wish to work relative to this folder,
Now all that needs to be done is for the user to save the following script, lets say it is named run, in their RenderMan folder.

export CUTTER_USERS_DIR=/Users/$USER/Documents/development/renderman/cutter
export CUTTER_APP_DIR=/Users/$USER/Cutter_App
java -classpath $CUTTER_APP_DIR/cutter.jar Cutter

The script should be given execute permission - using,

    john_doe$ cd Documents/RenderMan
    john_doe$ chmod 777 run

The script can now be double-clicked and Cutter will open. Alternatively, the user can cd to the RenderMan folder and execute the "run" script as follows.

    john_doe$ cd Documents/RenderMan
    john_doe$ ./run

In the examples shown above it is assumed the user opened a terminal window from their home directory. A typical directory structure might be,

               |        |_cutter.jar
                                   |     |_custom_templates
                                   |     |_Cutter_Help
                                   |     |_Cutter_Prefs
                                   |     |_run

Directories and files shown in black must be created by the user. Directories shown in red must also be created manually. However, they have a special importance because Cutter's prefs "points" to them - figure 5. The directories shown in blue are created by Cutter the first time the "run" file is used.

Figure 5

Bug Fix - Renderer Flags

A bug that prevented the use of flags consisting of two parts, for example, -woff S31003 has been fixed. Assuming that Pixar's prman is being used the following flags now work properly.

Figure 6

© 2002- Malcolm Kesson. All rights reserved.