UNC High-Performance Rendering Hardware

Size: px
Start display at page:

Download "UNC High-Performance Rendering Hardware"

Transcription

1 UNC High-Performance Rendering Hardware Anselmo Lastra October 2001 Slide 1 UNC Graphics Hardware WarpEngine??? image-based PixelFlow 1997 scalable shading HLL Pixel-Planes Planes 1, 2, Pixel-Planes Planes proc. per pixel 512 x 512 shadows, etc. Pixel-Planes Planes fully parallel prog.. shading Anselmo Lastra October

2 Why Is CG Difficult? Floating Point Requirements Approximately 400 MFlops for 1M triangles For example: Infinite Reality: Eight geometry engines at 480 MFlops each for 10 million triangles per second peak Memory Bandwidth Approximately 250 million frame buffer accesses to rasterize 1 million 100- pixel triangles Slide 3 Rasterization Memory size increase orders of magnitude Speeds have not kept up! Number of pins remained relatively constant. Distributed frame buffers were proposed to address the problem [Fuchs77][Parke80]. Slide 4 2

3 Pixel-Planes Planes Henry Fuchs Idea: build processing into the frame buffer, a processor per pixel. UNC designs are called enhanced memories, not SIMD processors Enabler was linear expression tree Slide 5 Linear Expressions _ + Ax + By + C Slide 6 3

4 Linear Expressions Ax + By + C + _ Slide 7 Linear Expressions + _ Ax + By + C Slide 8 4

5 Depth and Color Interpolation z = F(x, y) and color = F(x, y) for each of red, green, and blue Slide 9 Pixel-Planes Planes 1-4 processors Pixel-Planes Planes 2-4 by 64 Pixel-Planes Planes 3-64 by 64 Pixel-Planes Planes 1, 2, 3 Slide 10 5

6 Pixel-Planes Planes 4 (1986) Full-size (512 by 512 pixel) prototype 2048 enhanced memory ICs One Geometry Processor 72 bits memory per pixel Slide 11 Pxpl4 Block Diagram EMCs Host Geometry Scanout 512 x 512 frame buffer 128 processors/chip 2048 EMC chips 32 boards Clock speed: ~ 10MHz Slide 12 6

7 Performance 35K triangles per second Spheres as a primitive CSG Shadows Video Slide 13 References The first reference describes the algorithms, while the second describes the machine as-built. Fuchs, H., Goldfeather,, J., Hultquist,, J., Spach,, S., Austin, J., Brooks, F., Eyles, J., and Poulton, J., "Fast" Spheres, Shadows, Textures, Transparencies, and Image Enhancements in Pixel-Planes Planes," SIGGRAPH '85 Conference Proceedings, Vol. 19, No. 3, July, 1985, pp John Eyles, John Austin, Henry Fuchs, Trey Greer and John Poulton, Pixel-Planes Planes 4: A Summary, Eurographics Workshop on Graphics Hardware, , Web pages at pxpl Slide 14 7

8 Lessons Learned from Pxpl4 Programmability useful! More pixel memory required Tris small, many processors unused Must extend parallelism to geometry processing fully parallel pipeline Slide 15 Graphics Pipeline User-Specified Coordinates (floating pt.) (3.7, 0.9) Screen Coordinates (integer) (273, 407) Pixels with correct color (3.5, 0.4) (4.1, 0.5) (240, 390) (298, 396) Geometry Processing Rasterization Slide 16 8

9 Sorting Classification WarpEngine Pixel-Planes 5 PixelFlow Geometry Processors sort first sort middle Pixel-level Processors sort last video video video Slide 17 Sort Middle Straightforward and well known. Network limits scalability. Somewhat scalable in display size. sort middle Slide 18 9

10 Sort Middle (Pixel-Planes Planes 5) G R Application G G R R Frame Buffer G R Perform geometry processing in parallel by primitive. Sort each transformed primitive to determine where on screen it belongs. Route transformed primitive to renderer responsible for appropriate screen regions. Slide 19 Screen-Space Space Subdivision Pixel processors (128 x 128) remapped to screen tiles Problem: Polygons must be sorted! Slide 20 10

11 Virtual Frame Buffer Must sort all primitives before scan conversion Pipelined two frames, one in geometry stage, another in scan conversion Penalty: memory & increase in latency Slide 21 Load Balancing on pxpl5 Greedy algorithm Master collects info on # of prims / region Starts token, which flows GP to GP Rasterization order Size of box indicates # of primitives Last GP sends token back to master When does this fail? Slide 22 11

12 Implementation Graphics Graphics Processor Processor (2-40) Host 160 MW/s ring network Frame Buffer Sun Workstation Renderer Renderer 128 Renderer 128 x Renderer x x x (1-20) multiple frame buffers: hires, dual NTSC, color sequen. Slide 23 Technology 1-bit ALU Quadratic evaluator Ax 2 +By 2 +Cx+Dy+Exy+F+CxCx+DyDy+Exy +F 208 bits/pixel 4K backing store/pixel 40 MHz clock speeds Slide 24 12

13 Shading Finally enough bits to do cool shading! Language was assembler with macros (sqrt,(sqrt, norm, etc). Word length variable. Video Image courtesy Division from Pixel-Planes Planes 6 Problem: too hard to write code! Slide 25 Performance Triangles small, but the size doesn t matter as long as overlap factor does not increase much! Record Performance on GPC head Dataset. 2M Triangles/Sec Sierra Nevada Elevation Dataset Model courtesy GPC committee (now SPEC) Dataset courtesy Herman Towles and Sun Microsystems Slide 26 13

14 References Fuchs, H., Poulton, J., Eyles, J., Greer, T., Goldfeather, J., Ellsworth, D., Molnar, S., Turk, G., and Israel, L., "A" Heterogeneous Multiprocessor Graphics System Using Processor-Enhanced Memories," Computer Graphics (Proc. of SIGGRAPH '89), Vol. 23, No. 3, pp John Rhoades, Greg Turk, Andrew Bell, Andrei State, Ulrich Neumann and Amitabh Varshney,, "Real-time procedural textures", Proceedings of the 1992 Symposium on Interactive 3D Graphics (Cambridge, Massachusetts, March 29--April , 1992). In Computer Graphics special issue. ACM SIGGRAPH, March pp Slide 27 Limits to Scalability Crossbar bandwidth must increase with number of primitives Geometry Processor Rasterizer Geometry Processor Rasterizer Geometry Processor Rasterizer Geometry Processor Rasterizer Crossbar Slide 28 14

15 Image Composition Renderer Renderer Each node renders subset of primitives. Depth determines which sample proceeds. Z Z Image Compositors MHz, bi-directional (> 100 Gb/s) board to board A. Lastra 2/11/98 Slide 29 Sort Last (Image Composition) Scalable in # of primitives Requires high-bandwidth network (next slide) Anti-aliasing expensive Transparency difficult. Not scalable in display size. sort last video Slide 30 15

16 Composition Bandwidth Need enough bandwidth for: display size frame rate subsamples For at 72 Hz, with 5 sample antialising, need 10 Gigabits/sec of bandwidth Slide 31 PixelFlow Goals Investigate image composition Add high-level shading language Turned into programmability everywhere in pipeline Immediate mode from a parallel machine Video Slide 32 16

17 PixelFlow Node PA MB Memory Memory Interface PA-8000 Geometry Network Interface Texture Memory MB Pixel Processors (128 x 64) Optional Video Adapter Video I/O Card (opt.) Geometry Composition Network Slide 33 Pins Shading Functions Crown, label, scuffs, dirt, Phong Alley Ball Wood, reflection map Phong Light Shadow map Image by Yulan Wang, UNC. Slide 34 17

18 Bump Maps Images by Brad Ritter, Hewlett-Packard. Slide 35 Enabling Programmable Shading Shading Language pfman Similar to RenderMan with extensions mainly for speed on PixelFlow Extensions to OpenGL to allow access from geometry code. Videos Slide 36 18

19 #define BRICK_WIDTH 0.25 #define BRICK_HEIGHT 0.08 #define MORTAR 0.01 surface brick( output unsigned varying fixed<8,8> gl_rc rc_co[3], unsigned texture varying fixed<16,16> gl_material material_texcoord[2]) { float ss, tt; fixed<8,0> row; tt = gl_material material_texcoord[1] % (BRICK_HEIGHT + MORTAR); row = gl_material material_texcoord[1] / (BRICK_HEIGHT + MORTAR); gl_rc rc_co[0] = 0.5; // both brick & mortar same red if(tt > brick_height) { // Is it a row of brick or mortar? } else {... gl_rc rc_co[1] = 0.5; gl_rc rc_co[2] = 0.5; // within mortar row // within brick row Deferred Shading Rasterization Nodes Geometry Processor Geometry Processor Shading Node Geometry Processor Rasterizer Rasterizer Rasterizer Shading of visible pixels z z User selects the number of rasterization and shading nodes to suit the workload. Appearance Parameters (parameters necessary to shade the image, such as normals,, etc.) Color to Frame Buffer (another PixelFlow node) Slide 38 19

20 Advantages and Disadvantages You only shade pixels that are visible Increased coherence but... Must save and transmit many parameters high bandwidth demand Video Slide 39 Transparency A problem with image composition We implemented Screen door when antialising Mammen s algorithm with transparent polygons on shading nodes Still, sort-last is not good when many polygons are transparent Slide 40 20

21 Immediate vs. Retained Mode (direct vs. indirect rendering) Immediate-mode mode limited by host to graphics bandwidth. Display lists stored on nodes Our intent was to attach PixelFlow to a parallel machine Geometry Network Parallel Machine Host Workstation PixelFlow node 240 MB/s peak PxFl node PxFl node PxFl node Composition Network Slide 41 Performance PixelFlow was built with industrial partners, first Division, then HP Demonstrated running at about 43 million triangles per second on 36 nodes Video Slide 42 21

22 References Steve Molnar, John Eyles, and John Poulton, "PixelFlow: High-Speed Rendering Using Image Composition," SIGGRAPH '92. John Eyles, Steven Molnar, John Poulton, Trey Greer, Anselmo Lastra, Nick England and Lee Westover, "PixelFlow: The Realization", Siggraph/Eurographics Workshop on Graphics Hardware, Los Angeles, CA, August 3-4, , Marc Olano and Anselmo Lastra, "A Shading Language on Graphics Hardware: The PixelFlow Shading System", Proceedings of SIGGRAPH 98, pp , 168, Orlando, Florida, July 19-24, Slide 43 Graphics Performance 10 9 One-pixel polygons (~10M 30Hz) Peak Performance ( 's/sec) UNC Pxpl4 HP CRX 10 4 Flat shading SGI Iris SGI VGX SGI HP VRX RE1 HP TVRX SGI GT Slope ~2.4x/year (Moore's Law ~ 1.7x/year) UNC Pxpl5 SGI SkyWriter Stellar GS1000 Gouraud shading E&S F Year SGI RE2 Antialiasing UNC/HP PixelFlow Division Pxpl6 SGI IR Megatek E&S Freedom Textures Accel/VSIS Division VPX SGI R-Monster E&S Nvidia TNT 3DLabs Harmony SGI Glint Cobalt Voodoo PC Graphics Graph courtesy of Professor John Poulton GeForce 3 &Radeon Slide 44 22

23 Why Use Polygons At All? Pros Convenient for modeling (by hand) Good representation when large on screen Useful for man made objects Cons Huge number to model natural scenes Fairly complex to render Slide 45 WarpEngine Hardware architecture for rendering from depth images Voicu Popescu Also John Eyles, Josh Steinhurst Kamov Video Slide 46 23

24 Rendering Algorithm WarpEngine algorithm Interpolate between reference image samples Warp (transform) them forward to image space Z-composite into sub-pixel (2x2) warp buffer No interpolation across skins Slide 47 Forward vs. Backward Map Conventional scan conversion For each pixel, compute color Basically backward map WarpEngine Warp sample forward Slide 48 24

25 2-bit offset More precise sample location 2-pixel wide filter kernel Similar to sparse buffer Offsets Make it Work Blue pixel, Green warp buffer, Black - offset Slide 49 Inexpensive Antialiasing 2 x 2 Offset No Offset Zoomed Slide 50 25

26 Why Forward Map? Low setup cost! No edge-expression expression computation Exploits coherence IBR tile (16x16 image) tends to need same interpolation factor Can use efficient SIMD warper Slide 51 Architecture from host Tile Cache Tile Cache Network Interface Network Interface Warp Array Warp Array R egion Accumulator Region Accumulator R econstruction Buffer Reconstruction Buffer Frame Buffer Slide 52 26

27 WarpArray LEE Coefficients ALU Micro- Instructions Local Memory Address Nearest neighbor connectivity Linear Expression Evaluator 16 PE ALU's 16 PEs 128 bytes PE Main Memory IO Port 16 Input/Output Buffer 16 Sample Buffer Sample Port In/Out/Warp pipelined Similar to PixelFlow design 16 Panels of 16 PEs each Slide 53 Region Accumulator Sample Processor From Warp Array Multiplexer FIFO z-buffer RGB/Offset/Present (Buffer 0) RGB/Offset/Present (Buffer 1) 128 bits Pixel interleaved 128 x 128 Soft z? Reconstruction pipelined with next region rendering Words Shift Register to Reconstruction Buffer Slide 54 27

28 Sort First for Parallelism How to distribute work across chips? Sort by screen space regions 128x128 pixel region Sort First [Mueller] refers to sorting primitives as soon as possible Tile coherence lowers overlap factor Slide 55 Sort First At first glance, like sort middle. Advantage: only primitives that move to other screen regions need to be transferred May scale better in display size Difficulties in memory access and editing sort first video Slide 56 28

29 Expected Chip Specs ASIC 12x16 mm 0.18 micron 300 MHz 4-node VGA 32-node HDTV Each chip Simulation on video 100M Samples/sec 4.8G Bytes/sec bandwidth Slide 57 References Voicu Popescu, John Eyles, Anselmo Lastra, Josh Steinhurst,, Nick England and Lars Nyland, WarpEngine: An Architecture for the Post- Polygonal Age,, Proceedings of SIGGRAPH 2000, New Orleans, July 2000, Voicu Popescu, Anselmo Lastra, John Eyles, Sort-First Parallelism for Image-Based Rendering, Proceedings of Eurographics Workshop on Parallel Graphics and Visualization, Girona,, Spain, September Slide 58 29

30 Future Programmable shading (finally happening!) More memory Floating point Regular architecture? Take advantage of small primitives Support for image-based primitives? Big displays with lots of pixels! Slide 59 Credits Pixel-Planes 4: Greg Abram, John Austin, Fred Brooks, Vern Chi, John Eyles, Henry Fuchs, Eric Grant, Trey Greer, Jack Goldfeather, Scott Hennes, Jeff Hultquist, Mark Monger, John Poulton, Susan Spach, John Thomas Pixel-Planes 5: Mike Bajura, Andrew Bell, Brad Bennett, Jeff Butterworth, Vern Chi, Jon Cohen, Grant Cooper, Claire Durand, David Ellsworth, Niall Emmart, John Eyles, Henry Fuchs, Howard Good, Edward "Chip" Hill, Sonya Holder, Linda Houseman, Heather Kerns, Victoria Interrante, Roman Kuchkuda, Subodh Kumar, Anselmo Lastra, Jonathan Leech, Jeff Mauldin, Steven Molnar, Carl Mueller, Ulrich Neumann, Marc Olano, Sherry Palmer, Mark Parris, John Poulton, John Rhoades, Eddie Saxe, Andrei State, Brice Tebbs, Steve Tell, John Thomas, Russ Tuck, Greg Turk, Sharon Walters, Laura Weaver PixelFlow (UNC): Daniel Aliaga, Vern Chi, Jon Cohen, Grant Cooper, Lynne Duncan, Nick England, John Eyles, Henry Fuchs, Arthur Gregory, Paul Hilts, Vincent Illiano, Kurtis Keller, Paul Keller, Lawrence Kesteloot, Anselmo Lastra, Jon Leech, David McAllister, Jon McAllister, Peter McMurry, Steven Molnar, Bryon Nordquist, Michael North, Marc Olano, John Poulton, Greg Pruett, Voicu Popescu, Jiang Qian, Jason Smith, Steve Tell, John Thomas, Greg Welch, Yulan Wang, Rob Wheeler PixelFlow (Division and Hewlett-Packard): Byron Alcorn, Greg Allen, Peter Arnold, Phil Atkin, John Austin, Randy Bailey, Tony Barbour, Tony Bennett, Dave Bradley, John Cook, John Dykstal, Trey Greer, Charles Grimsdale, Bill Hale, Larry Harrold, Fred Heaton, Justin Heinecke, Kenny Hoff, Maureen Hoffert, Rich Holloway, Mary Jo Janowicz, Paul Keller, Kevin Koehler, Roman Kuchkuda, Paul Layne, Ray McConnell, Mike Meyers, Chris Pratico, Brad Ritter, John Rhoades, Durward Rogers, Gary Schaffer, Doug Schiff, Rex Seader, Robert Seward, Mel Snyder, Herman Towles, Jim Weaver, Lee Westover, Robert Yockey WarpEngine: Gary Bishop, Nick England, John Eyles, Anselmo Lastra, Lars Nyland, Voicu Popescu, Josh Steinhurst Funding: DARPA and NSF. Additional support from Division, Intel, Hewlett Packard. Slide 60 30

What Next? Kevin Walsh CS 3410, Spring 2010 Computer Science Cornell University. * slides thanks to Kavita Bala & many others

What Next? Kevin Walsh CS 3410, Spring 2010 Computer Science Cornell University. * slides thanks to Kavita Bala & many others What Next? Kevin Walsh CS 3410, Spring 2010 Computer Science Cornell University * slides thanks to Kavita Bala & many others Final Project Demo Sign-Up: Will be posted outside my office after lecture today.

More information

Computer Graphics. Hardware Pipeline. Visual Imaging in the Electronic Age Prof. Donald P. Greenberg October 23, 2014 Lecture 16

Computer Graphics. Hardware Pipeline. Visual Imaging in the Electronic Age Prof. Donald P. Greenberg October 23, 2014 Lecture 16 Computer Graphics Hardware Pipeline Visual Imaging in the Electronic Age Prof. Donald P. Greenberg October 23, 2014 Lecture 16 Moore s Law Chip density doubles every 18 months. Processing Power (P) in

More information

Prof. Hakim Weatherspoon CS 3410, Spring 2015 Computer Science Cornell University

Prof. Hakim Weatherspoon CS 3410, Spring 2015 Computer Science Cornell University Prof. Hakim Weatherspoon CS 3410, Spring 2015 Computer Science Cornell University Project3 Cache Race Games night Monday, May 4 th, 5pm Come, eat, drink, have fun and be merry! Location: B17 Upson Hall

More information

Computer Graphics Software & Hardware. NBAY 6120 Lecture 6 Donald P. Greenberg March 16, 2016

Computer Graphics Software & Hardware. NBAY 6120 Lecture 6 Donald P. Greenberg March 16, 2016 Computer Graphics Software & Hardware NBAY 6120 Lecture 6 Donald P. Greenberg March 16, 2016 Recommended Readings for Lecture 6 Mike Seymour. The State of Rendering, Part 1, fxguide.com, July 15, 2013.

More information

Anselmo Lastra, Steve Molnar, Marc Olano, Yulan Wang. Marc Olano, Yulan Wang University of North Carolina at Chapel Hill

Anselmo Lastra, Steve Molnar, Marc Olano, Yulan Wang. Marc Olano, Yulan Wang University of North Carolina at Chapel Hill Real-Time Programmable Shading Real-Time Programmable Shading (http://www.cs.unc.edu/~olano/papers/rtshading/) (http://www.cs.unc.edu/~olano/papers/rtshading/) Anselmo Lastra, Steve Molnar, Anselmo Lastra,

More information

CS 316: Multicore/GPUs

CS 316: Multicore/GPUs CS 316: Multicore/GPUs Kavita Bala Fall 2007 Computer Science Cornell University Announcements Core Wars will be out in the next couple of days Aim at having fun! Number of points allocated to it is small

More information

Computer Graphics Software & Hardware. NBAY 6120 Lecture 6 Donald P. Greenberg March 16, 2017

Computer Graphics Software & Hardware. NBAY 6120 Lecture 6 Donald P. Greenberg March 16, 2017 Computer Graphics Software & Hardware NBAY 6120 Lecture 6 Donald P. Greenberg March 16, 2017 Recommended Readings for Lecture 6 Mike Seymour. The State of Rendering, Part 1, fxguide.com, July 15, 2013.

More information

The Pixel-Planes Family of Graphics Architectures

The Pixel-Planes Family of Graphics Architectures The Pixel-Planes Family of Graphics Architectures Pixel-Planes Technology Processor Enhanced Memory processor and associated memory on same chip SIMD operation Each pixel has an associated processor Perform

More information

CS 316: Multicore/GPUs-II

CS 316: Multicore/GPUs-II CS 316: Multicore/GPUs-II Kavita Bala Fall 2007 Computer Science Cornell University Announcements PA 4 graded Corewars due next Tuesday: Nov 27 Corewars party next Friday: Nov 30 Prelim 2: Thursday Nov

More information

PixelFlow. Marc Olano SGI

PixelFlow. Marc Olano SGI PixelFlow Marc Olano SGI Shading Compute base color and light interaction Special-purpose shading language Shade Trees [Cook 84] Pixel Stream Editor [Perlin 85] RenderMan [Hanrahan and Lawson 90, Upstill

More information

Final projects. Rasterization. The Graphics Pipeline. Illumination (Shading) (Lighting) Viewing Transformation. Rest of semester. This week, with TAs

Final projects. Rasterization. The Graphics Pipeline. Illumination (Shading) (Lighting) Viewing Transformation. Rest of semester. This week, with TAs Rasterization MIT EECS 6.837 Frédo Durand and Barb Cutler MIT EECS 6.837, Cutler and Durand Final projects Rest of semester Weekly meetings with TAs Office hours on appointment This week, with TAs Refine

More information

Rasterization. MIT EECS Frédo Durand and Barb Cutler. MIT EECS 6.837, Cutler and Durand 1

Rasterization. MIT EECS Frédo Durand and Barb Cutler. MIT EECS 6.837, Cutler and Durand 1 Rasterization MIT EECS 6.837 Frédo Durand and Barb Cutler MIT EECS 6.837, Cutler and Durand 1 Final projects Rest of semester Weekly meetings with TAs Office hours on appointment This week, with TAs Refine

More information

Standard Graphics Pipeline

Standard Graphics Pipeline Graphics Architecture Software implementations of rendering are slow. OpenGL on Sparc workstations. Performance can be improved using sophisticated algorithms and faster machines. Real-time large-scale

More information

Real-Time Graphics Architecture

Real-Time Graphics Architecture Real-Time Graphics Architecture Lecture 4: Parallelism and Communication Kurt Akeley Pat Hanrahan http://graphics.stanford.edu/cs448-07-spring/ Topics 1. Frame buffers 2. Types of parallelism 3. Communication

More information

Parallel Rendering. Johns Hopkins Department of Computer Science Course : Rendering Techniques, Professor: Jonathan Cohen

Parallel Rendering. Johns Hopkins Department of Computer Science Course : Rendering Techniques, Professor: Jonathan Cohen Parallel Rendering Molnar, Cox, Ellsworth, and Fuchs. A Sorting Classification of Parallel Rendering. IEEE Computer Graphics and Applications. July, 1994. Why Parallelism Applications need: High frame

More information

Real-Time Programmable Shading

Real-Time Programmable Shading Real-Time Programmable Shading Anselmo Lastra, Steven Molnar, Marc Olano, Yulan Wang Department of Computer Science University of North Carolina Chapel Hill, NC 27599-3175 Abstract One of the main techniques

More information

Procedural Primitives in a High Performance, Hardware Accelerated, Z-Buffer Renderer

Procedural Primitives in a High Performance, Hardware Accelerated, Z-Buffer Renderer Procedural Primitives in a High Performance, Hardware Accelerated, Z-Buffer Renderer Abstract In the past, very few types of primitives have been directly supported by graphics accelerators, in spite of

More information

What does the Future Hold? Hakim Weatherspoon CS 3410, Spring 2013 Computer Science Cornell University

What does the Future Hold? Hakim Weatherspoon CS 3410, Spring 2013 Computer Science Cornell University What does the Future Hold? Hakim Weatherspoon CS 3410, Spring 2013 Computer Science Cornell University Announcements How to improve your grade? Submit a course evaluation and drop lowest homework score

More information

Temporally Coherent Interactive Ray Tracing

Temporally Coherent Interactive Ray Tracing Temporally Coherent Interactive Ray Tracing William Martin Erik Reinhard Peter Shirley Steven Parker William Thompson School of Computing, University of Utah School of Electrical Engineering and Computer

More information

Last time? Rasterization. Scan Conversion (Rasterization) High-level concepts for Visibility / Display. Today

Last time? Rasterization. Scan Conversion (Rasterization) High-level concepts for Visibility / Display. Today Last time? Rasterization MIT EECS 6.837 Frédo Durand and Barb Cutler MIT EECS 6.837, Cutler and Durand Point and segment Clipping Planes as homogenous vectors (duality) In homogeneous coordinates before

More information

CS427 Multicore Architecture and Parallel Computing

CS427 Multicore Architecture and Parallel Computing CS427 Multicore Architecture and Parallel Computing Lecture 6 GPU Architecture Li Jiang 2014/10/9 1 GPU Scaling A quiet revolution and potential build-up Calculation: 936 GFLOPS vs. 102 GFLOPS Memory Bandwidth:

More information

Shading Languages. Ari Silvennoinen Apri 12, 2004

Shading Languages. Ari Silvennoinen Apri 12, 2004 Shading Languages Ari Silvennoinen Apri 12, 2004 Introduction The recent trend in graphics hardware has been to replace fixed functionality in vertex and fragment processing with programmability [1], [2],

More information

Current Trends in Computer Graphics Hardware

Current Trends in Computer Graphics Hardware Current Trends in Computer Graphics Hardware Dirk Reiners University of Louisiana Lafayette, LA Quick Introduction Assistant Professor in Computer Science at University of Louisiana, Lafayette (since 2006)

More information

Combining Z-buffer Engines for Higher-Speed Rendering

Combining Z-buffer Engines for Higher-Speed Rendering Reprinted from: Advances in Computer Graphics Hardware III (Proceedings of the 1988 Eurographics Workshop on Graphics Hardware), Eurographics Seminars, 1988, pp. 171-182. Combining Z-buffer Engines for

More information

Interactive Volume Rendering on a Multicomputer

Interactive Volume Rendering on a Multicomputer Interactive Volume Rendering on a Multicomputer Ulrich Neumann Department of Computer Science University of North Carolina Chapel Hill NC 27599 Abstract Direct volume rendering is a computationally intensive

More information

A Reconfigurable Architecture for Load-Balanced Rendering

A Reconfigurable Architecture for Load-Balanced Rendering A Reconfigurable Architecture for Load-Balanced Rendering Jiawen Chen Michael I. Gordon William Thies Matthias Zwicker Kari Pulli Frédo Durand Graphics Hardware July 31, 2005, Los Angeles, CA The Load

More information

Temporally Coherent Interactive Ray Tracing

Temporally Coherent Interactive Ray Tracing Vol. 7, No. 2: 00 00 Temporally Coherent Interactive Ray Tracing William Martin, Peter Shirley, Steven Parker, William Thompson University of Utah Erik Reinhard University of Central Florida Abstract.

More information

CSE 591/392: GPU Programming. Introduction. Klaus Mueller. Computer Science Department Stony Brook University

CSE 591/392: GPU Programming. Introduction. Klaus Mueller. Computer Science Department Stony Brook University CSE 591/392: GPU Programming Introduction Klaus Mueller Computer Science Department Stony Brook University First: A Big Word of Thanks! to the millions of computer game enthusiasts worldwide Who demand

More information

CMSC 611: Advanced. Parallel Systems

CMSC 611: Advanced. Parallel Systems CMSC 611: Advanced Computer Architecture Parallel Systems Parallel Computers Definition: A parallel computer is a collection of processing elements that cooperate and communicate to solve large problems

More information

GPU Architecture. Michael Doggett Department of Computer Science Lund university

GPU Architecture. Michael Doggett Department of Computer Science Lund university GPU Architecture Michael Doggett Department of Computer Science Lund university GPUs from my time at ATI R200 Xbox360 GPU R630 R610 R770 Let s start at the beginning... Graphics Hardware before GPUs 1970s

More information

Optimal Static 2-Dimensional Screen Subdivision for Parallel Rasterization Architectures

Optimal Static 2-Dimensional Screen Subdivision for Parallel Rasterization Architectures Optimal Static 2-Dimensional Screen Subdivision for Parallel Rasterization Architectures Donald McManus and Carl Beckmann Thayer School of Engineering, Dartmouth College, Hanover, NH 03755 Sanders, a Lockheed

More information

10. References. [Bergman + 86]

10. References. [Bergman + 86] 10. References [Bergman + 86] [Biagioni91] [Blinn82] [Blinn82b] Larry Bergman, Henry Fuchs, Eric Grant, and Susan Spach. "Image Rendering by Adaptive Refinement." Computer Graphics, 20(4):29-37, November

More information

GeForce4. John Montrym Henry Moreton

GeForce4. John Montrym Henry Moreton GeForce4 John Montrym Henry Moreton 1 Architectural Drivers Programmability Parallelism Memory bandwidth 2 Recent History: GeForce 1&2 First integrated geometry engine & 4 pixels/clk Fixed-function transform,

More information

Point based Rendering

Point based Rendering Point based Rendering CS535 Daniel Aliaga Current Standards Traditionally, graphics has worked with triangles as the rendering primitive Triangles are really just the lowest common denominator for surfaces

More information

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

CSE 167: Lecture #5: Rasterization. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2012 CSE 167: Introduction to Computer Graphics Lecture #5: Rasterization Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2012 Announcements Homework project #2 due this Friday, October

More information

Monday Morning. Graphics Hardware

Monday Morning. Graphics Hardware Monday Morning Department of Computer Engineering Graphics Hardware Ulf Assarsson Skärmen består av massa pixlar 3D-Rendering Objects are often made of triangles x,y,z- coordinate for each vertex Y X Z

More information

Pixel-Planes 4: A Summary

Pixel-Planes 4: A Summary Pixel-Planes 4: A Summary John Eyles, John Austint, Henry Fuchs, Trey Greer, John Poulton Department of Computer Science University of North Carolina Chapel Hill, NC 27514 We describe the current state

More information

Reducing Latency on PixelFlow

Reducing Latency on PixelFlow Reducing Latency on PixelFlow Anselmo A. Lastra University ofnorth Carolina Chapel Hill, N.C., USA lastra@cs.unc.edu ABSTRACT Performance, as measured by the number of primitives rendered per second, has

More information

A model to blend renderings

A model to blend renderings A model to blend renderings Vincent Boyer and Dominique Sobczyk L.I.A.S.D.-Universit Paris 8 September 15, 2006 Abstract. We propose a model to blend renderings. It consists in mixing different kind of

More information

A Shading Language on Graphics Hardware: The PixelFlow Shading System

A Shading Language on Graphics Hardware: The PixelFlow Shading System A Shading Language on Graphics Hardware: The PixelFlow Shading System Marc Olano Anselmo Lastra University of North Carolina at Chapel Hill Abstract Over the years, there have been two main branches of

More information

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

Real-Time Reyes: Programmable Pipelines and Research Challenges. Anjul Patney University of California, Davis Real-Time Reyes: Programmable Pipelines and Research Challenges Anjul Patney University of California, Davis Real-Time Reyes-Style Adaptive Surface Subdivision Anjul Patney and John D. Owens SIGGRAPH Asia

More information

Parallelizing Graphics Pipeline Execution (+ Basics of Characterizing a Rendering Workload)

Parallelizing Graphics Pipeline Execution (+ Basics of Characterizing a Rendering Workload) Lecture 2: Parallelizing Graphics Pipeline Execution (+ Basics of Characterizing a Rendering Workload) Visual Computing Systems Analyzing a 3D Graphics Workload Where is most of the work done? Memory Vertex

More information

CSE 167: Introduction to Computer Graphics Lecture #8: Textures. Jürgen P. Schulze, Ph.D. University of California, San Diego Spring Quarter 2016

CSE 167: Introduction to Computer Graphics Lecture #8: Textures. Jürgen P. Schulze, Ph.D. University of California, San Diego Spring Quarter 2016 CSE 167: Introduction to Computer Graphics Lecture #8: Textures Jürgen P. Schulze, Ph.D. University of California, San Diego Spring Quarter 2016 Announcements Project 2 due this Friday Midterm next Tuesday

More information

Comparing Reyes and OpenGL on a Stream Architecture

Comparing Reyes and OpenGL on a Stream Architecture Comparing Reyes and OpenGL on a Stream Architecture John D. Owens Brucek Khailany Brian Towles William J. Dally Computer Systems Laboratory Stanford University Motivation Frame from Quake III Arena id

More information

Real-Time Procedural Textures

Real-Time Procedural Textures Real-Time Procedural Textures John Rhoades, Greg Turk, Andrew Bell, Andrei State, Ulrich Neumann and Amitabh Varshney Department of Computer Science University of North Carolina at Chapel Hill Abstract

More information

CSE 591: GPU Programming. Introduction. Entertainment Graphics: Virtual Realism for the Masses. Computer games need to have: Klaus Mueller

CSE 591: GPU Programming. Introduction. Entertainment Graphics: Virtual Realism for the Masses. Computer games need to have: Klaus Mueller Entertainment Graphics: Virtual Realism for the Masses CSE 591: GPU Programming Introduction Computer games need to have: realistic appearance of characters and objects believable and creative shading,

More information

Spring 2009 Prof. Hyesoon Kim

Spring 2009 Prof. Hyesoon Kim Spring 2009 Prof. Hyesoon Kim Application Geometry Rasterizer CPU Each stage cane be also pipelined The slowest of the pipeline stage determines the rendering speed. Frames per second (fps) Executes on

More information

Windowing System on a 3D Pipeline. February 2005

Windowing System on a 3D Pipeline. February 2005 Windowing System on a 3D Pipeline February 2005 Agenda 1.Overview of the 3D pipeline 2.NVIDIA software overview 3.Strengths and challenges with using the 3D pipeline GeForce 6800 220M Transistors April

More information

Models of the Impact of Overlap in Bucket Rendering

Models of the Impact of Overlap in Bucket Rendering Models of the Impact of Overlap in Bucket Rendering Milton Chen, Gordon Stoll, Homan Igehy, Kekoa Proudfoot and Pat Hanrahan Computer Systems Laboratory Stanford University Abstract Bucket rendering is

More information

Programmable GPUS. Last Time? Reading for Today. Homework 4. Planar Shadows Projective Texture Shadows Shadow Maps Shadow Volumes

Programmable GPUS. Last Time? Reading for Today. Homework 4. Planar Shadows Projective Texture Shadows Shadow Maps Shadow Volumes Last Time? Programmable GPUS Planar Shadows Projective Texture Shadows Shadow Maps Shadow Volumes frame buffer depth buffer stencil buffer Stencil Buffer Homework 4 Reading for Create some geometry "Rendering

More information

CSE 167: Introduction to Computer Graphics Lecture #6: Lights. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2014

CSE 167: Introduction to Computer Graphics Lecture #6: Lights. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2014 CSE 167: Introduction to Computer Graphics Lecture #6: Lights Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2014 Announcements Project 2 due Friday, Oct. 24 th Midterm Exam

More information

Architectures. Michael Doggett Department of Computer Science Lund University 2009 Tomas Akenine-Möller and Michael Doggett 1

Architectures. Michael Doggett Department of Computer Science Lund University 2009 Tomas Akenine-Möller and Michael Doggett 1 Architectures Michael Doggett Department of Computer Science Lund University 2009 Tomas Akenine-Möller and Michael Doggett 1 Overview of today s lecture The idea is to cover some of the existing graphics

More information

Computational Strategies

Computational Strategies Computational Strategies How can the basic ingredients be combined: Image Order Ray casting (many options) Object Order (in world coordinate) splatting, texture mapping Combination (neither) Shear warp,

More information

3D Rasterization II COS 426

3D Rasterization II COS 426 3D Rasterization II COS 426 3D Rendering Pipeline (for direct illumination) 3D Primitives Modeling Transformation Lighting Viewing Transformation Projection Transformation Clipping Viewport Transformation

More information

Out-Of-Core Sort-First Parallel Rendering for Cluster-Based Tiled Displays

Out-Of-Core Sort-First Parallel Rendering for Cluster-Based Tiled Displays Out-Of-Core Sort-First Parallel Rendering for Cluster-Based Tiled Displays Wagner T. Corrêa James T. Klosowski Cláudio T. Silva Princeton/AT&T IBM OHSU/AT&T EG PGV, Germany September 10, 2002 Goals Render

More information

Image-Based Modeling and Rendering. Image-Based Modeling and Rendering. Final projects IBMR. What we have learnt so far. What IBMR is about

Image-Based Modeling and Rendering. Image-Based Modeling and Rendering. Final projects IBMR. What we have learnt so far. What IBMR is about Image-Based Modeling and Rendering Image-Based Modeling and Rendering MIT EECS 6.837 Frédo Durand and Seth Teller 1 Some slides courtesy of Leonard McMillan, Wojciech Matusik, Byong Mok Oh, Max Chen 2

More information

Cornell University CS 569: Interactive Computer Graphics. Introduction. Lecture 1. [John C. Stone, UIUC] NASA. University of Calgary

Cornell University CS 569: Interactive Computer Graphics. Introduction. Lecture 1. [John C. Stone, UIUC] NASA. University of Calgary Cornell University CS 569: Interactive Computer Graphics Introduction Lecture 1 [John C. Stone, UIUC] 2008 Steve Marschner 1 2008 Steve Marschner 2 NASA University of Calgary 2008 Steve Marschner 3 2008

More information

Parallelizing Graphics Pipeline Execution (+ Basics of Characterizing a Rendering Workload)

Parallelizing Graphics Pipeline Execution (+ Basics of Characterizing a Rendering Workload) Lecture 2: Parallelizing Graphics Pipeline Execution (+ Basics of Characterizing a Rendering Workload) Visual Computing Systems Today Finishing up from last time Brief discussion of graphics workload metrics

More information

GPU Architecture and Function. Michael Foster and Ian Frasch

GPU Architecture and Function. Michael Foster and Ian Frasch GPU Architecture and Function Michael Foster and Ian Frasch Overview What is a GPU? How is a GPU different from a CPU? The graphics pipeline History of the GPU GPU architecture Optimizations GPU performance

More information

Drawing Fast The Graphics Pipeline

Drawing Fast The Graphics Pipeline Drawing Fast The Graphics Pipeline CS559 Spring 2016 Lecture 10 February 25, 2016 1. Put a 3D primitive in the World Modeling Get triangles 2. Figure out what color it should be Do ligh/ng 3. Position

More information

CS 431/636 Advanced Rendering Techniques

CS 431/636 Advanced Rendering Techniques CS 431/636 Advanced Rendering Techniques Dr. David Breen Matheson 308 Thursday 6PM 8:50PM Presentation 7 5/23/06 Questions from Last Time? Hall Shading Model Shadows Reflections Refractions Slide Credits

More information

Graphics Hardware and Display Devices

Graphics Hardware and Display Devices Graphics Hardware and Display Devices CSE328 Lectures Graphics/Visualization Hardware Many graphics/visualization algorithms can be implemented efficiently and inexpensively in hardware Facilitates interactive

More information

CHAPTER 1 Graphics Systems and Models 3

CHAPTER 1 Graphics Systems and Models 3 ?????? 1 CHAPTER 1 Graphics Systems and Models 3 1.1 Applications of Computer Graphics 4 1.1.1 Display of Information............. 4 1.1.2 Design.................... 5 1.1.3 Simulation and Animation...........

More information

Interactive Rendering of Globally Illuminated Glossy Scenes

Interactive Rendering of Globally Illuminated Glossy Scenes Interactive Rendering of Globally Illuminated Glossy Scenes Wolfgang Stürzlinger, Rui Bastos Dept. of Computer Science, University of North Carolina at Chapel Hill {stuerzl bastos}@cs.unc.edu Abstract.

More information

Drawing Fast The Graphics Pipeline

Drawing Fast The Graphics Pipeline Drawing Fast The Graphics Pipeline CS559 Fall 2015 Lecture 9 October 1, 2015 What I was going to say last time How are the ideas we ve learned about implemented in hardware so they are fast. Important:

More information

CS452/552; EE465/505. Clipping & Scan Conversion

CS452/552; EE465/505. Clipping & Scan Conversion CS452/552; EE465/505 Clipping & Scan Conversion 3-31 15 Outline! From Geometry to Pixels: Overview Clipping (continued) Scan conversion Read: Angel, Chapter 8, 8.1-8.9 Project#1 due: this week Lab4 due:

More information

graphics pipeline computer graphics graphics pipeline 2009 fabio pellacini 1

graphics pipeline computer graphics graphics pipeline 2009 fabio pellacini 1 graphics pipeline computer graphics graphics pipeline 2009 fabio pellacini 1 graphics pipeline sequence of operations to generate an image using object-order processing primitives processed one-at-a-time

More information

Rasterization and Graphics Hardware. Not just about fancy 3D! Rendering/Rasterization. The simplest case: Points. When do we care?

Rasterization and Graphics Hardware. Not just about fancy 3D! Rendering/Rasterization. The simplest case: Points. When do we care? Where does a picture come from? Rasterization and Graphics Hardware CS559 Course Notes Not for Projection November 2007, Mike Gleicher Result: image (raster) Input 2D/3D model of the world Rendering term

More information

graphics pipeline computer graphics graphics pipeline 2009 fabio pellacini 1

graphics pipeline computer graphics graphics pipeline 2009 fabio pellacini 1 graphics pipeline computer graphics graphics pipeline 2009 fabio pellacini 1 graphics pipeline sequence of operations to generate an image using object-order processing primitives processed one-at-a-time

More information

Sung-Eui Yoon ( 윤성의 )

Sung-Eui Yoon ( 윤성의 ) CS380: Computer Graphics Ray Tracing Sung-Eui Yoon ( 윤성의 ) Course URL: http://sglab.kaist.ac.kr/~sungeui/cg/ Class Objectives Understand overall algorithm of recursive ray tracing Ray generations Intersection

More information

DT!C. University of North Carolina at Chapel Hill D _ U TR DO A / q- 94,-k -o~o. Displaying Alphanumeric E L EC T E

DT!C. University of North Carolina at Chapel Hill D _ U TR DO A / q- 94,-k -o~o. Displaying Alphanumeric E L EC T E DT!C E L EC T E Displaying Alphanumeric 30 NOV07 1990 Characters on Pixel-Planes 5 D _ U TR89-049 DO A / q- 94,-k -o~o Andrei State LAPP0.e u_,ii eoo University of North Carolina at Chapel Hill Department

More information

POLYGON RENDERING FOR INTERACTIVE VISUALIZATION ON MULTICOMPUTERS

POLYGON RENDERING FOR INTERACTIVE VISUALIZATION ON MULTICOMPUTERS POLYGON RENDERING FOR INTERACTIVE VISUALIZATION ON MULTICOMPUTERS by David Allan Ellsworth A Dissertation submitted to the faculty of The University of North Carolina at Chapel Hill in partial fulfillment

More information

CSE528 Computer Graphics: Theory, Algorithms, and Applications

CSE528 Computer Graphics: Theory, Algorithms, and Applications CSE528 Computer Graphics: Theory, Algorithms, and Applications Hong Qin State University of New York at Stony Brook (Stony Brook University) Stony Brook, New York 11794--4400 Tel: (631)632-8450; Fax: (631)632-8334

More information

Visibility and Occlusion Culling

Visibility and Occlusion Culling Visibility and Occlusion Culling CS535 Fall 2014 Daniel G. Aliaga Department of Computer Science Purdue University [some slides based on those of Benjamin Mora] Why? To avoid processing geometry that does

More information

The Traditional Graphics Pipeline

The Traditional Graphics Pipeline Last Time? The Traditional Graphics Pipeline Participating Media Measuring BRDFs 3D Digitizing & Scattering BSSRDFs Monte Carlo Simulation Dipole Approximation Today Ray Casting / Tracing Advantages? Ray

More information

Implementation of a panoramic-based walkthrough system

Implementation of a panoramic-based walkthrough system Implementation of a panoramic-based walkthrough system Abstract A key component in most virtual reality systems is the ability to perform a walkthrough of a virtual environment from different viewing positions

More information

Portland State University ECE 588/688. Graphics Processors

Portland State University ECE 588/688. Graphics Processors Portland State University ECE 588/688 Graphics Processors Copyright by Alaa Alameldeen 2018 Why Graphics Processors? Graphics programs have different characteristics from general purpose programs Highly

More information

4 Dynamic Load Balancing within a High Performance

4 Dynamic Load Balancing within a High Performance 4 Dynamic Load Balancing within a High Performance Graphics System Harald Selzer ABSTRACT Interactive 3D graphics applications require significant arithmetic processing to meet the ever-inreasing desire

More information

HiPANQ Overview of NVIDIA GPU Architecture and Introduction to CUDA/OpenCL Programming, and Parallelization of LDPC codes.

HiPANQ Overview of NVIDIA GPU Architecture and Introduction to CUDA/OpenCL Programming, and Parallelization of LDPC codes. HiPANQ Overview of NVIDIA GPU Architecture and Introduction to CUDA/OpenCL Programming, and Parallelization of LDPC codes Ian Glendinning Outline NVIDIA GPU cards CUDA & OpenCL Parallel Implementation

More information

The Sort-First Rendering Architecture for High-Performance Graphics

The Sort-First Rendering Architecture for High-Performance Graphics The Sort-First Rendering Architecture for High-Performance Graphics Carl Mueller Department of Computer Science University of North Carolina at Chapel Hill Abstract Interactive graphics applications have

More information

CSG Hidden Surface Algorithms for VLSI Hardware Systems

CSG Hidden Surface Algorithms for VLSI Hardware Systems CSG Hidden Surface Algorithms for VLSI Hardware Systems Frederik W. Jansen Faculty oflndustrial Design, Delft University of Technology The Netherlands Constructive Solid Geometry (CSG) is a solid modeling

More information

Rendering Computer Animations on a Network of Workstations

Rendering Computer Animations on a Network of Workstations Rendering Computer Animations on a Network of Workstations Timothy A. Davis Edward W. Davis Department of Computer Science North Carolina State University Abstract Rendering high-quality computer animations

More information

Chapter 1. Introduction Marc Olano

Chapter 1. Introduction Marc Olano Chapter 1. Introduction Marc Olano Course Background This is the sixth offering of a graphics hardware-based shading course at SIGGRAPH, and the field has changed and matured enormously in that time span.

More information

Pipeline Operations. CS 4620 Lecture 10

Pipeline Operations. CS 4620 Lecture 10 Pipeline Operations CS 4620 Lecture 10 2008 Steve Marschner 1 Hidden surface elimination Goal is to figure out which color to make the pixels based on what s in front of what. Hidden surface elimination

More information

Processor Architectures At A Glance: M.I.T. Raw vs. UC Davis AsAP

Processor Architectures At A Glance: M.I.T. Raw vs. UC Davis AsAP Processor Architectures At A Glance: M.I.T. Raw vs. UC Davis AsAP Presenter: Course: EEC 289Q: Reconfigurable Computing Course Instructor: Professor Soheil Ghiasi Outline Overview of M.I.T. Raw processor

More information

Mattan Erez. The University of Texas at Austin

Mattan Erez. The University of Texas at Austin EE382V: Principles in Computer Architecture Parallelism and Locality Fall 2008 Lecture 10 The Graphics Processing Unit Mattan Erez The University of Texas at Austin Outline What is a GPU? Why should we

More information

Advanced Computer Graphics CS 563: Screen Space GI Techniques: Real Time

Advanced Computer Graphics CS 563: Screen Space GI Techniques: Real Time Advanced Computer Graphics CS 563: Screen Space GI Techniques: Real Time William DiSanto Computer Science Dept. Worcester Polytechnic Institute (WPI) Overview Deferred Shading Ambient Occlusion Screen

More information

Drawing Fast The Graphics Pipeline

Drawing Fast The Graphics Pipeline Drawing Fast The Graphics Pipeline CS559 Fall 2016 Lectures 10 & 11 October 10th & 12th, 2016 1. Put a 3D primitive in the World Modeling 2. Figure out what color it should be 3. Position relative to the

More information

Spring 2011 Prof. Hyesoon Kim

Spring 2011 Prof. Hyesoon Kim Spring 2011 Prof. Hyesoon Kim Application Geometry Rasterizer CPU Each stage cane be also pipelined The slowest of the pipeline stage determines the rendering speed. Frames per second (fps) Executes on

More information

Applications of Explicit Early-Z Z Culling. Jason Mitchell ATI Research

Applications of Explicit Early-Z Z Culling. Jason Mitchell ATI Research Applications of Explicit Early-Z Z Culling Jason Mitchell ATI Research Outline Architecture Hardware depth culling Applications Volume Ray Casting Skin Shading Fluid Flow Deferred Shading Early-Z In past

More information

SILHOUETTE-OPAQUE TRANSPARENCY RENDERING

SILHOUETTE-OPAQUE TRANSPARENCY RENDERING SILHOUETTE-OPAQUE TRANSPARENCY RENDERING Osman Sen Department of Computer Science University of California, Irvine osen@ics.uci.edu Chaitanya Chemudugunta Department of Computer Science University of California,

More information

Real Time Rendering. CS 563 Advanced Topics in Computer Graphics. Songxiang Gu Jan, 31, 2005

Real Time Rendering. CS 563 Advanced Topics in Computer Graphics. Songxiang Gu Jan, 31, 2005 Real Time Rendering CS 563 Advanced Topics in Computer Graphics Songxiang Gu Jan, 31, 2005 Introduction Polygon based rendering Phong modeling Texture mapping Opengl, Directx Point based rendering VTK

More information

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

CS230 : Computer Graphics Lecture 4. Tamar Shinar Computer Science & Engineering UC Riverside CS230 : Computer Graphics Lecture 4 Tamar Shinar Computer Science & Engineering UC Riverside Shadows Shadows for each pixel do compute viewing ray if ( ray hits an object with t in [0, inf] ) then compute

More information

Texture mapping. Computer Graphics CSE 167 Lecture 9

Texture mapping. Computer Graphics CSE 167 Lecture 9 Texture mapping Computer Graphics CSE 167 Lecture 9 CSE 167: Computer Graphics Texture Mapping Overview Interpolation Wrapping Texture coordinates Anti aliasing Mipmaps Other mappings Including bump mapping

More information

Graphics Hardware. Graphics Processing Unit (GPU) is a Subsidiary hardware. With massively multi-threaded many-core. Dedicated to 2D and 3D graphics

Graphics Hardware. Graphics Processing Unit (GPU) is a Subsidiary hardware. With massively multi-threaded many-core. Dedicated to 2D and 3D graphics Why GPU? Chapter 1 Graphics Hardware Graphics Processing Unit (GPU) is a Subsidiary hardware With massively multi-threaded many-core Dedicated to 2D and 3D graphics Special purpose low functionality, high

More information

Real-Time Graphics Architecture

Real-Time Graphics Architecture Real-Time Graphics Architecture Kurt Akeley Pat Hanrahan http://www.graphics.stanford.edu/courses/cs448a-01-fall Rasterization Outline Fundamentals Examples Special topics (Depth-buffer, cracks and holes,

More information

Mattan Erez. The University of Texas at Austin

Mattan Erez. The University of Texas at Austin EE382V (17325): Principles in Computer Architecture Parallelism and Locality Fall 2007 Lecture 11 The Graphics Processing Unit Mattan Erez The University of Texas at Austin Outline What is a GPU? Why should

More information

Goal. Interactive Walkthroughs using Multiple GPUs. Boeing 777. DoubleEagle Tanker Model

Goal. Interactive Walkthroughs using Multiple GPUs. Boeing 777. DoubleEagle Tanker Model Goal Interactive Walkthroughs using Multiple GPUs Dinesh Manocha University of North Carolina- Chapel Hill http://www.cs.unc.edu/~walk SIGGRAPH COURSE #11, 2003 Interactive Walkthrough of complex 3D environments

More information

PowerVR Series5. Architecture Guide for Developers

PowerVR Series5. Architecture Guide for Developers Public Imagination Technologies PowerVR Series5 Public. This publication contains proprietary information which is subject to change without notice and is supplied 'as is' without warranty of any kind.

More information