COMP3421 - Graphics

- OpenGL API
- 2D Drawing - Lines and Polygons
- Vector Maths
- Affine Transformations & Homogeneous Coordinates
- Matrix Maths
- Coordinate Systems; Object v World v Camera v Screen
- OpenGL Graphics Pipeline
- ModelView Transform
- Projection Transform
- Graphics Clipping
- Viewport Transformation
- Texturing
- Hidden Surface Removal
- 3D Meshes
- Lighting
- Ray Tracing
- Radiosity
- Shading
- Reflection
- Shadows
- Rasterisation
- Bezier Curves
- Splines
- Particles
- L-Systems
- Shader Programming in GLSL
- Z-Fighting & Polygon Offsets

# Definitions

- modeling
- the mathematical representation and computer implementation of lines, curves, surfaces, and transformations
- rendering
- the mathematics of projection, hidden surface removal and local and global illumination; the computer implementation of this in the graphics pipeline
- Ambient Fudge Term
- Global ambient value. Prevents surfaces not facing a light from being black.
- Attenuation
- the gradual loss of intensity of any kind of flux (e.g. light) through a medium
- Camera
- A way of visualising the movement of the world view - it is the global coordinate system. Often we consider it to be an object itself. Hence conversions to global coords are conversions to camera local coords.
- Depth Slope
- Depth slope m is a measure of how quickly a polygon is sloping away from the camera. Sloping polygons need a bit more offset in order to resolve properly.
- Foreshortening
- The experience of objects further away appearing smaller than those closer (because our eye is a point camera)
- Lerping
- Linear Interpolation is a way of finding a value between two points, based on the percentage of the way between the two points.
- Model Matrix
- A transformation matrix representing the transform from local coords to world coords
- Model View Matrix
- The matrix used to convert local coords into global (camera) coords
- Non-Photorealistic Rendering (NPR)
- Catch all term for stylised rendering (e.g. oil painting, technical diagrams)
- Point
- A vector representing displacement from the origin.
- Projection Matrix
- The matrix used to describe the view volume. This is usually called on reshape
- Rasterisation
- Conversion of a polygon into a group of fragments
- Scene graph
- way to represent complex relationships between objects - e.g. between a foot, leg, torso. Is hierarchical to display which objects move when other objects move. A node draws itself, then does a transformation(s) before drawing its children nodes.
- Transformation Matrix
- Any matrix representing a series of rotates, translates, scales and shears.
- Vector
- A displacement between 2 points in x-dimensional space.
- Viewport
- rectangular-shaped canvas that things are drawn on
- View Matrix
- A transformation matrix representing the transformation from world coords to camera coords.
- View Volume
- 3D rectangular prism representing the area of space displayed in the viewport. View volume is in camera co-ords.
- Axis-Aligned View Volume
- A rectangular prism shaped view volume - either used for orthographic, or the result of a perspective view volume that has been perspective transformed.
- Canonical View Volume
- Axis-aligned view volume with every point between (-1,-1,-1) and (1,1,1)
- Perspective View Volume
- Frustum shaped view volume (enables foreshortening).
- World Window
- an axis-aligned rectangle representing the portion of the world that we can see (2D)
- Screen Coords or Window coords
- refer to the coordinate space from (-w,-h) to (w,h)
- Z-Fighting
- The result of two polygons being almost parallel is that due to limited precision, they will ‘fight’ for which is on top and create weird jagged lines. We can enable GL_POLYGON_OFFSET_FILL and set a polygon offset of -1 -1 to whatever want to be on top to fix this.

page revision: 5, last edited: 09 Sep 2014 09:43