Course/Lab Material for Teaching Graphics Processing


Graphics and Mobile Gaming Education Kit

Driven by the uptake of gaming on mobile devices, the global video game industry is growing rapidly, with a vast ecosystem that’s geared towards producing high performance and low energy devices. At the heart of innovation in the mobile gaming devices, the ARM Mali graphics processors offer developers a cost efficient, high performance and low energy GPU that ensures quality of visual experiences.

To enable educators to teach using the latest graphics and game design technologies on mobile devices, the ARM University Program has developed the Graphics and Mobile Gaming Education Kit. This Education Kit features a complete set of teaching materials comprising lecture notes, lab manuals, project code and solution, which can be readily used in a typical 10-14 week course. Our goal is to enable educators to upgrade their existing teaching materials and harness the ARM ecosystem in order to educate and empower the next generation of professional game developers.

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
  • Intellectual
    • Ability to use different graphics and game design techniques to optimize the performance and reduce the power consumption on mobile devices
  • Practical
    • Capability to create computer graphics on mobile devices using the Open GL ES Library
    • Capability to create 3D games from scratch using commercial game design engines


  • Basic understanding of C++/Java Programming


The course comprises lecture notes in PPT format, lab exercises with solutions, demonstration code and programming projects, which can be readily deployed in a typical 10-14 week course. It starts from the fundamentals of 3D graphics and how ARM Mali GPUs are designed to process graphical data with low-power requirement. It then introduces OpenGL ES as a programming API to process graphics on mobile devices, 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 students will learn how to create 3D sprites, sound and animation, user interaction and adding physics. In addition to the above, the course also teaches how to use different programming techniques to optimize the performance, as well as advanced topics such as virtual reality.

View the full Table of Contents for our Graphics and Mobile Gaming Education Kit.


The full kit includes a complete set of teaching materials from the ARM University Program, comprising lecture notes and hands-on experiments with solutions— all available free-of-charge to Faculty/Educators worldwide to use in their courses. All software tools needed in this kit are available free of charge. Subject to qualification and hardware availability, seed hardware can also be donated to universities who wish to set up a gaming lab based on the above materials. To access samples of our teaching materials or to make a full donation request please click on the donation request below.


The ARM University Program recommends the following hardware for use with the Graphics and Mobile Gaming Education Kit:

iFive AIR Tablet

The iFive Air contains an ARM Cortex-A17 32-bit core within a RK3288 Quad Core.  It also contains a Mali-T764 GPU. The device comes with the Android 5.1 OS, with a long battery life thanks to the built-in 8200mAh battery.  

Rockchip RK3288

The RK3288 from Rockchip is a low power, high performance processor for mobile phones, personal mobile internet devices and other digital multimedia applications. It contains an ARM cortex-A17 Processor and a Mali-T764 GPU.

Google Nexus 10

The Google Nexus 10 is the first tablet available to consumers containing the new Exynos 5250 applications processor. The Nexus 10 features two Cortex-A15 processors and 4 Mali-T604 GPUs. This Google experience device comes loaded with Android 4.2 Jelly Bean and is the first device to accelerate Renderscript Compute on the GPU.

The ARM University Program recommends the following software for use with the Graphics and Mobile Gaming Education Kit:


OpenGL® ES is a royalty-free, cross-platform API for full-function 2D and 3D graphics on embedded systems - including consoles, phones, appliances and vehicles





Cocos2d-x is an open-source game framework written in C++, with a thin platform dependent layer. It is widely used to build games, apps and other cross platform GUI based interactive programs. 





Eclipse IDE

The Eclipse IDE combines language support for multiple languages into a single IDE.





Mali Graphics Debugger

The Mali Graphics Debugger allows developers trace OpenGL ES and OpenCL API calls in their application and understand frame-by-frame the effect on the application to help identify possible issues.





ARM DS-5 Streamline Profiling tool

The ARM® Development Studio 5 (DS-5™) tool chain provides complete system wide performance analysis to improve performance of your graphics and compute applications.





Mali Offline Compiler

The Mali GPU Offline Shader Compiler is a command line tool that compiles shader code written OpenGL ES Shading Language (ESSL) in offline mode. It allows checking that shaders compile properly before the availability of any Mali hardware and provides verbose output about shader performance and error messages for shader optimization and debug.





Android Studio

Android Studio is an Integrated Development Environment (IDE) for Android app development that has intelligent code editing, built-in emulators and instant run-time environments.





The ARM University Program recommends the following textbook for teaching Graphics and Mobile Gaming:

Accompanying teaching materials


OpenGL ES 3.0 Programming Guide (2nd Edition)

Author: Dan Ginsburg, Budirijanto Purnomo, Dave Shreiner, Aaftab Munshi
Publisher: Addison-Wesley Professional

ISBN-13: 978-0321933881
ISBN-10: 0321933885



OpenGL ES 3.0 Cookbook

Author: Parminder Singh
Publisher: Packt Publishing

ISBN-10: 1849695520
ISBN-13: 978-1849695527


Cocos2d-x by Example: Beginner's Guide - Second Edition

Author: Roger Engelbert,
Publisher: Packt Publishing,

ISBN-10: 1785288857
ISBN-13: 978-1785288852


Beginning C++ Through Game Programming

Author: Michael Dawson,
Publisher: Cengage Learning PTR,

ISBN-10: 1305109910
ISBN-13: 978-1305109919

The Art of Game Design: A Book of Lenses, Second Edition

Author: Jesse Schell
Publisher: A K Peters/CRC Press

ISBN-10: 1466598646
ISBN-13: 978-1466598645


We use cookies to give you the best experience on our website. By continuing to use our site you consent to our cookies.

Change Settings

Find out more about the cookies we set