The user creates programs by dropping 'boxes' on the screen from the menu bar above the 'desk', and connects them together.
A box has 'input buttons' along the left edge, and 'output buttons' along the right. Data flows through the box from left to right. The lines represent the flow of data from one box to the next. You connect the boxes by clicking on an output button, and then clicking on the input button of another box. A line then appears between the boxes, signifying the connection.
A line will show up 'dashed' if the 'casts' of the buttons don't match. Popup a menu off the buttons in question to try manually casting them to correctly match.
Hotkeys are shown in the main file menu. Additionally, the status bar (at the bottom of the screen) shows mouse actions and key combinations that are available.
When you 'select' a box, any of the box's unconnected input buttons show up as sliders in the 'slider area' on the left. By tweaking the sliders, one can change the default values for each button.
When you connect a line to a button, the slider disappears, because the value is now overridden.
When ShadeTree boots, it first loads default settings from the master defaults file: $STREE_DIR\mray\stree.def This file should not be edited by anyone, but can be used for reference to understand the inner workings of ShadeTree.
ShadeTree then checks for and loads the following files in this order:
There is an example $HOMEDRIVE\$HOMEPATH\.stree.def in the example ShadeTree login directory $STREE_DIR\login\mray\stree.def.
In these files are commands that control the Option menu's default flag settings, the default directories for all the File Browsers in ShadeTree, language specific commands, scripts, and so forth. For indepth information, refer to stree.def Technical Documentation.
ShadeTree also supports "Drag and Drop", where by dragging a .str file and dropping it on a shortcut to ShadeTree, that .str file will be opened.
$STREE_DIR - usually C:\ShadeTree | |---- \bin - executables for customer's path |---- \html - top level html documentation |---- \etc - administration files | |--- \elm - Elan license manager admin tools | |---- \login - sample home directory files | |---- \mray - mental ray implementation files | |--- \bin - mray scripts, display programs... | |--- \examples - example shaders you can load in st | |--- \html - mray specific documentation | |--- \icons - icons for the opboxes | |--- \include - include files used during rendering | |--- \lib - precompiled files, etc | |--- \menu - the opboxes | |--- stree.def - startup file for mray | |---- \sfx - sound effects
However, some editors (such as emacs) are a special case to bring up an editor in a separate window correctly. In these special cases, you may need to assign a full editor command in the environment variable STREE_EDITORCMD, using '%s' in place of where the filename would go.
Note that, when invoking the editor to view temporary files, stree will automatically remove the file immediately after the command returns.
You can override the system defaults which are defined in $STREE_DIR\mray\stree.def:
streebrowser_dir examples shaderbrowser_dir . # not supported compiledshaderbrowser_dir . # not supported stringbrowser_dir examples/textures imagebrowser_dir c:/images streebrowser_dir Sets the default directory for stree file Save/Load/Merge browsers. shaderbrowser_dir Sets the default directory for the Save Shader browser. compiledshaderbrowser_dir Sets the default directory for the Save Compiled Shader browser. stringbrowser_dir Sets the default directory for all the string sliders' file browsers. For instance, when you drop and select the Mental Ray 'texture' box, the MAP button is a string. When you invoke the FILE browser, the default directory is what you set in the above. imagebrowser_dir Sets the default directory for the Load Background Image browser, which can be found in the Options menu.
'Start->Settings->Control Panel->System'.
Environment Variable | Description |
STREE_DIR | Location of ShadeTree set by the install program |
$STREE_DIR\bin | Appended to path. |
These are the "recommended" settings, though they can be different:
Environment Variable | Value |
STREE_DIR | c:\ShadeTree (installation directory) |
PATH | $PATH;$STREE_DIR\bin |
These are optional variables that CAN be set by the user. These shouldn't need to be set unless the need arises:
Environment Variable | Description |
STREE_TMPDIR | Directory where shadetree creates scratch files |
STREE_QUIET | Set to '1' to disable sound effects |
STREE_LIB | Set which version loads by default (mray) |
EDITOR | Stree uses this to determine which editor to invoke for functions such as 'View Shader' |
STREE_EDITORCMD | Sets full command to invoke an editor in a window (overrides the 'EDITOR' variable) |
Mental Ray specific flags:
Environment Variable | Description |
STREE_MRAY_COMPILEFLAGS | Flags for the compiler (cl.exe) |
STREE_MRAY_LINKFLAGS | Flags for the linker (ld) |
STREE_MRAY_RENDERFLAGS | Flags for Mental Ray renderer (ray.exe) |
These are internal variables the software uses for its own nefarious purposes:
Environment Variable | Description |
STREE_LIB | Path to distribution ($STREE_DIR\mray) |
STREE_RENOPTS | Path to current Render Options file |
STREE_DEBUG | General debugging output (=0 off, =1 on) |
STREE_WORKDIR | Main prog tmp ($STREE_TMPDIR\stree. |
STREE_RENDERDIR | Render tmp dir ($STREE_WORKDIR\test. |
Examples:
Variable | Setting |
STREE_TMPDIR | c:\temp |
STREE_QUIET | "1" |
STREE_EDITORCMD | "c:\\winnt\\notepad -f %s" |
STREE_MRAY_COMPILEFLAGS | "-fullwarn -Ic:\\include" |
STREE_MRAY_LINKFLAGS | "-Lc:\\lib -lmylib" |
STREE_MRAY_RENDERFLAGS | "-verbose -threads 4" |
Reid Baker - CEO, Concept/Design
Gregory Ercolano
- SGI/Perl Lead Programmer
Luigi Warren - NT Lead Programmer
Liza Keith
- RenderMan/Mental Ray, Programmer
Dan Candela - NT Programmer
For a toplevel reference to all the ShadeTree documentation, please refer to the main index.
Copyright (c) 1996-1998 Cinema Graphics Inc. All Rights reserved.