Next: Remote Display, Previous: Geomview.m, Up: Mathematica
In addition to the WriteOOGL
and Geomview
commands
described above, the package OOGL.m also defines the command
WriteRI
b which writes a 3D graphics object to a RenderMan RIB
file: WriteRIB[
file,
graphics]
writes graphics
to file file. RenderMan is a commercial rendering system available
from Pixar, Inc., which can produce extremely high quality images.
In[1] := <<OOGL.m In[2] := <<Graphics/Polyhedra.m In[3] := Graphics3D[Cube[]] Out[3] := -Graphics3D- In[4] := WriteRIB["cube.rib", %3] Out[4] := -Graphics3D-
This generates the file math.rib. This is a ready-to-render RIB
file of the given geometry, using a default camera position, lighting,
and the “plastic” shader. In a shell window, type render
cube.ri
b to generate the image file mma.tiff. Of course, you
need to have RenderMan installed for this to work. A shortcut to render
from inside Mathematica is WriteRIB["!render", foo]
.
WriteRI
b works by first converting the Mathematica graphics
object to OOGL format using WriteOOGL
and then calls an external
program oogl2rib to convert OOGL to RIB format. The
oogl2rib program takes several options which you can specify in a
string as an optional third argument to WriteRI
b. The default
option string is " -n mma.tiff "
, which indicates that the RIB
file should generate a rendered TIFF file named mma.tiff. A
particularly useful option is -g
, which tells oogl2rib to
convert only the geometry into a RIB fragment. You can insert that
fragment into a full RIB file of your own making with camera positions
and shaders of your choice, to harness the full power of RenderMan.
The full usage of oogl2rib is:
oogl2rib [-n name] [-B r,g,b] [-w width] [-h height] [-fgb] [infile] [outfile]
By default it reads from stdin and writes to stdout. Either infile or outfile may be -, which means use stdin/stdout. The options are:
-n
name-B
r,
g,
b
-w
width -h
height-f
-g
-b