CS488 - Introduction to Computer Graphics - Lecture 3
The Graphics Pipeline
Development of the Graphics Pipeline
Graphics Processing Unit (GPU)
Early: minimally programmable
- 3D modelling primitives (model coordinates)
- User assembles modelling primitives into 3D world (world
coordinates)
- Algorithms tranform the world into a set of 3D primitives, usually
triangles (visual coordinates, centred on the eye)
- Lighting is calculated for each 3D primitive
- Hardware processes 3D primitives into the frame buffer
- Minimally-programmable hardware moves a point of light on the screen
(in a special pattern)
Late: maximally programmable
- 3D modelling primitives (model coordinates)
- User assembles modelling primitives into 3D world (world coordinates)
- Algorithms tranform the world into a set of 3D primitives, usually
triangles (world coordinates)
- Lighting is calculated by the vertex shader
- Vertices are transformed by the geometry shader (from world coordinates
to visual coordinates)
- Vertices are transformed into image coordinates by the pixel
shader.
- Minimally-programmable hardware moves a point of light on the screen
(in a special pattern)
Summary
- Models (Model coordinates) --user input, interpreted as 3D
transformations -->
- Scene (World coordinates ) --3D transformations-->
- 3D primitves (View coordinates) -- perspective
transformations-->
- 2D primitives (Image coordinates) --scan conversion-->
- Framebuffer (Screen coordinates) --video hardware-->
- Display
Graphics I/O Hardware
Displays (Output)
Cathode Ray Tubes (CRTs)
How they work
Strong points
- Ubiquitous
- Good imaging
- Good angle of view
- Can be calibrated
Weak points
- Big
- Heavy
- Need lots of power
- Dim
- Poor spatial resolution
Liquid Crystal Displays (LCDs)
How they work
Strong points
- Small
- Light
- Small text is readable
- Better spatial resolution possible
- Random addressing, but not usable for double buffering
Weak points
- Poor for images
- Poor angle of view, but improving
- Backlight is power-hungry and hot
- Only a little less dim
- Better spatial resolution not manufactured
Light Emitting Diodes (LEDs)
How they work
Strong points
- Very efficient, i.e. low power
- Bright: outdoor displays, OLEDs
- Flexible: OLEDs
- High resolution possible: only commercially available for OLEDs
Weak points
- Can only buy small ones, and in large quantities.
Mice & Keyboards (Input)
Types of Input
- Request
- Sample
- Event
Devices
- Text Input
- Pointing Input
Event-based Programming
- Event Loop
- Callbacks
- Toolkit programming
- Java listeners
Callbacks need formal work. Java is trying hard but needs to step
further back from the coal face.
Return to: