Siren
A Simple-Image Renderer
(c) 2000 J. Scott Iverson
Siren is a scanline implementation of the RenderMan standard for describing
3D scenes. It renders simple scenes well. It supports most
of the basic RenderMan functionality and provides many of the optional
capabilities described in the RenderMan standard. Siren runs under
MS-DOS.
Features
Siren supports the following required RenderMan features:
-
Hierarchical graphics state
-
Orthographic and perspective projections
-
Depth-based hidden surface removal
-
Pixel filtering and anti-aliasing
-
Gamma correction and dithering
-
File output containing RGB, A and Z data
-
All geometric primitives described in the specification
-
The fourteen standard light source, surface, volume, and displacement shaders
required by the specification.
Siren supports the following optional capabilities described in the RenderMan
specification:
-
Programmable Shading
-
Solid Modeling
-
Level of Detail
-
Motion Blur (including correctly interpolated rotation)
-
Depth of Field
-
(limited) Deformations
-
Displacements
-
Texture Mapping
-
Environment Mapping
-
Shadow Depth Mapping
-
Ray-Traced Shadows
Siren also:
-
renders simple scenes in real time for motion preview
-
can record a series of frames as a FLIC animation file
-
provides extensive support for using motion blocks to define key-frame
animation. Almost any RIB command can be placed within a motion block
(with no restriction on the number of times) and any floating-point parameters
will be correctly interpolated. Siren will blur moving transformations
and time-varying shaders.
-
provides a Shading Language interface to RIB via a new type of shader -
procedure shaders - which can issue any RIB call.
Siren makes it easy to animate almost any aspect of a scene quickly, including
lighting, shading and object placement. It invites experimentation.
Veteran RenderMan users are encouraged to read the documentation and
to work through the brief introductory tutorial, since Siren functions
somewhat differently than other renderers.
Siren is still very much a work in progress, even though it's existed
in various forms for about 10 years. I originally wrote it for my
own exploration of 3D graphics. Hopefully it's now reached the stage
where others will find it useful. Suggestions for improvements and
changes are welcome. If you do something interesting
with Siren, let me know.
Siren software and documentation are Copyright 2000 J. Scott Iverson.
All rights reserved.
The RenderMan (R) Interface Procedures and RIB Protocol are Copyright
1988, 1989, Pixar. All rights reserved.
RenderMan (R) is a registered trademark of Pixar.
Last Modified March 31, 2000
Send questions, comments, and bug reports to: jiverson782@earthlink.net