to understand the concepts, algorithms and computational methods
on which interactive graphical applications are based. The emphasis is
on the understanding of theory (geometry, radiometry) and computational
computational aspects (algorithms and data structures) that underlie the
creation of computer images.
At the end of the course, the student will be able to:
– understand how applications based on interactive 3D graphics work,
such as video games, data visualisation, and simulations;
– design applications of this type, with regard to the graphics part.
– Computer graphics, paradigms, Differences between 3D graphics and interactive 3D graphics.
– Outline of a graphics application
– Course overview
2. Mathematical foundations
– Coordinate systems
– Affine matrices and transformations, homogeneous coordinates, Euler angles.
– Recalls of analytical geometry
– Geometric data structures
3. Geometric modelling
– Polygonal meshes
– Representation of triangular meshes
– Curves and surfaces (briefly)
– Solid construction geometry (underline)
– Spatial partitioning (hint)
4. Rendering and lighting
– Introduction to rendering: ray casting
– Colours and their representation in rendering.
– Interaction between light and surfaces, hints on radiometry,
– Bidirectional Scattering Distribution Function.
– General equation for rendering (or radiance)
– Lambertian surfaces, glossy surfaces.
5. Lighting models
– Blinn-Phong model
– Cook-Torrance model (hint)
– Representation of light sources and materials
– Blinn-Phong shading equation
– Cook-Torrance specular term
– Ray tracing
– Geometric transformations, orthographic and perspective projections
– Camera space, clip space and screen space
– Removal of hidden surfaces: object-space, image-space (depth test)
– Scan conversion: algorithms for points, lines and polygons
– Interpolation of vertex attributes. Shading: Flat, Phong and Gouraud
– The OpenGL pipeline
– Multi-pass techniques
– Aliasing and screen-based anti-aliasing methods
7. Mapping techniques
– Texture map concept
– Texture space and texture co-ordinates
– Texture application
– Texture anti-aliasing methods
– Bump Mapping, Normal Mapping, Displacement Mapping
– Reflection and Refraction Mapping
– Light Mapping
– Geometric Shadows (Shadow Mapping)
– Rendering of semitransparent surfaces
9. Techniques for interactive applications
– Spatial data structures. Bounding volumes, Bounding Volume Hierarchies, Binary Space Partitioning Trees
– Complexity abatement techniques: Geometric simplification, Leval of Detail, Culling algorithms, Hierarchical View Frustum Culling