OpenGL ES Emulator User Guide

Version: 1.3.1


Table of Contents

Preface
About this book
Intended audience
Using this book
Glossary
Typographical Conventions
Additional reading
Feedback
Feedback on this product
Feedback on content
1. Introduction
1.1. About the OpenGL ES Emulator
1.1.1. Mali GPU Offline Shader Compiler
2. Installation and Configuration on Windows
2.1. Installing the OpenGL ES Emulator on Windows
2.1.1. Supported Hardware and Software
2.1.2. Disk requirements
2.1.3. Installation procedure
2.2. Configuring the OpenGL ES Emulator on Windows
2.2.1. Using the OpenGL ES Emulator
2.2.2. OpenGL ES Emulator integration
2.3. Building the example applications on Windows
2.3.1. Building the OpenGL ES 2.0 Cube example
2.3.2. Building the OpenGL ES 1.1 simpApp11 example
3. Installation and Configuration on Linux
3.1. Installing the OpenGL ES emulator on Linux
3.1.1. Supported Hardware and Software
3.1.2. Disk requirements
3.1.3. Installation procedure
3.2. Configuring the OpenGL ES emulator on Linux
3.2.1. Using the OpenGL ES emulator
3.2.2. OpenGL ES emulator integration
3.3. Building the example applications on Linux
3.3.1. Building the OpenGL ES 2.0 cube example
3.3.2. Building the OpenGL ES 1.1 simpApp11 example
4. Installation and Configuration on Mac OS X
4.1. Installing the OpenGL ES emulator on Mac OS X
4.1.1. Supported Hardware and Software
4.1.2. Disk requirements
4.1.3. Installation procedure
4.2. Configuring the OpenGL ES emulator on Mac OS X
4.2.1. Using the OpenGL ES emulator
4.2.2. OpenGL ES emulator integration
4.3. Building the example applications on Mac OS X
4.3.1. Building the OpenGL ES 2.0 cube example
5. Implementation Information
5.1. OpenGL ES Implementation information
5.1.1. High-performance mode
5.1.2. General limitations
5.1.3. NVIDIA GeForce 210 graphics card with driver version 190.45 for Windows
5.2. EGL implementation information on Windows
5.2.1. Display initialization
5.2.2. EGL configurations
5.2.3. EGL contexts
5.2.4. Creation of window surface
5.2.5. Creation of pixmap surfaces
5.2.6. Creation of Pbuffer surfaces
5.2.7. Synchronization of pixmap surfaces
5.2.8. EGL limitations
5.3. EGL implementation information on Linux
5.3.1. Unimplemented functions
5.3.2. Resizing a native window
5.3.3. eglChooseConfig always selects configurations that use the back buffer
5.3.4. Some EGLConfig attributes are not supported
5.3.5. EGLConfigs not sorted
5.3.6. Attributes for windows not supported
5.3.7. Some Pbuffer attributes are not supported
5.3.8. Attributes for pixmaps not supported
5.3.9. Incorrect error code returned instead of EGL_BAD_MATCH
5.3.10. Limited results from surface queries
5.3.11. eglMakeCurrent succeeds with incompatible surface and contents
5.4. EGL implementation information on Mac OS X
5.4.1. Unimplemented functions
5.4.2. EGL configurations
5.4.3. Resizing a native window
5.4.4. Attributes for windows not supported
5.4.5. Some Pbuffer attributes are not supported
5.4.6. Attributes for pixmaps not supported
5.5. Using the Mesa software emulation of OpenGL
5.5.1. Setting the PATH variable in Windows
5.5.2. Setting the LD_LIBRARY_PATH variable in Linux

Proprietary Notice

Words and logos marked with ® or ™ are registered trademarks or trademarks of ARM® in the EU and other countries, except as otherwise stated below in this proprietary notice. Other brands and names mentioned herein may be the trademarks of their respective owners.

Neither the whole nor any part of the information contained in, or the product described in, this document may be adapted or reproduced in any material form except with the prior written permission of the copyright holder.

The product described in this document is subject to continuous developments and improvements. All particulars of the product and its use contained in this document are given by ARM in good faith. However, all warranties implied or expressed, including but not limited to implied warranties of merchantability, or fitness for purpose, are excluded.

This document is intended only to assist the reader in the use of the product. ARM shall not be liable for any loss or damage arising from the use of any information in this document, or any error or omission in such information, or any incorrect use of the product.

Where the term ARM is used it means “ARM or any of its subsidiaries as appropriate”.

Confidentiality Status

This document is Non-Confidential. The right to use, copy and disclose this document may be subject to license restrictions in accordance with the terms of the agreement entered into by ARM and the party that ARM delivered this document to.

Product Status

The information in this document is final, that is for a developed product.

Revision History
Revision A14 October 2009First release for v1.1
Revision B9 April 2010Updated for v1.2 Beta.
Revision C30 July 2010Updated for v1.2.0 release. Changed name of installation files.
Revision D22 July 2011Updated for v1.3.0 release. Added OpenGL ES 1.1 and OpenGL ES 2.0 interoperability and added information on MESA.
Revision E22 April 2012Updated for v1.3.1 release. Added Mac OS X support.
Copyright © 2009-2012 ARM. All rights reserved.ARM DUI 0511E
Non-ConfidentialID042812