|This article does not cite any references or sources. (June 2013)|
RenderMan is both a software and an application programming interface (API) for network distributed rendering of complex and potentially ray-traced three dimensional views, employing a render farm of many client computers. The clients do not require 3D graphics cards, but may benefit from them if they are available.
Rendering of ray-traced scenes and animations containing optical reflection, colored lights and colored surfaces, hair/fur, and lens distortions can take hours, days, weeks, months, or years for a single computer to process, depending on the complexity, detail, and size of the individual images. For animations, the frame-rate and total time period of the animation sequence can also greatly extend the total render time.
The render process can be accelerated by subdividing the overall individual images into, for example, 10x10 pixel patches and distributing the calculation of each patch across a large collection of other networked computers. For extremely complex images and very large server farms, individual pixels can be distributed for processing by each render client.
Businesses and universities can harness regular workday office or lab computers for intense overnight render tasks when the equipment would otherwise be idle and unneeded. Rendering can also be done continuously as a low-priority background process on the office/lab computers.
Historically, the first incarnation of RenderMan was as a Macintosh program running on Motorola 68000/68030 processors, System 6 and LocalTalk. Render farm calculations were display independent; for example, a fast Macintosh SE/30 with monochrome-only output could take part in rendering full-color images, sending the results back to a color-capable but slower Macintosh II.
Terminology in 3D industry
The name RenderMan can cause confusion because it has currently been used to refer to different things developed by Pixar:
- RenderMan Interface Specification (RISpec), Pixar's technical specification for a standard communications protocol (or interface) between 3D computer graphics programs and rendering programs
- RenderMan Shading Language
- PhotoRealistic RenderMan (PRMan), a RenderMan Interface Specification-compliant rendering software system developed by Pixar based on their own interface specification
- RenderMan, also commonly used to refer to other renderers because of their compliance with the RenderMan standard