26.01.2015 Views

The RenderMan Interface - Paul Bourke

The RenderMan Interface - Paul Bourke

The RenderMan Interface - Paul Bourke

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Using RIB File structuring conventions<br />

<strong>The</strong>se conventions are designed to facilitate communication between modeling/animation<br />

systems and network rendering management systems. In a distributed environment<br />

many decisions relating to the final appearance of rendered frames may need to be deferred<br />

until the selection of a particular renderer can be made. A render management<br />

system should provide the ability to tailor the scene to the resources and capabilities of<br />

the available rendering and output systems. Unfortunately, a modeling/animation system<br />

cannot, in general, assume that any particular render management services are available.<br />

<strong>The</strong> following strategies should thus be adopted with the goal of making a RIB file reasonably<br />

self-contained and renderer-independent:<br />

• Any nonstandard shaders, optional <strong>RenderMan</strong> features (motion blur, CSG, level of<br />

detail) or textures should be flagged as special resource requirements.<br />

• Renderer-specific options or attributes should be specified according to the special<br />

comment conventions described below.<br />

• Display-dependent <strong>RenderMan</strong> options should not be included except to indicate to<br />

Render Managers that such options are mandatory.<br />

D.1.2<br />

RIB File structure conventions<br />

Following is a structured list of components for a conforming RIB file that diagrams the<br />

“proper” use of RIB. Some of the components are optional and will depend greatly on the<br />

resource requirements of a given scene.<br />

Scope<br />

Indentation indicates the scope of the following command.<br />

Preamble and global variable declarations (RIB requests: version, declare)<br />

Static options and default attributes (image and display options, camera options)<br />

Static camera transformations (camera location and orientation)<br />

Frame block (if more than one frame)<br />

Frame-specific variable declarations<br />

Variable options and default attributes<br />

Variable camera transforms<br />

World block<br />

(scene description)<br />

User Entity (enclosed within AttributeBegin/AttributeEnd)<br />

User Entity (enclosed within AttributeBegin/AttributeEnd)<br />

User Entity<br />

more frame blocks<br />

This structure results from the vigorous application of the following Scoping Conventions:<br />

186

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!