Archivo por meses: mayo 2014

Create OpenGL ES context on Desktop

OpenGL ES es un API que nos permite generar gráficos 3D en dispositivos móviles, tales como Android o iOS. El desarrollo sobre estas plataformas se realiza en PCs o MACs de sobremesa y su ejecución se realiza sobre dispositivos conectados o sobre emuladores.

Si lo que deseamos es realizar pruebas sobre Shaders que renderizan la escena debemos instalar cada vez la aplicación, ya sea en el emulador o en el dispositivo. Esto provoca que el proceso de mejora de los Shaders sea lento. Una opción es desarrollar estos Shaders sobre el ordenador de sobremesa en OpenGL pero esto no nos asegura la compatibilidad y al tratar de migrarlo a OpenGL ES nos llevemos alguna sorpresa.

Una reciente extensión de OpenGL (Marzo 2012) nos permite crear contextos (ventanas) OpenGL ES en nuestro ordenador de sobremesa, dicha extensión es: GL_ARB_ES2_compatibility. Para crear el contexto OpenGL ES debemos crear primero un contexto OpenGL para tener acceso a las funciones de las extensiones.

De esta forma podremos recargar los Shaders en tiempo de ejecución. Necesario si se desea crear un editor para un GameEngine.

A continuación se proporciona el código fuente, esta compilado con Visual Studio 2010 SP1 y es necesaria la librería GLEW 1.10

GLES_Desktop