From 4a5b32cbe1a3c1eb9981013f63243c2acabde583 Mon Sep 17 00:00:00 2001 From: Lawrence D'Oliveiro Date: Fri, 20 Jul 2012 03:57:39 +0000 Subject: [PATCH] at least the shader programs compile without errors... --- jni/gl_useful.c | 11 ++++++----- src/GLUseful.java | 3 ++- src/GeomBuilder.java | 2 ++ 3 files changed, 10 insertions(+), 6 deletions(-) diff --git a/jni/gl_useful.c b/jni/gl_useful.c index 972fc75..2e73050 100644 --- a/jni/gl_useful.c +++ b/jni/gl_useful.c @@ -1,6 +1,7 @@ /* Useful OpenGL stuff. This provides an alternative to the broken - android.opengl.GLES20.glGetShaderInfoLog routine. + android.opengl.GLES20.glGetShaderInfoLog routine on older Android + versions. Copyright 2012 by Lawrence D'Oliveiro . @@ -31,10 +32,10 @@ static jstring get_shader_info_log jobject this, jint shader_id ) - /* needed because android.opengl.GLES20.glGetShaderInfoLog doesn't return anything. - The bug appears to be that glGetShaderiv of GL_INFO_LOG_LENGTH returns 0, - according to this bug report , - so I must avoid using that. */ + /* needed because android.opengl.GLES20.glGetShaderInfoLog doesn't return anything, + at least on Android 2.2. The bug appears to be that glGetShaderiv of GL_INFO_LOG_LENGTH + returns 0, according to this bug report + , so I must avoid using that. */ { const size_t msgmax = 4096; /* should be plenty big enough */ char * const msg = calloc(1, msgmax); diff --git a/src/GLUseful.java b/src/GLUseful.java index bb7391e..f79292b 100644 --- a/src/GLUseful.java +++ b/src/GLUseful.java @@ -71,7 +71,8 @@ public class GLUseful ( int ShaderID ); - /* needed because android.opengl.GLES20.glGetShaderInfoLog doesn't return anything */ + /* needed because android.opengl.GLES20.glGetShaderInfoLog doesn't return anything, + at least on Android 2.2. */ /* Shader programs diff --git a/src/GeomBuilder.java b/src/GeomBuilder.java index 75ccef0..b0820ba 100644 --- a/src/GeomBuilder.java +++ b/src/GeomBuilder.java @@ -354,6 +354,8 @@ private static class UniformInfo /* vertex shader: */ VS.toString(), /* fragment shader: */ + "precision mediump float;\n" + + "varying vec4 front_color, back_color;\n" + "\n"