From 20953f91414237670225fa7ec18390f022608608 Mon Sep 17 00:00:00 2001 From: Josh Holtrop Date: Sat, 1 Dec 2012 09:50:45 -0500 Subject: [PATCH] draw other side of tile when rotation completes --- assets/shaders/fragment.glsl | 3 ++- src/com/homelinux/holtrop/opengltest/MyRenderer.java | 3 +++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/assets/shaders/fragment.glsl b/assets/shaders/fragment.glsl index 35ee8d4..2453774 100644 --- a/assets/shaders/fragment.glsl +++ b/assets/shaders/fragment.glsl @@ -1,7 +1,8 @@ +uniform bool side; varying vec3 color_i; void main() { - gl_FragColor = vec4(color_i, 1); + gl_FragColor = vec4(side ? color_i.bgr : color_i, 1); } diff --git a/src/com/homelinux/holtrop/opengltest/MyRenderer.java b/src/com/homelinux/holtrop/opengltest/MyRenderer.java index e42047c..679505c 100644 --- a/src/com/homelinux/holtrop/opengltest/MyRenderer.java +++ b/src/com/homelinux/holtrop/opengltest/MyRenderer.java @@ -233,6 +233,9 @@ public class MyRenderer implements GLSurfaceView.Renderer GLES20.glUniformMatrix4fv( GLES20.glGetUniformLocation(m_program, "modelview"), 1, false, m_modelview, 0); + GLES20.glUniform1i( + GLES20.glGetUniformLocation(m_program, "side"), + t.side ? 1 : 0); GLES20.glDrawArrays(GLES20.GL_TRIANGLE_FAN, 0, 4); checkGLError("glDrawArrays");