back_C1_edited_edited.png

Advanced Game Programming

AGP.webp

​Advanced Game Programming course is designed to train the next generation of game programmers through real game production environment.


The students will learn game programming using various engines, tools set, CG model, and environment. Working closely with the Technical Artists and other CG artist, the game programmer will integrate various elements supplied to them and woven them into a workable game.

The course is designed to use real world game engines. It teaches prospective programmers the necessary tools and program techniques to produce games for next-generation console games and on-line games.

The game programmers will learn different games programming techniques and deployment strategies from Xbox, PlayStation, and Wii; and various mobile platforms and hand-held platforms such as Nintendo DS and PSP, to on-line MMORPG and causal games.

Video Game

The Course Objectives:

  • A one year full time intensive course with real world production experience

  • To prepare an individual who want to be a game programmer

  • To provide students an understanding of all major CG packages, such as Maya and 3D Max

  • Math and Physics, AI Primitives, Graphic system, Controller Interaction, Audio, Scripting System, Networking and Multiplayer

  • To introduce the individuals into scripting languages such as MEL scripts and Max Scripts, C++, Java Script, Direct X, etc..

  • 3D game programming, basic mathematic-such as Vector and Matrix Algebra, Transformations and Planes, Direct3D Foundation-The rendering Pipeline, Drawing in Direct 3D, Color, Lighting, Stenciling, Direct 3D Library, Terrain Rendering, Particle Systems, Advance Texturing, Windows Programming.

  • To familiar the individual with different hardware architecture such, Xbox, PlayStation, and various PC graphic system, such as nVIDIA and ATI

  • Implementing CG graphic pipeline with various game engines

  • Games engine development and its limitation

  • Creative thinking in resolving technical challenges and limitations

  • Hands-on learning of real world project and production.

Foundational Modules:

Module Code

Module Name

Description

Introduction to Video Game Development

ntroduces the students to the world of video game development and production.

Elements of Game Systems

Introductory module to the different subsystems contained in a computer game.

Modeling and Art Tools for Game Production

Introduces the modeling and art tools commonly used to create game assets and artwork.
The software tools include 3DS Max, Maya, Photoshop, ZBrush and BodyPainter.

Game Programming Tools & Technologies

Introduces the programming tools and technology used in game development.
The software tools include Microsoft Visual Studio 2005, NVidia FX Composer, Direct3D, HLSL and XNA.

Principles of 3D Mathematics for Games

Foundation module in basic 3D mathematics concepts and equations utilized in games.

Principles of Computer Graphics

Foundation module in basic computer graphics concepts and techniques utilized in games.

Advanced Game Programming Modules:

Module Code

Module Name

Description

Advanced 3D Mathematics for Games

This module extends on the students’ knowledge gained from the module F3DM: Principles of 3D Mathematics.
Advanced 3D mathematics and how to apply these mathematical concepts in computer games are taught in this module.

Advanced Computer Graphics

This module extends on the students’ knowledge gained from the module FPCG: Principles of Computer Graphics.
Students will be taught key advanced CG techniques as well as important tools and technologies like Direct3D and GPU programming using HLSL.

Game Physics

Interactions between objects in the virtual game world are often modeled after real-life physical interactions.
Students will be taught Newtonian physics and the mathematics involved in resolving collision detection/response. Students will be also taught the application of these key theories to create realistic motion in computer games.

Game Animation

Teaches students in techniques required to create animations of objects and characters in games.

Game Scene Management

This is an advanced module that teaches students how to manage the problems of a complex virtual game world.

Game AI

The module focuses on teaching key AI techniques used in computer games and its specific uses. Students will study several important AI techniques and how to apply it to game design and development.

Multiplayer & Networking

Multiplayer and networked games are common features in many modern games.
The module teaches the issues involved in the development of these features and the techniques that can be applied to resolve them.

Sound Effects & Music for Games

Sound effects and music helps to make computer games more immersive and engaging.
In this module, students will be exposed to the practical knowledge of how to include music and sound effects in games. Students will get the opportunity to apply basic sound effects in computer games.

Multithreading & Parallel Processing

With the advent of multi-core processors and the new generation of video game consoles like Microsoft Xbox and Sony Playstation, game developers have to embrace multi-threading and parallel processing in order to develop games on these advanced platforms.
This module teaches the key multi-threading and parallel processing concepts. Students will also be introduced to the architectures of the next-generation video game consoles.

Game Design & Production Modules:

Module Code

Module Name

Description

Building the Game Team

 This is an exercise in creating a small game development team.
Students will be exposed to team dynamics and how to create the right mix of talents for the game team.

Game Design

This is an exercise in designing a new game.
Students will be guided to create interesting game mechanics or gameplay as well as to consider design issues like creating the “fun” factor and addictiveness to the game that they will develop.

Game Production

This is an exercise in setting up the game production pipeline.
Game production techniques will be taught to students to help them manage the production process of their game projects.

Game Development

This is an exercise in the actual development of the student’s game title.
The instructors will be mentoring the students during the actual game development process.