RIB protocol implementation status:

o : implemented(or work)
x : not implemented(protocol is ignored or not defined in lucille)
n : implemented with limitation(details in note)

It is Based on The RenderMan Interface Specification Version 3.2 and lucille version 0.1.1


Protocol name in RIB binding Protocol name in ANSI C binding status

Graphics State

- RiBegin o
Note: only RI_NULL is valid for name.

- RiEnd o
 

- RiGetContext x
 

- RiContext x
 

FrameBegin RiFrameBegin x
Note: only 1 frame per file.

FrameEnd RiFrameEnd x
 

WorldBegin RiWorldBegin o
 

WorldEnd RiWorldEnd o
 

Graphics State | Options | Camera


Format RiFormat n
Note: pixelaspectratio is ignored.

FrameAspectRatio RiFrameAspectRatio x
 

ScreenWindow RiScreenWindow x
 

ScreenWindow RiScreenWindow x
 

CropWindow RiCropWindow x
 

Projection RiProjection o
note: only "perspective" for name. only can parse "fov" parameter in parameterlist

Clipping RiClipping x
 

ClippingPlane RiClippingPlane x
 

DepthOfField RiDepthOfField n
note: currently in testing...

Shutter RiShutter x
 

Graphics State | Options | Display

PixelVariance RiPixelVariance x
 

PixelSamples RiPixelSamples o
 

PixelFilter RiPixelFilter x
 

Exposure RiExposure o
note: only work for low dynamic range image format display driver(e.g. TIFF).

Imager RiImager x
 

Quantize RiQuantize x
 

Display RiDisplay o
note: "file"(same as "hdr"), "framebuffer", "hdr" or "tiff" for type. Default is "framebuffer" for Windows, "hdr" for others. mode is "rgb" only. lucille only has "format" parameter for parameterlist. You can output floating point TIFF image as below.
Display "out.tiff" "tiff" "rgb" "format" ["float"]

Graphics State | Options | Additional options

Hider RiHider x
 

ColorSamples RiColorSamples x
 

RelativeDetail RiRelativeDetail x
 

Graphics State | Options | Implementation-specific options

Option RiOption o

note: lucille specific options

Option "raytrace" "finalgather_rays" [ N ]
Set the number of sampling rays for final gather to N.

Option "raytrace" "arealight_rays" [ N ]
Set the number of sampling rays for area light to N.

Option "raytrace" "max_ray_depth" [ N ]
Limit the number of reflection/refraction bound up to N.

Option "lighting" "direct_lighting" ["yes|no"]
Enable/Disable direct lighting.

Option "lighting" "indirect_lighting" ["yes|no"]
Enable/Disable indirect lighting.

Option "lighting" "caustics_lighting" ["yes|no"]
Enable/Disable caustics lighting.

Option "photonmap" "nphotons" [ N ]
Emit N photons.

Option "photonmap" "wattage" [ N N N ]
Provide photon power(each RGB component) in wattage.

Option "photonmap" "max_gather_radius" [ N ]
Maximun gather radius in density estimation.

Option "photonmap" "max_gather_photons" [ N ]
Maximun number of gather photons in density estimation.

Option "photonmap" "precompute_irradiance" [ "yes|no" ]
Precompute irradiance for faster density estimation.

Option "prt" "compute_prt" [ "yes|no" ]
Do transport simulation for Precomputed Radiance Transfer.

Option "prt" "model" [ "model.obj" ]
Specify the .obj model for simulation.

Option "prt" "samplinglevel" [ N ]
Set sampling accuracy. greater N requres significant memory. 3 or 4 is best.

Option "prt" "interreflection" [ "yes|no" ]
Do interreflection simulation

Option "prt" "glossy" [ "yes|no" ]
Do glossy transfer simulation("no" means diffuse transfer simulation)


Graphics State | Attributes

AttributeBegin RiAttributeBegin o
 

Graphics State | Attributes | Color and opacity

Color RiColor o
 

Opacity RiOpacity x
 

Graphics State | Attributes | Texture coordinates

TextureCoordinates RiTextureCoordinates x
note: this protocol will not be implemented.

Graphics State | Attributes | Light sources

LightSource RiLightSource x
 

AreaLightSource RiAreaLightSource o
note: we use an area light specified by AreaLightSource as photon emitter.

Illuminate RiIlluminate x
 

Graphics State | Attributes | Surface shading

Surface RiSurface x
note: currently, lucille use hard coded shading pipeline.

Graphics State | Attributes | Displacement shading

Displacement RiDisplacement x
 

Graphics State | Attributes | Volume shading

Atmosphere RiAtmosphere x
 

Interior RiInterior x
 

Exterior RiExterior x
 

Graphics State | Attributes | Shading interpolation

ShadingRate RiShadingRate x
 

ShadingInterpolation RiShadingInterpolation x
note: I think this is meaningless for raytrace renderer.

Graphics State | Attributes | Matte objects

Matte RiMatte x
 

Graphics State | Attributes | Bound

Bound RiBound x
 

Graphics State | Attributes | Detail

Detail RiDetail x
 

DetailRange RiDetailRange x
 

GeometricApproximation RiGeometricApproximation x
 

Graphics State | Attributes | Orientation and sliders

Orientation RiOrientation o
note: "rh" or "lh" for orientation.

ReverseOrientation RiReverseOrientation x
 

Sides RiSides o
 

Graphics State | Transformations

Identity RiIdentity o
 

Transformation RiTransformation o
 

ConcatTransformation RiConcatTransformation o
 

Perspective RiPerspective o
 

Translate RiTranslate o
 

Rotate RiRotate o
 

Scale RiScale o
 

Skew RiSkew x
 

Graphics State | Transformations | Named coordiante systems

CoordianteSystem RiCoordinateSystem x
 

CoordSysTransform RiCoordSysTransform x
 

- RiTransformPoints x
 

Graphics State | Transformations | Transformation stack


TransformBegin RiTransformBegin o
 

TransformEnd RiTransformEnd o
 

Graphics State | Implementation-specific Attributes

Attribute RiAttribute o
note: lucille specific attributes.

Attribute "reflection" "diffuse" [ N N N ]
Set the diffuse reflectance(each RGB) of surface( the range of value N is [0, 1] )

Attribute "reflection" "specular" [ N N N ]
Set the specular reflectance(each RGB) of surface( the range of value N is [0, 1] )

Attribute "reflection" "transmittance" [ N N N ]
Set the transmit reflectance(each RGB) of surface( the range of value N is [0, 1] )


Geometric Primitives

lucille supports only Triangle Polygons.


Geometric Primitives | Polygons

Polygon RiPolygon n
note: If nvertices is 4 or more, polygon is converted to triangles in simple conversion manner.

GeneralPolygon RiGeneralPolygon x
 

PointsPolygons RiPointsPolygons n
note: The values in nvertices[] must be 3.

PointsGeneralPolygon RiPointsGeneralPolygons n
note: The values in nloops[] must be 1 and the values in nvertices[] must be 3.

Geometric Primitives | Patches
Geometric Primitives | Subduvusion Surfaces
Geometric Primitives | Quadrics
Geometric Primitives | Point and Curve Primitive
Geometric Primitives | Blobby Implicit Surfaces
Geometric Primitives | Procedual Primitives
Geometric Primitives | Implementation-specific Geometric Primitives
Geometric Primitives | Solids and Spacial Set Operations

Those pritimitives will not be implemented.


Geometric Primitives | Retained Geometry

ObjectBegin RiObjectBegin x
 

ObjectEnd RiObjectEnd x
 

ObjectInstance RiObjectInstance x
 

Motion

MotionBegin RiMotionBegin x
 

MotionEnd RiMotionEnd x
 

External Resources | Texture Map Utilities

MakeTexture RiMakeTexture x
 

MakeLatLongEnvironment RiMakeLatLongEnvirionment x
 

MakeCubeFaceEnvironment RiMakeCubeFaceEnvironment x
 

MakeShadow RiMakeShadow x
 

External Resources | Errors

ErrorHandler RiErrorHandler x
 

External Resources | Archive Files

- RiArchiveRecord x
 

ReadArchive RiReadArchive x
 

The RenderMan Shading Language

not supported yet.



<< Go back to top
lucille: global illumination renderer
(C) 2003 Syoyo FUJITA