RenderMan Interface Specification

Source: Wikipedia, the free encyclopedia.

The RenderMan Interface Specification,

API developed by Pixar Animation Studios to describe three-dimensional scenes and turn them into digital photorealistic images. It includes the RenderMan Shading Language
.

As Pixar's technical specification for a standard

interface) between modeling programs and rendering programs capable of producing photorealistic-quality images, RISpec is a similar concept to PostScript but for describing 3D scenes rather than 2D page layouts. Thus, modelling programs which understand the RenderMan Interface protocol can send data to rendering software which implements the RenderMan Interface, without caring what rendering algorithms
are utilized by the latter.

The interface was first published in 1988 (version 3.0) and was designed to be sufficiently

future proof
to encompass advances in technology for a significant number of years. The current revision is 3.2.1, released in November 2005.

What set the RISpec apart from other standards of the time was that it allowed using high-level geometric primitives, like quadrics or bicubic patches, to specify geometric primitives implicitly, rather than relying on a modeling application to generate polygons approximating these shapes explicitly beforehand. Another novelty introduced by the RISpec at the time was the specification of a shading language.

The

SIMD
manner, but does not insist on it. Another feature that sets renderers based on the RISpec apart from many other renderers is the ability to output arbitrary variables as an image: surface normals, separate lighting passes and pretty much anything else can be output from the renderer in a single pass.

RenderMan has much in common with OpenGL (developed by the now-defunct Silicon Graphics), despite the two APIs being targeted to different sets of users (OpenGL to real-time hardware-assisted rendering and RenderMan to photorealistic off-line rendering). Both APIs take the form of a stack-based state machine with (conceptually) immediate rendering of geometric primitives. It is possible to implement either API in terms of the other.

Required capabilities

For a renderer to call itself "RenderMan-compliant", it must implement at least the following capabilities:

Optional advanced capabilities

Additionally, the renderer may implement any of the following optional capabilities:

Further reading

  • OCLC 42621055
    .
  • .
  • .
  • .
  • .
  • .

See also

References

  1. ^ "RenderMan - Developers Corner - RI Spec". Archived from the original on 2009-05-16. Retrieved 2009-06-12.

External links