OpenGL-ES
Line 9: | Line 9: | ||
* [http://www.amazon.com/Mobile-3D-Graphics-Kaufmann-Computer/dp/0123737273/ref=sr_1_1?ie=UTF8&s=books&qid=1235944663&sr=8-1 Mobile 3D graphics with OpenGL-ES and M3G"] | * [http://www.amazon.com/Mobile-3D-Graphics-Kaufmann-Computer/dp/0123737273/ref=sr_1_1?ie=UTF8&s=books&qid=1235944663&sr=8-1 Mobile 3D graphics with OpenGL-ES and M3G"] | ||
* [http://www.amazon.com/OpenGL-ES-2-0-Programming-Guide/dp/0321502795/ref=sr_1_1?ie=UTF8&s=books&qid=1235944783&sr=1-1 OpenGL ES 2.0 programming guide] | * [http://www.amazon.com/OpenGL-ES-2-0-Programming-Guide/dp/0321502795/ref=sr_1_1?ie=UTF8&s=books&qid=1235944783&sr=1-1 OpenGL ES 2.0 programming guide] | ||
+ | |||
+ | === Other documentation === | ||
+ | |||
+ | * [http://www.khronos.org/opengles/2_X/ Khronos OpenGL-ES documentation and specifications] | ||
=== Imagination Technologies SDK === | === Imagination Technologies SDK === |
Revision as of 15:09, 25 March 2009
Contents |
OpenGL-ES
Maemo OpenGL-ES
Books about OpenGL-ES
Other documentation
Imagination Technologies SDK
OpenGL variants
- OpenGL-1.0 has fixed shaders and fixed API to using them
- OpenGL-2.0 adds programable shaders but fixed pipeline api is still there for backward compatibility
- OpenGL-ES1.0 is OpenGL-1.0 with lot of "syntactic sugar". extra redundant API's removed and fractional integer API added
- OpenGL-ES2.0 is OpenGL-2.0 using programable shaders is mandatory, all old fixed pipeline API's removed
Porting between openGL variants
- OpenGL-1.0 application works with OpenGL-2.0 but not opposite
- OpenGL-1.0 application is possible to port to OpenGL-ES1.0 but needs work if it is using some of removed API's
- OpenGL-2.0 application that uses programable shaders is possible to port OpenGL-ES2.0 but may need so me work
- Porting OpenGL1.0 or OpenGL-ES1.0 applications to OpenGL-ES2.0 needs lot of rewrite to use programable shaders.
Compiling under scratchbox
To compile OpenGL-ES2.0 applivations you need to have package "libgles2-dev" installed. It is as standard, part of Fremantle aplha ARMEL but at the moment it is missing from x86 version. We try to get x86 equivalent opengl-es2 emulation library available soon.
To compile some of PoverVR tutorial examples, you can use following Makefile
CC=g++ CPPFLAGS = -DBUILD_OGLES2 LDFLAGS=-lEGL -lX11 -lGLESv2 all:OGLES2Texturing OGLES2BasicTnL OGLES2IntroducingPVRTools OGLES2HelloTriangle_LinuxX11 OGLES2HelloTriangle_LinuxX11:OGLES2HelloTriangle_LinuxX11.o OGLES2Texturing: PVRShellOS.o OGLES2Texturing.o PVRShell.o PVRShellAPI.o OGLES2BasicTnL: PVRShellOS.o OGLES2BasicTnL.o PVRShell.o PVRShellAPI.o OGLES2IntroducingPVRTools: PVRShellOS.o OGLES2IntroducingPVRTools.o PVRShell.o PVRShellAPI.o