Status – Week 283 Victor Moya. 3D Graphics Pipeline Akeley & Hanrahan course. Akeley & Hanrahan...

37
Status – Week Status – Week 283 283 Victor Moya Victor Moya
  • date post

    21-Dec-2015
  • Category

    Documents

  • view

    215
  • download

    1

Transcript of Status – Week 283 Victor Moya. 3D Graphics Pipeline Akeley & Hanrahan course. Akeley & Hanrahan...

Page 1: Status – Week 283 Victor Moya. 3D Graphics Pipeline Akeley & Hanrahan course. Akeley & Hanrahan course. Fixed vs Programmable. Fixed vs Programmable.

Status – Week Status – Week 283283

Victor MoyaVictor Moya

Page 2: Status – Week 283 Victor Moya. 3D Graphics Pipeline Akeley & Hanrahan course. Akeley & Hanrahan course. Fixed vs Programmable. Fixed vs Programmable.

3D Graphics Pipeline3D Graphics Pipeline

Akeley & Hanrahan course.Akeley & Hanrahan course. Fixed vs Programmable.Fixed vs Programmable. OpenGL MachineOpenGL Machine

Page 3: Status – Week 283 Victor Moya. 3D Graphics Pipeline Akeley & Hanrahan course. Akeley & Hanrahan course. Fixed vs Programmable. Fixed vs Programmable.

3D Graphics Pipeline3D Graphics Pipeline

Page 4: Status – Week 283 Victor Moya. 3D Graphics Pipeline Akeley & Hanrahan course. Akeley & Hanrahan course. Fixed vs Programmable. Fixed vs Programmable.

3D Graphics Pipeline3D Graphics Pipeline

Application: Simulation, Input event Application: Simulation, Input event handlers, modify data structures, database handlers, modify data structures, database traversal, primitive generation, utility traversal, primitive generation, utility functions.functions.

Command: command buffering, command Command: command buffering, command interpretation, unpack and perform format interpretation, unpack and perform format conversion, mantain graphics state.conversion, mantain graphics state.

Geometry: evaluation of polynomials for Geometry: evaluation of polynomials for curved surfaces, transform and projection, curved surfaces, transform and projection, clipping, culling and primitive assembly.clipping, culling and primitive assembly.

Page 5: Status – Week 283 Victor Moya. 3D Graphics Pipeline Akeley & Hanrahan course. Akeley & Hanrahan course. Fixed vs Programmable. Fixed vs Programmable.

GeometryGeometry

Vertex operations:Vertex operations: (1) Transform coordinates and normal (1) Transform coordinates and normal

Model => World.Model => World. World => Eye.World => Eye.

(2) Normalize the length of the normal.(2) Normalize the length of the normal. (3) Compute vertex lightning.(3) Compute vertex lightning. (4) Transform texture coordinates.(4) Transform texture coordinates. (5) Transform coordinates to clip coordinates (5) Transform coordinates to clip coordinates

(projection).(projection). (8) Divide coordinate by w.(8) Divide coordinate by w. (9) Apply affine viewport transform (x, y, z).(9) Apply affine viewport transform (x, y, z).

Page 6: Status – Week 283 Victor Moya. 3D Graphics Pipeline Akeley & Hanrahan course. Akeley & Hanrahan course. Fixed vs Programmable. Fixed vs Programmable.

GeometryGeometry

Primitive operations:Primitive operations: (6) Primitive assembly (6) Primitive assembly (7) Clipping:(7) Clipping: (10) Backface cull: eliminate back-(10) Backface cull: eliminate back-

facing triangles. facing triangles. Primitive generation: new pipeline Primitive generation: new pipeline

stage (ATI TruForm).stage (ATI TruForm).

Page 7: Status – Week 283 Victor Moya. 3D Graphics Pipeline Akeley & Hanrahan course. Akeley & Hanrahan course. Fixed vs Programmable. Fixed vs Programmable.

RasterizationRasterization

Setup (per-triangle).Setup (per-triangle). Sampling (triangle = {fragments}.Sampling (triangle = {fragments}. Interpolation (interpolate colors Interpolation (interpolate colors

and coordinates).and coordinates).

Page 8: Status – Week 283 Victor Moya. 3D Graphics Pipeline Akeley & Hanrahan course. Akeley & Hanrahan course. Fixed vs Programmable. Fixed vs Programmable.

RasterizationRasterization

Converts primitives to fragments.Converts primitives to fragments. Primitive: point, line, polygon, …Primitive: point, line, polygon, … Fragment: transient data structure Fragment: transient data structure

short x, y;short x, y;

long depth;long depth;

short r, g, b, a;short r, g, b, a;

Fragment selection.Fragment selection. Parameter Assignment (color, depth ...).Parameter Assignment (color, depth ...).

Page 9: Status – Week 283 Victor Moya. 3D Graphics Pipeline Akeley & Hanrahan course. Akeley & Hanrahan course. Fixed vs Programmable. Fixed vs Programmable.

TextureTexture

Texture transformation and Texture transformation and projection.projection.

Texture address calculation.Texture address calculation. Texture filtering.Texture filtering.

Page 10: Status – Week 283 Victor Moya. 3D Graphics Pipeline Akeley & Hanrahan course. Akeley & Hanrahan course. Fixed vs Programmable. Fixed vs Programmable.

FragmentFragment

Texture combiners and fog.Texture combiners and fog. Owner, scrissor, depth, alpha and Owner, scrissor, depth, alpha and

stencil tests.stencil tests. Blending or compositing.Blending or compositing. Dithering and logical operations.Dithering and logical operations.

Page 11: Status – Week 283 Victor Moya. 3D Graphics Pipeline Akeley & Hanrahan course. Akeley & Hanrahan course. Fixed vs Programmable. Fixed vs Programmable.

DisplayDisplay

Gamma correction.Gamma correction. Analog to digital conversion.Analog to digital conversion.

Page 12: Status – Week 283 Victor Moya. 3D Graphics Pipeline Akeley & Hanrahan course. Akeley & Hanrahan course. Fixed vs Programmable. Fixed vs Programmable.

Programmable PipelineProgrammable Pipeline

Page 13: Status – Week 283 Victor Moya. 3D Graphics Pipeline Akeley & Hanrahan course. Akeley & Hanrahan course. Fixed vs Programmable. Fixed vs Programmable.

Vertex ProgramVertex Program

Page 14: Status – Week 283 Victor Moya. 3D Graphics Pipeline Akeley & Hanrahan course. Akeley & Hanrahan course. Fixed vs Programmable. Fixed vs Programmable.

Vertex ProgramVertex Program

Page 15: Status – Week 283 Victor Moya. 3D Graphics Pipeline Akeley & Hanrahan course. Akeley & Hanrahan course. Fixed vs Programmable. Fixed vs Programmable.

Fragment ProgramFragment Program

Page 16: Status – Week 283 Victor Moya. 3D Graphics Pipeline Akeley & Hanrahan course. Akeley & Hanrahan course. Fixed vs Programmable. Fixed vs Programmable.

Fragment ProgramFragment Program

Page 17: Status – Week 283 Victor Moya. 3D Graphics Pipeline Akeley & Hanrahan course. Akeley & Hanrahan course. Fixed vs Programmable. Fixed vs Programmable.

Some real examplesSome real examples

ATI R300.ATI R300. 3DLabs P10.3DLabs P10. Matrox Parhelia.Matrox Parhelia.

Page 18: Status – Week 283 Victor Moya. 3D Graphics Pipeline Akeley & Hanrahan course. Akeley & Hanrahan course. Fixed vs Programmable. Fixed vs Programmable.

ATI R300. SpecsATI R300. Specs 0.15 micron technology0.15 micron technology 110+ million transistors.110+ million transistors. 8 pixel rendering pipelines, 1 texture unit per 8 pixel rendering pipelines, 1 texture unit per

pipeline, 16 textures per pass.pipeline, 16 textures per pass. 4 programmable vect4 vertex shader 4 programmable vect4 vertex shader

pipelines.pipelines. 256-bit DDR memory bus.256-bit DDR memory bus. Up to 256 MB of memory on board, clocket at Up to 256 MB of memory on board, clocket at

over 300 MHz (19,2 GB/s).over 300 MHz (19,2 GB/s). AGP8X.AGP8X. Full DirectX 9 Pixel and Vertex Shader support.Full DirectX 9 Pixel and Vertex Shader support.

Page 19: Status – Week 283 Victor Moya. 3D Graphics Pipeline Akeley & Hanrahan course. Akeley & Hanrahan course. Fixed vs Programmable. Fixed vs Programmable.

ATI R300. Specs.ATI R300. Specs.

Page 20: Status – Week 283 Victor Moya. 3D Graphics Pipeline Akeley & Hanrahan course. Akeley & Hanrahan course. Fixed vs Programmable. Fixed vs Programmable.

ATI R300. GPU.ATI R300. GPU.

Page 21: Status – Week 283 Victor Moya. 3D Graphics Pipeline Akeley & Hanrahan course. Akeley & Hanrahan course. Fixed vs Programmable. Fixed vs Programmable.

ATI R300. Memory ATI R300. Memory Crossbar.Crossbar.

Page 22: Status – Week 283 Victor Moya. 3D Graphics Pipeline Akeley & Hanrahan course. Akeley & Hanrahan course. Fixed vs Programmable. Fixed vs Programmable.

ATI R300. Vertex Shader.ATI R300. Vertex Shader.

Page 23: Status – Week 283 Victor Moya. 3D Graphics Pipeline Akeley & Hanrahan course. Akeley & Hanrahan course. Fixed vs Programmable. Fixed vs Programmable.

ATI R300. Pixel Shader.ATI R300. Pixel Shader.

Page 24: Status – Week 283 Victor Moya. 3D Graphics Pipeline Akeley & Hanrahan course. Akeley & Hanrahan course. Fixed vs Programmable. Fixed vs Programmable.

ATI R300. Pixel Shader.ATI R300. Pixel Shader.

Page 25: Status – Week 283 Victor Moya. 3D Graphics Pipeline Akeley & Hanrahan course. Akeley & Hanrahan course. Fixed vs Programmable. Fixed vs Programmable.

3D Labs P10. Specs.3D Labs P10. Specs. 0.15-micron manufacturing process (same process as 0.15-micron manufacturing process (same process as

the GeForce4)the GeForce4) 76M transistors76M transistors Fabbed at TSMC (NVIDIA's chips are made here as well)Fabbed at TSMC (NVIDIA's chips are made here as well) 860 ball HSBGA package (TSMC's latest packaging 860 ball HSBGA package (TSMC's latest packaging

technology)technology) 4 pixel rendering pipelines, can process two textures 4 pixel rendering pipelines, can process two textures

per pipelineper pipeline 256-bit DDR memory interface (up to 20GB/s of memory 256-bit DDR memory interface (up to 20GB/s of memory

bandwidth w/ 312.5MHz DDR)bandwidth w/ 312.5MHz DDR) up to 256MB of memory on-boardup to 256MB of memory on-board AGP 4X supportAGP 4X support Full DX8 pixel and vertex shader supportFull DX8 pixel and vertex shader support

Page 26: Status – Week 283 Victor Moya. 3D Graphics Pipeline Akeley & Hanrahan course. Akeley & Hanrahan course. Fixed vs Programmable. Fixed vs Programmable.

3DLabs P10. Evolution.3DLabs P10. Evolution.

Page 27: Status – Week 283 Victor Moya. 3D Graphics Pipeline Akeley & Hanrahan course. Akeley & Hanrahan course. Fixed vs Programmable. Fixed vs Programmable.

3DLabs P10. Pipeline.3DLabs P10. Pipeline.

Page 28: Status – Week 283 Victor Moya. 3D Graphics Pipeline Akeley & Hanrahan course. Akeley & Hanrahan course. Fixed vs Programmable. Fixed vs Programmable.

3DLabs P10. Pipeline.3DLabs P10. Pipeline.

Page 29: Status – Week 283 Victor Moya. 3D Graphics Pipeline Akeley & Hanrahan course. Akeley & Hanrahan course. Fixed vs Programmable. Fixed vs Programmable.

3DLabs. Command.3DLabs. Command.

Page 30: Status – Week 283 Victor Moya. 3D Graphics Pipeline Akeley & Hanrahan course. Akeley & Hanrahan course. Fixed vs Programmable. Fixed vs Programmable.

3DLabs. Vertex Units.3DLabs. Vertex Units.

Page 31: Status – Week 283 Victor Moya. 3D Graphics Pipeline Akeley & Hanrahan course. Akeley & Hanrahan course. Fixed vs Programmable. Fixed vs Programmable.

3DLabs P10. Raster Pipe.3DLabs P10. Raster Pipe.

Page 32: Status – Week 283 Victor Moya. 3D Graphics Pipeline Akeley & Hanrahan course. Akeley & Hanrahan course. Fixed vs Programmable. Fixed vs Programmable.

3DLabs P10. Texture Pipe.3DLabs P10. Texture Pipe.

Page 33: Status – Week 283 Victor Moya. 3D Graphics Pipeline Akeley & Hanrahan course. Akeley & Hanrahan course. Fixed vs Programmable. Fixed vs Programmable.

3DLabs P10. Pixel Pipe.3DLabs P10. Pixel Pipe.

Page 34: Status – Week 283 Victor Moya. 3D Graphics Pipeline Akeley & Hanrahan course. Akeley & Hanrahan course. Fixed vs Programmable. Fixed vs Programmable.

3DLabs P10. Virtual 3DLabs P10. Virtual Memory.Memory.

Page 35: Status – Week 283 Victor Moya. 3D Graphics Pipeline Akeley & Hanrahan course. Akeley & Hanrahan course. Fixed vs Programmable. Fixed vs Programmable.

Matrox Parhelia. Specs.Matrox Parhelia. Specs. 0.15-micron GPU manufactured at UMC0.15-micron GPU manufactured at UMC 80 Million transistors80 Million transistors 4 pixel rendering pipelines, can process four 4 pixel rendering pipelines, can process four

textures per pipeline per clocktextures per pipeline per clock 4 programmable vect4 vertex shaders4 programmable vect4 vertex shaders 256-bit DDR memory bus (up to 20GB/s of 256-bit DDR memory bus (up to 20GB/s of

memory bandwidth w/ 312.5MHz DDR)memory bandwidth w/ 312.5MHz DDR) up to 256MB of memory on boardup to 256MB of memory on board AGP 4/8X supportAGP 4/8X support Full DX8 pixel and vertex shader supportFull DX8 pixel and vertex shader support

Page 36: Status – Week 283 Victor Moya. 3D Graphics Pipeline Akeley & Hanrahan course. Akeley & Hanrahan course. Fixed vs Programmable. Fixed vs Programmable.

Matrox Parhelia. Pipeline.Matrox Parhelia. Pipeline.

Page 37: Status – Week 283 Victor Moya. 3D Graphics Pipeline Akeley & Hanrahan course. Akeley & Hanrahan course. Fixed vs Programmable. Fixed vs Programmable.