Presentation is loading. Please wait.

Presentation is loading. Please wait.

Computer graphics & visualization REYES Render Everything Your Eyes Ever Saw.

Similar presentations


Presentation on theme: "Computer graphics & visualization REYES Render Everything Your Eyes Ever Saw."— Presentation transcript:

1 computer graphics & visualization REYES Render Everything Your Eyes Ever Saw

2 computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Motivation

3 computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Motivation

4 computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group History Developed by Lucasfilm Graphics group (later ILM) in the 80s Early implementation used for “Young Sherlock Holmes”, “The Adventures of Andre and Wally B.”, “Luxor Jr.”

5 computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group More Historic Images

6 computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group REYES …an architecture optimized for fast high-quality rendering of complex animated scenes Fast being able to compute a feature-length film in approximately a year High-Quality virtually indistinguishable from live action motion picture photography Complex visually rich as real scenes

7 computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Assumptions Model complexity scenes with hundreds of thousands of geometric primitives Model diversity support a large variety of geometric primitives, especially data amplification primitives such as procedural models, fractals and particle systems Shading complexity programmable shaders

8 computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Assumptions cont. Minimal ray tracing Many non-local lighting effects can be approximated with texture maps. Few objects in natural scenes would seem to require ray tracing. Speed 3 minutes per frame Image Quality Avoid aliasing and faceting artifacts, such as jagged edges, Moire patterns in textures, temporal strobing, and highlight aliasing

9 computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Assumptions cont. Flexibility Many new image rendering techniques will undoubtedly be discovered in the coming years. The architecture should be flexible enough to incorporate many of these few techniques.

10 computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Design Principles Natural coordinates Vectorization Common representation Locality – Geometric – Texture Linearity Large models Backdoor Texture maps MODELRead modelBoundOn screen?Diceable?DiceShadeSampleVisibilityFilterPICTURESplitCullTexturesBackdoor

11 computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Design Principles Natural coordinates Each calculation should be done in a coordinate system that is natural for that calculation. Examples: texturing is most naturally done in the coordinate system of the local surface geometry (e.g., uv space for patches), visible surface calculations are most naturally done in pixel coordinates (screen space).

12 computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Design Principles Vectorization Each calculation should be done in a coordinate system The architecture should be able to exploit vectorization, parallelism and pipelining. Calculations that are similar should be done together. Example: shading calculations are usually similar at all points on a surface, an entire surface should be shaded at the same time.

13 computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Design Principles Common representation Most of the algorithm should work with a single type of basic geometric object. All geometric primitives are turned into micropolygons, which are flat-shaded subpixel-sized quadrilaterals. All of the shading and visibility calculations are performed exclusively on micropolygons.

14 computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Design Principles Linearity The rendering time should grow linearly with the size of the model. Large models There should be no limit to the number of geometric primitives in a model.

15 computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Design Principles Locality Geometric locality Calculations for a geometric primitive should be performed without reference to other geometric primitives. Procedural models should be computed only once and should not be kept in their expanded form any longer than necessary Texture locality Only the textures currently needed should be in memory

16 computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group The REYES Algorithm Initialize the z buffer. For each geometric primitive in the model, Read the primitive from the model file If the primitive can be bounded, Bound the primitive in eye space. If the primitive is completely outside of the hither-you z range, cull it. If the primitive spans the epsilon plane and can be split, Mark the primitive undieceable. Else Convert the bounds to screen space. If the bounds are completely outside the viewing frustum, cull the primitive. If the primitive can be diced, Dice the primitive into a grid of micropolygons. Compute normals and tangent vectors for the micropolygons in the grid. Shade the micropolygons in the grid. Break the grid into micropolygons. For each micropolygon, Bound the micropolygon in eye space. If the micropolygon is outside the hither-yon range, cull it. Convert the micropolygon to screen space. Bound the micropolygon in screen space. For each sample point inside the screen space bound, If the sample point is inside the micropolygon, Calculate the z of the micropolygon at the sample point by interpolation. If the z at the sample point is less than the z in the buffer, Replace the sample in the buffer with this sample. Else Split the primitive into other geometric primitives. Put the new primitives at the head of the unread portion of the model file. Filter the visible sample hits to produce pixels. Output the pixels. MODELRead modelBoundOn screen?Diceable?DiceShadeSampleVisibilityFilterPICTURESplitCullTexturesBackdoor

17 computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Splitting / Dicing

18 computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Texture Mapping

19 computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Sampling

20 computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Clipping


Download ppt "Computer graphics & visualization REYES Render Everything Your Eyes Ever Saw."

Similar presentations


Ads by Google