OSDN Git Service

simplify a bit the native-activity sample code
authorMathias Agopian <mathias@google.com>
Mon, 25 Oct 2010 01:29:48 +0000 (18:29 -0700)
committerMathias Agopian <mathias@google.com>
Tue, 26 Oct 2010 00:59:06 +0000 (17:59 -0700)
there is no reason to set a depth buffer. this is somewhat confusing.
also, it's better to always specify EGL_SURFACE_TYPE.

Change-Id: Ieff499b0b69a3812773cf3fe08b8bf1ca57a82d9

ndk/platforms/android-9/samples/native-activity/jni/main.c

index bdff031..919e412 100644 (file)
@@ -59,7 +59,7 @@ struct engine {
 static int engine_init_display(struct engine* engine) {
     // initialize opengl and egl
     const EGLint attribs[] = {
-            EGL_DEPTH_SIZE, 16,
+            EGL_SURFACE_TYPE, EGL_WINDOW_BIT,
             EGL_NONE
     };
     EGLint w, h, dummy;
@@ -72,6 +72,7 @@ static int engine_init_display(struct engine* engine) {
 
     eglInitialize(display, 0, 0);
     selectConfigForNativeWindow(display, attribs, engine->app->window, &config);
+
     surface = eglCreateWindowSurface(display, config, engine->app->window, NULL);
     context = eglCreateContext(display, config, NULL, NULL);
 
@@ -94,7 +95,7 @@ static int engine_init_display(struct engine* engine) {
     glHint(GL_PERSPECTIVE_CORRECTION_HINT, GL_FASTEST);
     glEnable(GL_CULL_FACE);
     glShadeModel(GL_SMOOTH);
-    glEnable(GL_DEPTH_TEST);
+    glDisable(GL_DEPTH_TEST);
 
     return 0;
 }
@@ -111,7 +112,7 @@ static void engine_draw_frame(struct engine* engine) {
     // Just fill the screen with a color.
     glClearColor(((float)engine->state.x)/engine->width, engine->state.angle,
             ((float)engine->state.y)/engine->height, 1);
-    glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
+    glClear(GL_COLOR_BUFFER_BIT);
 
     eglSwapBuffers(engine->display, engine->surface);
 }