REYES REYES REYES. Goals of REYES. REYES Design Principles

Similar documents
VU Rendering SS Unit 9: Renderman

Lecture 12: Advanced Rendering

! Pixar RenderMan / REYES. ! Software shaders. ! Pixar Photorealistic RenderMan (PRMan) ! Basically a sophisticated scanline renderer

Lecture 13: Reyes Architecture and Implementation. Kayvon Fatahalian CMU : Graphics and Imaging Architectures (Fall 2011)

Rasterization Overview

Irradiance Caching in Pixar s RenderMan

CHAPTER 1 Graphics Systems and Models 3

Today. Anti-aliasing Surface Parametrization Soft Shadows Global Illumination. Exercise 2. Path Tracing Radiosity

CS451Real-time Rendering Pipeline

Real-Time Reyes Programmable Pipelines and Research Challenges

Topics and things to know about them:

Topic 12: Texture Mapping. Motivation Sources of texture Texture coordinates Bump mapping, mip-mapping & env mapping

Topic 11: Texture Mapping 11/13/2017. Texture sources: Solid textures. Texture sources: Synthesized

Chapter 7 - Light, Materials, Appearance

Real-Time Shadows. Last Time? Textures can Alias. Schedule. Questions? Quiz 1: Tuesday October 26 th, in class (1 week from today!

Topic 11: Texture Mapping 10/21/2015. Photographs. Solid textures. Procedural

Rendering. Converting a 3D scene to a 2D image. Camera. Light. Rendering. View Plane

Computer Graphics I Lecture 11

Other Rendering Techniques CSE 872 Fall Intro You have seen Scanline converter (+z-buffer) Painter s algorithm Radiosity CSE 872 Fall

Lecture 10: Shading Languages. Kayvon Fatahalian CMU : Graphics and Imaging Architectures (Fall 2011)

Pipeline Operations. CS 4620 Lecture Steve Marschner. Cornell CS4620 Spring 2018 Lecture 11

Visible-Surface Detection Methods. Chapter? Intro. to Computer Graphics Spring 2008, Y. G. Shin

Page 1. Area-Subdivision Algorithms z-buffer Algorithm List Priority Algorithms BSP (Binary Space Partitioning Tree) Scan-line Algorithms

Pipeline Operations. CS 4620 Lecture 10

Interactive Computer Graphics A TOP-DOWN APPROACH WITH SHADER-BASED OPENGL

Comparing Reyes and OpenGL on a Stream Architecture

Announcements. Written Assignment 2 out (due March 8) Computer Graphics

Pipeline Operations. CS 4620 Lecture 14

Lets assume each object has a defined colour. Hence our illumination model is looks unrealistic.

Consider a partially transparent object that is illuminated with two lights, one visible from each side of the object. Start with a ray from the eye

Distribution Ray-Tracing. Programação 3D Simulação e Jogos

TDA362/DIT223 Computer Graphics EXAM (Same exam for both CTH- and GU students)

6.837 Introduction to Computer Graphics Quiz 2 Thursday November 20, :40-4pm One hand-written sheet of notes allowed

Graphics and Interaction Rendering pipeline & object modelling

Sung-Eui Yoon ( 윤성의 )

Last Time: Acceleration Data Structures for Ray Tracing. Schedule. Today. Shadows & Light Sources. Shadows

Graphics Hardware and Display Devices

Computing Visibility. Backface Culling for General Visibility. One More Trick with Planes. BSP Trees Ray Casting Depth Buffering Quiz

graphics pipeline computer graphics graphics pipeline 2009 fabio pellacini 1

graphics pipeline computer graphics graphics pipeline 2009 fabio pellacini 1

Lecture 1. Computer Graphics and Systems. Tuesday, January 15, 13

CS 354R: Computer Game Technology

3D Rasterization II COS 426

Ray tracing. Computer Graphics COMP 770 (236) Spring Instructor: Brandon Lloyd 3/19/07 1

COMPUTER GRAPHICS COURSE. Rendering Pipelines

Interactive Volumetric Shadows in Participating Media with Single-Scattering

Real-Time Shadows. Last Time? Schedule. Questions? Today. Why are Shadows Important?

COM337 COMPUTER GRAPHICS Other Topics

3D Polygon Rendering. Many applications use rendering of 3D polygons with direct illumination

CMSC427 Advanced shading getting global illumination by local methods. Credit: slides Prof. Zwicker

Chapter 11 Global Illumination. Part 1 Ray Tracing. Reading: Angel s Interactive Computer Graphics (6 th ed.) Sections 11.1, 11.2, 11.

Computer Graphics. Rendering. by Brian Wyvill University of Calgary. cpsc/enel P 1

OXFORD ENGINEERING COLLEGE (NAAC Accredited with B Grade) DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING LIST OF QUESTIONS

Global Rendering. Ingela Nyström 1. Effects needed for realism. The Rendering Equation. Local vs global rendering. Light-material interaction

Real-Time Reyes: Programmable Pipelines and Research Challenges. Anjul Patney University of California, Davis

EF432. Introduction to spagetti and meatballs

CS4620/5620: Lecture 14 Pipeline

Graphics for VEs. Ruth Aylett

I have a meeting with Peter Lee and Bob Cosgrove on Wednesday to discuss the future of the cluster. Computer Graphics

Models and Architectures. Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico

Level of Details in Computer Rendering

CPSC GLOBAL ILLUMINATION

Real-Time Shadows. Last Time? Today. Why are Shadows Important? Shadows as a Depth Cue. For Intuition about Scene Lighting

Lighting. To do. Course Outline. This Lecture. Continue to work on ray programming assignment Start thinking about final project

TSBK03 Screen-Space Ambient Occlusion

Homework #2. Hidden Surfaces, Projections, Shading and Texture, Ray Tracing, and Parametric Curves

Review. Stephen J. Guy

3D graphics, raster and colors CS312 Fall 2010

Rendering and Radiosity. Introduction to Design Media Lecture 4 John Lee

The Traditional Graphics Pipeline

Deferred Rendering Due: Wednesday November 15 at 10pm

Computer Graphics. Lecture 02 Graphics Pipeline. Edirlei Soares de Lima.

CS354 Computer Graphics Ray Tracing. Qixing Huang Januray 24th 2017

CS230 : Computer Graphics Lecture 4. Tamar Shinar Computer Science & Engineering UC Riverside

Wednesday, 26 January 2005, 14:OO - 17:OO h.

GUERRILLA DEVELOP CONFERENCE JULY 07 BRIGHTON

03 RENDERING PART TWO

DEFERRED RENDERING STEFAN MÜLLER ARISONA, ETH ZURICH SMA/

Shading Languages. Seminar Computer Graphics. Markus Kummerer

Animation & Rendering

Hidden surface removal. Computer Graphics

Visibility. Tom Funkhouser COS 526, Fall Slides mostly by Frédo Durand

CS130 : Computer Graphics Lecture 2: Graphics Pipeline. Tamar Shinar Computer Science & Engineering UC Riverside

RenderAnts: Interactive REYES Rendering on GPUs

COMP30019 Graphics and Interaction Rendering pipeline & object modelling

Introduction to Computer Graphics with WebGL

Lecture outline. COMP30019 Graphics and Interaction Rendering pipeline & object modelling. Introduction to modelling

Computer Graphics. Bing-Yu Chen National Taiwan University The University of Tokyo

0. Introduction: What is Computer Graphics? 1. Basics of scan conversion (line drawing) 2. Representing 2D curves

Blue colour text questions Black colour text sample answers Red colour text further explanation or references for the sample answers

Models and Architectures

CS 498 VR. Lecture 18-4/4/18. go.illinois.edu/vrlect18

CSE 167: Lecture #8: GLSL. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2012

CS 465 Program 5: Ray II

Applications of Explicit Early-Z Culling

Rendering Algorithms: Real-time indirect illumination. Spring 2010 Matthias Zwicker

Texture Mapping. Michael Kazhdan ( /467) HB Ch. 14.8,14.9 FvDFH Ch. 16.3, , 16.6

Topic 0. Introduction: What Is Computer Graphics? CSC 418/2504: Computer Graphics EF432. Today s Topics. What is Computer Graphics?

Computergrafik. Matthias Zwicker. Herbst 2010

Anti-aliasing. Images and Aliasing

Transcription:

You might be surprised to know that most frames of all Pixar s films and shorts do not use a global illumination model for rendering! Instead, they use Renders Everything You Ever Saw Developed by Pixar and still(?) used as primary architecture for Pixar s Renderman implementation, prman Example of a practical rendering system. Goals of Complex models (in an era of balls and planes!) Model diversity (fractals, graftals, particle systems) Shading Complexity Minimal Ray Tracing (Use textures instead, focus on geometry) Fast needed for animations (feature length film 87, took 1 year, 3 min/frame) Image quality (no jaggies, aliasing, Moiré patterns) Build for flexibility Design Principles Use natural coordinates Texturing in object space Visibility in image space Exploit hardware capabilities (parallelism) Common representation for geometry Locality Geometric - one object at a time Texture - read texture once and only when needed Eliminates ray tracing and radiosity Linearity - time f(model size) Support (unlimitedly) large models Back door to allow use alternatives to render some Efficient access for texture maps uses a basic Z-buffer Z-buffer algorithm In addition to pixel values, array of depths at each pixel is maintained Image space but object based algorithm Only intensity of closest object is maintained. 1

Major Components Z-buffer Reliance on texture mapping Jitter supersampling Micropolygons Reliance on Texture Mapping All means are taken to avoid ray tracing/radiosity Texture maps used for Environment mapping Reflections Bump/displacement mappings normal, coordinate modifications Shadows depth information from light source Especially efficient when considering rendering of multiple frames. - Texturing Texture mapping efficiencies Prefiltering of texture maps Have texture resolution match that of patch resolution. Requires lots of work up front, which eliminates the need to do it at runtime. - Texturing Prefiltered textures Textures stored as pyramid of images at various resolutions Resolutions between levels of pyramid are done via interpolation MIPMaps / FlashPix (Kodak) Mipmaps Texture Mapping 2

- Jittered Super-sampling Same idea as in distributed ray tracing Each pixel is subdivided into 16 subpixels Exact location of each subpixel sample determined by jittering. Z-buffer is kept at subpixel resolution Pixel value determined by averaging of subpixels comprising it. - Micropolygons Shading values are calculated on a single geometric entity, the micropolygon Flat shaded quadrilaterals, half of a pixel on each side Why half of a pixel? Each micropolygon is represented by a single color. - Micropolygons The Algorithm Dicing - Geometric primitives and patches must be converted to micropolygons Dice along boundaries in natural coordinate system of primitive Done in eye space although it uses an estimate of size on screen Primitives may need to be converted to patches before dicing into patches to allow for other rendering one geometric primitive at a time in screen space in object coordinates in screen coordinates - Reading in Object Object computes its bounds in screen space Can be culled if not on screen Is split into patches, if necessary Diced, if on screen Shading Each micropolygon (stored in a grid) is shaded and textured. Note that shading is done before visibility testing -> extra work Object-based algorithm, i.e.., done for whole object without regard for other objects Enables use of vector machines/vertex shaders(?) Avoids reloading textures Controls subdivision coherency No clipping No need to deal with perspective issues Can use displacement maps 3

Visibility/Sampling Jitter sampling performed Visibility stored in z- buffer. Compositing is done, if required, at this step Picture Generation Construct pixel values from subsamples Additional filtering as required. Rendered at 1024x614 6.8 million micropolygons Example Quick and effective rendering using classical CG techniques No ray tracing No radiosity Designed for efficiency Renderman is a rendering interface standard Does not define how rendering is to be performed. prman and BMRT are both Renderman Compliant Renders: prman uses (Not clear what the latest prman uses) BMRT supports Ray Tracing and Radiosity What Renderman does define: C-based API for describing a scene Associate file format (RIB) Shader language for procedural lighting, shading, modeling Complexity and generality is a result of the shader language. 4

Lighting Constructs in RSL Illuminance (point, axis, angle) Computes all light arriving at a point within a given cone (axis and angle define the cone) Could be from light sources or other objects Implementation is up to the renderer thus Could be determined using radiosity Could be determined using ray tracing Could be determined by indexing into a texture map. When writing a Renderman shader Illuminance can be used regardless of the method of computation method. Separation of shading from a given rendering technique. Rendering Questions Summary Rendering Equation Ray Tracing Radiosity Two-Pass Global Illumination Method Photon Mapping + Renderman Efficient global illumination is still a hot research topic. 5