3D Graphics Programming

Kingston University

Course Description

  • Course Name

    3D Graphics Programming

  • Host University

    Kingston University

  • Location

    London, England

  • Area of Study

    Computer Science

  • Language Level

    Taught In English

  • Prerequisites

    ? Successful completion of CI4500/CI4510 or similar;
    ? In addition, for Study Option 3 entry, completion of introductory programming in
    OpenGL and XNA.

  • Course Level Recommendations


    ISA offers course level recommendations in an effort to facilitate the determination of course levels by credential evaluators.We advice each institution to have their own credentials evaluator make the final decision regrading course levels.

    Hours & Credits

  • Credits

  • Recommended U.S. Semester Credits
  • Recommended U.S. Quarter Units
  • Overview

    Course Content:

    This module provides students with core knowledge of the computer graphics methods
    of geometric modelling, projection, rendering and shading and to prepare students for
    writing their own computer graphics applications using industry-standard specialised

    It explores lower level games programming with an emphasis on C++, 3D graphics
    libraries and the mathematical concepts underpinning them.

    Autumn Semester content: To develop knowledge of database design in order to
    critically analyse and evaluate database modelling and development methods. Gain a
    detailed insight into the practical and theoretical aspects of advanced topics in
    databases, such as object-relational databases, data warehouses and distributed
    databases. Create, implement and critically test and evaluate an advanced database

    Spring Semester content: advanced 3D rendering techniques and shader programming
    in OpenGL/GLSL.
    Whole module topics covered may include:
    ? Libraries: such as OpenGL, Direct3D
    ? Game mathematics: coordinate systems (more advanced), matrix
    transformations, homogeneous coordinates, projections, quaternions, vectors in
    3 dimensions, vector algebra, parametric equations of lines, planes and simple
    curves, dot and cross products in 3D, tangents and normals, intersections, linear
    equations of two variables, flight dynamics
    ? Games physics: collision detection and response (more advanced), introduction
    to ragdoll physics, introduction to animation and inverse kinematics. Physics of
    spacecraft, flight, vehicles.
    ? 3D Computer Graphics: z-buffering, rasterization, texture, clipping, anti-aliasing,
    clipping, filling, illumination techniques, shading, colour models, ray tracing,
    rendering techniques, normal maps, mipmaps, graphics pipeline
    ? Shaders: low level shader languages, GPU programming, integration of shader
    and game code
    ? Special effects for games: e.g. fire, water, rain and snow, animation and particles
    ? Testing, debugging and documentation: considerations for optimisation.

    Teaching: Lectures, tutorials, workshops, case studies, exercises, discussion groups, and practice

    ? Coursework: Time-limited tests; written reports; practical exercises (100%)
    STUDY OPTION 2 or 3: portfolio of coursework (100%).

    Study Option 1 = Whole Year
    Study Option 2 = Autumn
    Study Option 3 = Spring/summer

Course Disclaimer

Courses and course hours of instruction are subject to change.

Eligibility for courses may be subject to a placement exam and/or pre-requisites.

Some courses may require additional fees.

Credits earned vary according to the policies of the students' home institutions. According to ISA policy and possible visa requirements, students must maintain full-time enrollment status, as determined by their home institutions, for the duration of the program.

Please reference fall and spring course lists as not all courses are taught during both semesters.

Please note that some courses with locals have recommended prerequisite courses. It is the student's responsibility to consult any recommended prerequisites prior to enrolling in their course.


This site uses cookies to store information on your computer. Some are essential to make our site work; others help us improve the user experience. By using the site, you consent to the placement of these cookies.

Read our Privacy Policy to learn more.