Graphics and Mobile Gaming Online Course

This eleven-module course includes lecture slides with notes, quizzes, labs and lab videos which ease the learner through the intricacies of graphics and 3D mobile game development. In clear and concise language, and with a strong self-study focus, this course covers the latest graphics and game design technologies on mobile devices, breaking down concepts into easy-to-understand theory, which is reinforced via the accompanying labs and quizzes. Users can be confident that even complex programming and design concepts will be understood. With a specific focus on Arm Mali GPU technology, the course enables students to work with cutting-edge graphical and virtual reality rendering techniques, optimized for Arm-based devices.

The course starts from the fundamentals of 3D graphics while concepts such as shader programming, geometry processing, texturing and lighting are illustrated and practiced. Following that, the game engine is introduced as a high-level tool to develop real games, through which learners will study how to create 3D sprites, sound and animation, user interaction and adding physics. In this edition, Chukong Technologies' popular Cocos2d-x game engine, which is both open source and cross platform, is used as a basis for mobile game development. At the end of this course, students and professionals will gain a greater understanding of graphics programming and games design, learn how to manage workflows and hone their project management skills in this area.

If you are interested in an institutional subscription, contact the Arm Education Media team at

Course Aim

The course aims to equip students with the skills needed to create their own 3D games on mobile devices through the rigorous teaching of graphics and gaming fundamentals, and hands-on practice using professional graphics API and game engines.

Learning outcomes

Knowledge and understanding of

  • Arm Mali GPU architecture
  • Core OpenGL ES rendering techniques
  • Game design methodology


  • Ability to use different graphics and game design techniques to optimize performance and reduce power consumption on mobile devices


  • Ability to create computer graphics on mobile devices using the Open GL ES Library
  • Ability to create 3D games from scratch using commercial game design engines


Basic understanding of C++/Java Programming

Course syllabus

Module name
1. Introduction to Graphics and Mobile Gaming
2. GPU Architecture and Mali GPU
3. Introduction to Graphics API and OpenGL ES
4. Rendering Pipeline and Shader Programming
5. 3D Graphics and Matrix Manipulation
6. Texturing and Lighting
7. Performance Optimization and Programming Techniques
8. Introduction to Mobile Gaming
9. Game Graphics
10. Video Game Design
11. 3D Effects, Architecture and Performance Considerations
12. Virtual Reality