CompGraphics - 3D Computer 3D Computer Graphics in a...

Info iconThis preview shows page 1. Sign up to view the full content.

View Full Document Right Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: 3D Computer 3D Computer Graphics in a Nutshell Guillaume Caumon, January 2002 Introduction Introduction Computer graphics is concerned with all the aspects of “drawing” on computers Performance is critical 3D Computer Graphics deals with the generation images from 3D objects. The Rendering Pipeline The Rendering Pipeline Pipeline = Linear succession of operations Rendering speed = speed of the slowest step (bottleneck) Application Geometry Rasterization Application Application Software­based processing / modifications meshing decimation 3D Model collision detection animation … Rendering primitives Geometry Geometry Transforms Lightning Projection Clipping Geometry : Transforms Geometry : Transforms Model Transform Scaling, etc. Model Coordinates World Coordinates View Transform Viewing Coordinates Geometry: lighting and shading Geometry: lighting and shading Simulate interaction of light with matter: ­ Emission ­ Absorption ­ Reflection Geometry: A Lightning Equation Geometry: A Lightning Equation L α β N I R( λ ) Material color Ex: (1, 0, 0) Specular Coeficient Ex: (1, 1, 1) Ambient light coefficient Ex: (.1, .1, .1) ν : r, g or b Shininess (s > 1) Geometry: Shading Geometry: Shading Flat shading: each triangle has the same color Gouraud shading: colors are interpolated between vertices Phong shading: normal are interpolated and colors computed for each pixel Geometry: Projection Geometry: Projection Viewing Coordinates normalization Perspective/ parallel Virtual Device Coordinates Geometry: Clipping Geometry: Clipping Geometry: Device Coordinates Geometry: Device Coordinates My Window Unit Cube Rasterization Rasterization Per­pixel operations: ray­tracing Scan conversion of lines: naive version Bresenham algorithm Scan conversion of polygons Aliasing / antialiasing Texturing Screen = matrix Graphics Hardware Graphics Hardware Quickly evolving Main principle: use of buffers Color buffer : 1 byte per pixel (256) + lookup tables 2 bytes per pixel (65 536) “high color” 3+1 bytes per pixel bpp (16 millions) “true color” + alpha channel Depth buffer : 16 to 32 bit per pixel Graphics Hardware (II) Graphics Hardware (II) Double buffering : • show the front buffer while rasterizing the back buffer • swap buffers in synchronization with the screen refresh to get the new frame Stencil buffer : allows high­level operations (antialiasing, filtering, etc.) See OpenGL programmer’s reference for more details Conclusion Conclusion 3D Graphics require intensive computations Yet, 3D Graphics are time­critical Bottlenecks Display lists Only low­level graphics have been described. Scene Graphs Selection and tools } See OpenInventor, VTK, etc. References and further reading References and further reading Foley, van Dam, Feiner, Hughes, Computer Graphics Principle and practice, 2nd edition. Addisson Wesley, 1997 Moller, Haines, Real­Time Rendering. AK Peters, 1999 ( http://www.realtimerendering.com) The Graphic Gems series, Academic Press. Neider, Davis, Woo, OpenGL Programming Guide. Addisson Wesley, 1993 Wernecke, The Inventor Mentor, release 2, Addisson Wesley,1994 Schroeder, Martin, Lorensen, The Visualization Toolkit, 2nd edition. Prenctice Hall, 1998 Proceedings of Siggraph, Visualization, Eurographics, etc. ...
View Full Document

Ask a homework question - tutors are online