200 likes | 399 Views
3D rendering Hw & graphics API. Objectives. Purpose of graphic rendering hardware History of 3D hardware Definition and evolution of Graphic Processing Unit APIs: OpenGL, DirectX. History. von Neumann architecture. Memory Program &Data. Central Processing Unit (CPU). Control Unit
E N D
Objectives • Purpose of graphic rendering hardware • History of 3D hardware • Definition and evolution of Graphic Processing Unit • APIs: OpenGL, DirectX
von Neumann architecture Memory Program &Data Central Processing Unit (CPU) Control Unit (CU) Arithmetic Logic Unit (ALU) Input/Output (IO)
A little bit of history • Late ’70s • Chips with 2D graphics operations • ANTIC (Alpha-Numeric Television Interface Circuit) – Atari 800, 5200
A little bit of history • Early ’80s • Jim Clark : Silicon Graphics • First 3D graphics workstation • Flat-shaded polygons
A little bit of history • Late ’80s • Gouraud-shaded, Phong-lit and z-buffered
A little bit of history • Early ’90s • Texture mapping, antialiasing • Silicon Graphics RealityEngine • Mass-marketed 3D graphics HW: PlayStation and Nintendo 64
A little bit of history • Late ’90s • August 31, 1999: First graphics processing unit (GPU) —the NVIDIA GeForce 256. • Programmability
Graphics Processing Unit “A single-chip processor with integrated transform, lighting, triangle setup/clipping, and rendering engines that is capable of processing a minimum of 10 million polygons per second.” http://www.nvidia.com/page/geforce256.html
The Evolution of GPU • GPU is a dedicated graphics rendering device for PC, workstation, game console. • Industrial requirement • Faster clock, bigger memory, support more advanced graphics API • GPU now exceeds the complexity of CPU in terms of transistor count (nVidia G8800 GTX, 680m, Intel core 2 Extreme QX6700, 582m) From Mr. Guo Zheng slides – DM2336 2007 S1
~ 1996 • nVidia TNT2, ATI’s Rage, 3dfx Voodoo3 • Capable of rasterizing, DirectX 6 • Do not do vertex transform • Limited operation for texture. From Mr. Guo Zheng slides – DM2336 2007 S1 voodoo3
~ 1999 • nVidia GeForce 256, ATI Radeon 7500 • Transformation and lighting supported • Multiple textures allowed • AGP bus instead of PCI • Configurable, not programmable Geforce 256 From Mr. Guo Zheng slides – DM2336 2007 S1
~ 2001 • nVidia GeForce3, Geforce4, ATI Radeon 8500 • Vertex programmable • Volume texturing, multi-sampling • Lack of pixel programmability GeForce3 From Mr. Guo Zheng slides – DM2336 2007 S1
~ 2002 • nVidia Geforce FX, ATI Radeon 9700 • Both vertex and pixel programmability. • Direct3D 9 supported. From Mr. Guo Zheng slides – DM2336 2007 S1
Recently • GeForce 8800 Ultra • Released 2th May • Memory 768MB • Shader clock 1500MHz, Memory clock 2160MHz, Core clock 612MHz • Direct3D 10, shader model 4.0 supported From Mr. Guo Zheng slides – DM2336 2007 S1
And now what? • 2000’s • Global Evaluation • Ray tracing: visibility and integration • True shadows, path tracing, photon mapping • General-purpose computation using graphics hardware
3D Graphics API • API: Application Programming Interface Images are trademark of their respective owners
OpenGL and Direct3D Silicon Graphics ~ 1991 Microsoft (RenderMorphics) ~ 1995 Images are trademark of their respective owners