spinning quad!
This commit is contained in:
parent
3450798278
commit
65b4301c71
@ -1,11 +1,12 @@
|
|||||||
|
|
||||||
uniform mat4 projection;
|
uniform mat4 projection;
|
||||||
|
uniform mat4 modelview;
|
||||||
attribute vec3 pos;
|
attribute vec3 pos;
|
||||||
attribute vec3 color;
|
attribute vec3 color;
|
||||||
varying vec3 color_i;
|
varying vec3 color_i;
|
||||||
|
|
||||||
void main()
|
void main()
|
||||||
{
|
{
|
||||||
gl_Position = projection * vec4(pos * 0.75, 1);
|
gl_Position = projection * modelview * vec4(pos * 0.75, 1);
|
||||||
color_i = color;
|
color_i = color;
|
||||||
}
|
}
|
||||||
|
@ -13,7 +13,5 @@ public class MyGLSurfaceView extends GLSurfaceView
|
|||||||
setEGLContextClientVersion(2);
|
setEGLContextClientVersion(2);
|
||||||
|
|
||||||
setRenderer(new MyRenderer(am));
|
setRenderer(new MyRenderer(am));
|
||||||
|
|
||||||
setRenderMode(GLSurfaceView.RENDERMODE_WHEN_DIRTY);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -15,6 +15,7 @@ import java.io.InputStreamReader;
|
|||||||
import java.io.BufferedReader;
|
import java.io.BufferedReader;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import android.opengl.Matrix;
|
import android.opengl.Matrix;
|
||||||
|
import android.os.SystemClock;
|
||||||
|
|
||||||
public class MyRenderer implements GLSurfaceView.Renderer
|
public class MyRenderer implements GLSurfaceView.Renderer
|
||||||
{
|
{
|
||||||
@ -23,6 +24,7 @@ public class MyRenderer implements GLSurfaceView.Renderer
|
|||||||
private FloatBuffer m_quad_attrib_buffer;
|
private FloatBuffer m_quad_attrib_buffer;
|
||||||
private AssetManager m_asset_manager;
|
private AssetManager m_asset_manager;
|
||||||
private float m_proj_matrix[] = new float[16];
|
private float m_proj_matrix[] = new float[16];
|
||||||
|
private float m_modelview[] = new float[16];
|
||||||
|
|
||||||
public MyRenderer(AssetManager am)
|
public MyRenderer(AssetManager am)
|
||||||
{
|
{
|
||||||
@ -115,7 +117,12 @@ public class MyRenderer implements GLSurfaceView.Renderer
|
|||||||
{
|
{
|
||||||
GLES20.glClear(GLES20.GL_COLOR_BUFFER_BIT);
|
GLES20.glClear(GLES20.GL_COLOR_BUFFER_BIT);
|
||||||
|
|
||||||
checkGLError("glBindBuffer");
|
long time = SystemClock.uptimeMillis() % 4000L;
|
||||||
|
float angle = 0.090f * ((int) time);
|
||||||
|
Matrix.setRotateM(m_modelview, 0, angle, 0, 0, 1);
|
||||||
|
GLES20.glUniformMatrix4fv(
|
||||||
|
GLES20.glGetUniformLocation(m_program, "modelview"),
|
||||||
|
1, false, m_modelview, 0);
|
||||||
int attr_pos = GLES20.glGetAttribLocation(m_program, "pos");
|
int attr_pos = GLES20.glGetAttribLocation(m_program, "pos");
|
||||||
int attr_color = GLES20.glGetAttribLocation(m_program, "color");
|
int attr_color = GLES20.glGetAttribLocation(m_program, "color");
|
||||||
GLES20.glEnableVertexAttribArray(attr_pos);
|
GLES20.glEnableVertexAttribArray(attr_pos);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user