Course Descriptions

Serious Gaming (SG) Fundamentals

The course covers an introduction to the game design challenges, animation and video game production processes, game design documents, storyboards, character design, game interface design, social and cognitive factors and game programming. All topics are enhanced by real-world examples.

Mobile Game Programming

The course will cover the following topics: introduction to HTML5 and JavaScript: HTML5 canvas, local storage, Object Game object hierarchies, Game state management. Game Architecture: game world, game loop, various game techniques: collision handling, game physics and animation. Game asset handling: graphics techniques for drawing, scaling, and rotating sprites, and basic sound management (loading and playing sounds). Techniques for interaction with a game on mobile devices: touch interface.


Computer Graphics

Computer Graphics is a study of the hardware and software principles of interactive raster graphics. Topics include an introduction to the basic concepts, 2-D and 3-D modeling and transformations, viewing transformations, projections, graphical software packages and graphics systems. Students will use a standard computer graphics API to reinforce concepts and study fundamental computer graphics algorithms.

Game Engine Programming

This course is designed to provide students with the fundamental concepts to develop games through an analysis of game architectures, game engines, data structures and AI for game programming. The course will cover the following topics: design patterns for games, multithreading, AI in games, game performance optimization, network programming, 3D sound, and scripting. Students will learn how to develop a complete computer game using a state-of-the-art game engine.

3D Modeling and Design

The course aims to explain the theory, methods and techniques for 3D Modelling. Students will be able to develop 3D models for characters, and various game objects. Also they will gain hand on practice on using 3D Modelling software.

The topics that will be covered: 3D modelling concepts and techniques, modelling and texturing: edge-loop, extruding, texturing, and sculpting. Character, prop modelling, high and low polygon modelling, UV mapping, and Introduction to rigging, and optimization models to be used in real time.


The course introduces computer animation. Students will be able to explain common concepts in 3D animation, and to use software for character animation, and understand elemental topics in physics and geometry related to 3D animation. The course will cover the following topics: rigging for forward and inverse kinematics, skin weighting, morph targets, expression-driven animation, rigid-body and particle simulation.


Content creation and level design

The course aims to introduce the concepts of creating believable environments, stages and missions for games. Upon completion of this course student will have a strong foundation and understanding of how to analyze game levels and break them down into their basic components, purpose, level functionality, and how levels are linked to previous features serve. The course will explore topics including architecture, flow, pacing and puzzles and the usage of a level editor. Technical design issues including the construction, texturing, lighting and scripting of modern game levels.


Introduction to Graduation Project Gamification

The course is project-based course, which aims to develop the students’ abilities to apply theory, methods and gamification techniques on their final year project. During the course students will apply the following concept: gamification, employs game design techniques to a complex problem, game mechanics and game elements, game thinking, relevant gamification frameworks and use Gamification platforms