2011-12-20 17 views
32

Estoy buscando aprender OpenGL ES 2.0 en Android y los tutoriales que he encontrado son casi todos para usar el SDK with Java. Sin embargo, quiero utilizar el código nativo, así que quiero hacerlo a través del NDK. El único tutorial/ejemplo que he encontrado es el material de muestra en el propio NDK.Android - tutoriales para OpenGL ES 2.0 utilizando el NDK?

¿Dónde puedo encontrar algunos tutoriales de NDK OpenGL ES 2.0? Si no hay buenos tutoriales, ¿es posible utilizar los tutoriales de Java OpenGL para aprender a usarlo en el NDK también? Por ejemplo, ¿los métodos asignan 1: 1 de java a nativo?

+5

Buena pregunta. Qué pena que no hubo respuesta. –

+1

Estoy en la misma situación en este momento. ¿Encontraste alguno? – ains

Respuesta

18

He creado un ejemplo sobre cómo combinar la IU hecha en Java con código NDK nativo que hace todo el renderizado OpenGL. Es posible prescindir de recurrir a llamadas GLSurfaceView y JNI para renderizar cada cuadro como hecho en la muestra NDK.

ver el código en https://github.com/tsaarni/android-native-egl-example

+0

Gran trabajo, tengo la muestra de prueba, realmente útil, gracias, pero, hay un problema en los mismos dispositivos, cuando configuro la pantallaOrientación en horizontal, parece opengl no representa ..., – chengpei

+0

¡Gracias! ¿Podría publicar un ticket de emisión en la página del proyecto y adjuntar el archivo log logcat? Lamentablemente, no tenía demasiados dispositivos para probar en ... – tsaarni

+1

@tsaarni, ¿Estás seguro de que tu proyecto usa 'OpenGL ES 2.0'? – CAMOBAP

4

Comprobar this link. Se trata de problemas NDK y OpenGL, así como muchos otros relacionados con la programación de motores de juegos y más. Lo encuentro muy interesante y útil.

+2

El enlace está muerto ... –

0

Google tiene un proyecto de ejemplo en GitHub que muestra cómo configurar un contexto EGL a partir del código nativo, usando SurfaceView creado en Java: Teapots sample. En particular, eche un vistazo a la aplicación y el código "más teteras" en ndk_helper para la creación de contexto.

Si desea trabajar sin ningún código de Java, a continuación, esta muestra debería ayudar a empezar: native activity

Editar: Además, este enlace da una visión general de alto nivel de la relación entre Java Surface, su contraparte nativa y EGL : EGLSurfaces and OpenGL ES

Cuestiones relacionadas