Module Descriptors
ADVANCED PROGRAMMING FOR 3D GRAPHICS APPLICATIONS
COSE60436
Key Facts
Faculty of Computing, Engineering and Sciences
Level 6
15 credits
Contact
Leader: Stephen Foster
Hours of Study
Scheduled Learning and Teaching Activities: 24
Independent Study Hours: 126
Total Learning Hours: 150
Assessment
  • EXAMINATION - UNSEEN IN EXAMINATION CONDITIONS weighted at 50%
  • ASSIGNMENT weighted at 50%
Module Details
Module Texts
Preisz, E. & Garney, B., Video Game Optimisation, Course Technology PTR, 2010, ISBN: 0672318350
Tricks of 3D Game Programming Gurus - Advanced 3D Graphics and Rasterization, Andre LaMothe, Sams, 2003, ISBN: 0672318350
Module Special Admissions Requirements
Prior study of CE00849-5 Further Programming for 3D Graphics Applications or equivalent
Module Learning Strategies
Two lectures of 1 hour per week for 6 weeks.
One hour of tutorial/practical per week. (1:n)1 (1:20)1
Practicals will implement theory given in lecture material using chosen implementation framework.
Students will be expected to study underpinning principles and develop an awareness of issues relating to the mathematical principles involved contextualised in the graphics framework.
Module Additional Assessment Details
An examination 2 hours weighted at 50% which will assess learning outcomes 1 and 4.
An assignment (2000 words) weighted at 50% which will assess learning outcomes 1, 2 and 3.
Module Resources
For lectures: Lecture theatre with powerpoint slide viewer and suitable graphics development libraries mapping to the one selected for the module delivery.
For practicals: High performance PCs and Games consoles incorporating suitable software development environment.
Module Indicative Content
Alogirthms, data structures and techniques for: modelling shape, surface appearance and terrain (procedural terrain generation).
Algorithms, data structures and techniques for enhancement/optimisation of graphical features: real-time rendering, programmable shaders, view culling, scene management.
Algorithms, data structures and techniques for animation: character and shape animation (vertext animation, skeletal animation - skins and bones), motion capture.
Algorithms, data structures and techniques for motion simulation: direct and indirect motion capture, bio-mechanical functions, sensing, control and motion of simulated 3D bodies, collision detection, terrain following, rigid body mechanics.
Hardware platforms (general purpose computer, game console, handheld device): features and programming constraints, in particular for game consoles such as Playstation or Xbox. Bottlenecks and profiling. Program design, including programming for multiple processors, to optimise performance.