Reyes rendering

The REYES architecture is an image synthesis algorithm, which is used in the 3D computer graphics to calculate photorealistic images. It was developed in the mid 1980s by the Lucasfilm Computer Graphics Research Group, which is now known as Pixar.

For the first time REYES was for the movie Star Trek II: The Wrath of Khan used to calculate images of the Genesis effect sequence. Pixar's RenderMan PhotoRealistic (short PRMan ) is an implementation of the REYES algorithm. After the original publication describing the algorithm, the REYES imaging system: " ... An architecture for rapid, high quality synthesizing complex images. " REYES has been proposed as a collection of algorithms and data processing methods. The terms algorithm and architecture, however, be used in this article as synonyms and are ( in this case) interchangeable.

REYES is the backronym for Renders Everything You Ever Saw ( loosely translated: Calculates everything you've ever seen ), the name is also an allusion to the city Point Reyes, California, near which Lucasfilm is established and an allusion to the procedures associated with optical, imaging systems (REYES is spoken like the English word rays, which rays of light or in optics, referred to as singular ray, the line of sight ).

The architecture was designed with a number of conditions:

  • Geometric complexity / diversity: In order to create visually complex and rich images, the user of an image synthesis system must have the freedom to model a large number of complex geometrical structures or to be generated by procedural models such as fractals or particle systems.
  • Complex shader: Much of the visual complexity of a scene is generated by the way in which light interacts with the surface of solid bodies. Generally, this is achieved by textures in computer graphics. Textures can be colored pixels tables that describe the surface displacements ( displacement ), surface transparency or surface reflectivity. REYES allows the user to include procedural shaders, whereby the surface structure and optical interaction ( the objects in a scene ) is achieved by the use of a computer program that implements a procedural algorithms, rather than a single table ( such as a texture) look up. A large part of this algorithm aims to minimize the time that it takes for the main processor to request data from data stores texture.
  • Minimum raytracing: Designed As REYES, the computing power and storage capacity of computer systems was less powerful. This meant that the raytracing a photorealistic scene per frame could take dozens to hundreds of hours. Algorithms such as REYES who do not use raytracing in general, therefore run much faster and still have an almost photo-realistic result.
  • Speed: The calculation of a two -hour film at 24 frames per second is possible with an average computation time of three minutes per frame within a year.
  • Image Quality: artifacts in the image caused by the image synthesis algorithm used, are unacceptable.
  • Flexibility: The architecture should be flexible enough to allow the integration of new techniques without a complete re-implementation of the algorithm is possible.

REYES efficiently meets several tasks for effects that are necessary for the calculation in feature film quality: smooth, curved surfaces, surface texturing, motion blur and depth of field.

REYES calculated curved surfaces, such as those described by parametric patches (parametric patches) are described, in that it shares the sub-areas in micro polygons; These are small squares, each of which is smaller than the size of a pixel. Although many micro- polygons are needed to carry out the approximation of a curved surface accurately, they can be processed with simple parallelizable operations. A REYES renderer tessliert primitive higher order when necessary and shall notify any primitives just so fine that it looks accurate in the final image.

Then a shader assigns each micro- polygon color and transparency. Most REYES renderer that allow the user to add any lighting and texturing functions themselves, written in a shader language, which is created specifically for the needs of the processing of data from the image synthesis. The processing of the micro- polygons is done so that the calculation of the data can be vectorized.

Geshadete micropolygons are imaged onto the image plane to generate the output image. REYES uses an innovative algorithm for the visibility problem, english called hider, which performs the necessary integration of motion and depth of field without more or geometry shader calls to need than the calculation of a sharp image would need. The hider collects all the colors of micro polygons in a pixel over time, and the lens position by a Monte Carlo algorithm is called stochastic sampling.

The basic REYES graphics pipeline based on the following steps:

In this design, the renderer must provide the complete picture memory in main memory, since the final picture so long can not be issued until all primitives have been processed. For storage optimization, a further step is called bucketing inserted before Dice - step. The output image is this divided into a grid of rectangles, called Bucket (English for buckets ), each typically 16 × 16 pixels in size. The objects are then divided roughly along the boundaries of the buckets and then assigned to the respective bucket according to their location. Each bucket runs individually for themselves the Dice and the remaining steps of the graphics pipeline, and data from the previous bucket that are no longer needed to be discarded before the next is calculated. In this way, only the image memory for the bucket and memory for the scene description for all higher-order geometric primitives being processed must be provided. This leads to a considerable reduction in the memory usage for an average scene, compared to the unmodified REYES algorithm.

REYES renderer

The following renderers use the REYES algorithm to the one way or another, or at least allow the user to use it as the default:

  • 3Delight
  • Aqsis
  • JrMan
  • RenderMan Pro Server & RenderMan for Maya
  • 3d pixel renderer
  • Pixie
  • RenderDotC
  • Mantra
  • Poser FireFly
680173
de