View on GitHub

PowerVR Graphics SDK

C++ cross-platform 3D graphics SDK. Includes demos & helper code (resource loading, matrix and vector maths, etc.) to speed up development of OpenGL ES 2.0 & 3.x applications

What is the PowerVR SDK?

The SDK supports iOS, Android and Linux PowerVR devices. It also supports Windows, OS X and Linux PC emulation. Imagination's OpenGL ES emulation library, PVRVFrame, can be downloaded from our website here.

The SDK includes optimized example applications to demonstrate the most efficient ways of implementing common 3D graphics effects on PowerVR graphics cores. It also includes a cross-platform OS and graphics API abstraction layer, and a library of helper code for resource loading, vector and matrix maths, text printing and more.


The framework consists of separate libraries providing groups of functionality as modules. These modules are PVRCore, PVRAssets, PVRShell, PVRVK, PVRUtils and PVRCamera.

  • PVRCore provides support for the other modules
  • PVRAssets provides code for accessing and manipulating application resources such as textures
  • PVRShell provides platform abstraction/entry point
  • PVRVk provides a useful abstraction and automation of the Vulkan API to speed up application development
  • PVRUtils provides functions for automating common tasks in application development
  • PVRCamera provides hardware Camera abstractions


The examples provided in the SDK are fully commented, highly optimized C++ applications that cover a variety of rendering techniques. They are designed in a step-by-step tutorial style to gradually guide the most inexperienced graphics developers from a simple render of a single triangle to complex scenes that incorporate many objects, animations and shader effects.

Download the SDK

SDK Documentation

This repository contains documentation for the PowerVR SDK.

Available documents:

SDK Browser

The SDK Browser provides an overview of the PowerVR SDK, including a introduction to its features and dependencies, instructions for building the SDK locally, a summary of the various modules which make up the SDK Framework, and a list of all of the available code examples.

Setting up the SDK

The SDK Browser provides a step-by-step guide to build and deploy the SDK examples for the various support operating systems. You can find this guide here.

Framework Manuals

The PowerVR SDK Framework is a collection of modules intended to make graphics application development much easier.

Each module has an associated reference manual which summarises the files and classes which make up the module.

  • PVRVk - PVRVk provides a simplified abstraction of the Vulkan API.
  • PVRAssets - PVRAssets is a simple way to load and handle assets, in particular those in PowerVR formats.
  • PVRShell - PVRShell provides a basic structure for developing Vulkan and OpenGL ES applications.
  • PVRCamera - PVRCamera helps when developing with hardware camera.
  • PVRCore - PVRCore provides core which helps with performing common tasks, and links the other modules together.
  • PVRUtils - PVRUtils works directly with the rendering API by providing tools to simplify boilerplate API code

Reference Documentation

The PowerVR SDK package contains a collection of reference documentation to help you develop effectively for PowerVR devices.

The SDK Browser gives a list of the available documentation along with links to access the individual documents in PDF form.

This list can be found here

Download the SDK Documenation


If you have any questions about the SDK, PowerVR device optimisation/debugging or our tools, please contact us through our public forum.

If you would prefer to contact us confidentially, you can file a support ticket.


The PowerVR SDK is distributed under the MIT license.