Status – Week 283

Download Report

Transcript Status – Week 283

Status – Week 283
Victor Moya
3D Graphics Pipeline
Akeley & Hanrahan course.
 Fixed vs Programmable.
 OpenGL Machine

3D Graphics Pipeline
3D Graphics Pipeline
Application: Simulation, Input event handlers,
modify data structures, database traversal,
primitive generation, utility functions.
 Command: command buffering, command
interpretation, unpack and perform format
conversion, mantain graphics state.
 Geometry: evaluation of polynomials for
curved surfaces, transform and projection,
clipping, culling and primitive assembly.

Geometry

Vertex operations:

(1) Transform coordinates and normal








Model => World.
World => Eye.
(2) Normalize the length of the normal.
(3) Compute vertex lightning.
(4) Transform texture coordinates.
(5) Transform coordinates to clip coordinates
(projection).
(8) Divide coordinate by w.
(9) Apply affine viewport transform (x, y, z).
Geometry

Primitive operations:
(6) Primitive assembly
 (7) Clipping:
 (10) Backface cull: eliminate back-facing
triangles.


Primitive generation: new pipeline stage
(ATI TruForm).
Rasterization
Setup (per-triangle).
 Sampling (triangle = {fragments}.
 Interpolation (interpolate colors and
coordinates).

Rasterization

Converts primitives to fragments.


Primitive: point, line, polygon, …
Fragment: transient data structure
short x, y;
long depth;
short r, g, b, a;
Fragment selection.
 Parameter Assignment (color, depth ...).

Texture
Texture transformation and projection.
 Texture address calculation.
 Texture filtering.

Fragment
Texture combiners and fog.
 Owner, scrissor, depth, alpha and stencil
tests.
 Blending or compositing.
 Dithering and logical operations.

Display
Gamma correction.
 Analog to digital conversion.

Programmable Pipeline
Vertex Program
Vertex Program
Fragment Program
Fragment Program
Some real examples
ATI R300.
 3DLabs P10.
 Matrox Parhelia.

ATI R300. Specs
0.15 micron technology
 110+ million transistors.
 8 pixel rendering pipelines, 1 texture unit per
pipeline, 16 textures per pass.
 4 programmable vect4 vertex shader pipelines.
 256-bit DDR memory bus.
 Up to 256 MB of memory on board, clocket at over
300 MHz (19,2 GB/s).
 AGP8X.
 Full DirectX 9 Pixel and Vertex Shader support.

ATI R300. Specs.
ATI R300. GPU.
ATI R300. Memory Crossbar.
ATI R300. Vertex Shader.
ATI R300. Pixel Shader.
ATI R300. Pixel Shader.
3D Labs P10. Specs.









0.15-micron manufacturing process (same process as the
GeForce4)
76M transistors
Fabbed at TSMC (NVIDIA's chips are made here as well)
860 ball HSBGA package (TSMC's latest packaging technology)
4 pixel rendering pipelines, can process two textures per
pipeline
256-bit DDR memory interface (up to 20GB/s of memory
bandwidth w/ 312.5MHz DDR)
up to 256MB of memory on-board
AGP 4X support
Full DX8 pixel and vertex shader support
3DLabs P10. Evolution.
3DLabs P10. Pipeline.
3DLabs P10. Pipeline.
3DLabs. Command.
3DLabs. Vertex Units.
3DLabs P10. Raster Pipe.
3DLabs P10. Texture Pipe.
3DLabs P10. Pixel Pipe.
3DLabs P10. Virtual Memory.
Matrox Parhelia. Specs.
0.15-micron GPU manufactured at UMC
 80 Million transistors
 4 pixel rendering pipelines, can process four textures
per pipeline per clock
 4 programmable vect4 vertex shaders
 256-bit DDR memory bus (up to 20GB/s of memory
bandwidth w/ 312.5MHz DDR)
 up to 256MB of memory on board
 AGP 4/8X support
 Full DX8 pixel and vertex shader support

Matrox Parhelia. Pipeline.