For the most up-to-date version of the FAQ's, please refer to
the Cinema Graphics website. Often we
will update the website with common questions about a new release
after it has gone out.
If your problem isn't in list below, contact us via email
3.0.0 Trailer
Questions about running renders with RenderMan in ShadeTree.
This is a problem with your prman environment.
Make sure your $RMANTREE and $PATH variables are pointing at
the correct version of renderman.
Also, make sure you are running the correct version of shadetree
for renderman. ie:
Version Stree Command Line
------- ------------------
PRMAN 3.5 st -prman3.5
PRMAN 3.6 st -prman3.6
PRMAN 3.5 st -prman3.7
If you don't want to specify the command line flags all the time,
try setting your STREE_LIB variable; then you can just type 'st'
to get the correct version.
You are probably running low on ram. Run 'gr_osview -a' to see what's
going on with ram, or if your machine is swapping.
Try changing your render paramemters.
> Lower your output resolution in the Render Options Editor
> Use Zoom to zoom away from the object (decreases tesselation size)
> Decrease your sampling rate
Even rendering a single sphere primitive can throw a machine into swap
if your shader is complicated enough, or your render parameters are
set wastefully.
See the animation example stree files that end in *_anim.stree.
To render a frame you need at least two things:
> Set the Start/End/Increment in the Render Options Editor
> You should have an argument called 'frame' in the Argument Editor
As a convenience, the Globals->FrameRange box can be used to
easily access the frame range values.
See the animation examples, ie. all example stree files that
end in _anim.
In the Render Options Editor, there are options at the very bottom
to let you set a frame range, below the prompt for the custom render
script.
These frame ranges are passed to all render scripts as environment
variables:
STREE_SFRM - start frame
STREE_EFRM - end frame
STREE_IFRM - frame increment
An example of a custom render script that uses these variables
is shown in:
/usr/local/shadetree/prman/bin/custom-render-animate
See the CUSTOM RENDER SCRIPTS section in 'man shadetree-custom'
for more information.
Questions regarding writing shaders in RenderMan with ShadeTree.
Prman 3.5
This is the first version supported by ShadeTree.
We support the entire language, EXCEPT:
> uniform and varying
Prman 3.6
These new features in 3.6:
> spheres are now primitives, not bicubic approximations
These new features in 3.6 are NOT supported by ShadeTree prman-3.6
> shadow() bias parameter
> vertex class introduced
> vector, normal and hpoint
Prman 3.7
These new 3.7 features ARE SUPPORTED in ShadeTree:
> Arrays
> New data types (string, vector, normal, matrix)
> nshader compiler
> New variables __nondiffuse and __nonspecular
> Local variable declarations
> Time derivatives (dtime, dPdtime)
> Message passing
> These new functions:
vtransform() ntransform() determinant()
ptlined() filterstep() specularbrdf()
min() max() clamp()
concat() format() match()
These can be controlled via the custom render script:
> Curve primitives
> Level of detail (RiDetail)
> Procedural primitives
These new 3.7 features are NOT SUPPORTED in ShadeTree currently:
> Local functions (functions declared in functions)
> output and extern declarations
In RenderMan, this is almost always due to Displacement Bounds being
'off' or set too low. It usually shows as strange 'clipping' artifacts:
sharp edged holes in the object.
It is best to keep Displacement Bounds 'off' unless you find you need
it, as the function can drastically impact render time. To enable the
function, open the Render Options Editor, and set the 'Displace Bounds'
to a value appropriate for your displacement.
For details, see the 'Displace Bounds' help button in the
'Render->Render Options Editor' from the main menu.
AUTHOR
Greg Ercolano
mailto:[email protected]
COPYRIGHT
(C) Copyright 1996 Cinema Graphics, Inc. All Rights Reserved.
SUPPORT
If you encounter errors in this document, email [email protected].
Please supply the name of the file or manpage, enclose clippings of
the erroneous text, and describe the error.