drawing quad, but using pos as color
This commit is contained in:
parent
51564fcede
commit
d1b87e3ec6
@ -12,9 +12,9 @@ import android.util.Log;
|
||||
|
||||
public class MyRenderer implements GLSurfaceView.Renderer
|
||||
{
|
||||
private int m_quad_attrib_buffer;
|
||||
private int m_program;
|
||||
private final String DBGTAG = "JoshsOpenGL";
|
||||
private FloatBuffer m_quad_attrib_buffer;
|
||||
|
||||
public void checkGLError(String glOperation)
|
||||
{
|
||||
@ -54,16 +54,9 @@ public class MyRenderer implements GLSurfaceView.Renderer
|
||||
checkGLError("onSurfaceCreated");
|
||||
ByteBuffer bb = ByteBuffer.allocateDirect(attribs.length * 4);
|
||||
bb.order(ByteOrder.nativeOrder());
|
||||
FloatBuffer fb = bb.asFloatBuffer();
|
||||
fb.put(attribs);
|
||||
fb.position(0);
|
||||
int[] buffers = {0};
|
||||
GLES20.glGenBuffers(1, buffers, 0);
|
||||
checkGLError("glGenBuffers");
|
||||
m_quad_attrib_buffer = buffers[0];
|
||||
GLES20.glBindBuffer(GLES20.GL_ARRAY_BUFFER, m_quad_attrib_buffer);
|
||||
GLES20.glBufferData(GLES20.GL_ARRAY_BUFFER, 0, fb,
|
||||
GLES20.GL_STATIC_DRAW);
|
||||
m_quad_attrib_buffer = bb.asFloatBuffer();
|
||||
m_quad_attrib_buffer.put(attribs);
|
||||
m_quad_attrib_buffer.position(0);
|
||||
|
||||
final String v_shader_src =
|
||||
"attribute vec3 pos;" +
|
||||
@ -101,7 +94,6 @@ public class MyRenderer implements GLSurfaceView.Renderer
|
||||
GLES20.glClear(GLES20.GL_COLOR_BUFFER_BIT);
|
||||
|
||||
GLES20.glUseProgram(m_program);
|
||||
GLES20.glBindBuffer(GLES20.GL_ARRAY_BUFFER, m_quad_attrib_buffer);
|
||||
checkGLError("glBindBuffer");
|
||||
int attr_pos = GLES20.glGetAttribLocation(m_program, "pos");
|
||||
int attr_color = GLES20.glGetAttribLocation(m_program, "color");
|
||||
@ -109,9 +101,9 @@ public class MyRenderer implements GLSurfaceView.Renderer
|
||||
GLES20.glEnableVertexAttribArray(attr_color);
|
||||
checkGLError("glEnableVertexAttribArray");
|
||||
GLES20.glVertexAttribPointer(attr_pos, 3, GLES20.GL_FLOAT, false,
|
||||
6 * 4, 0);
|
||||
6 * 4, m_quad_attrib_buffer);
|
||||
GLES20.glVertexAttribPointer(attr_color, 3, GLES20.GL_FLOAT, false,
|
||||
6 * 4, 3 * 4);
|
||||
6 * 4, m_quad_attrib_buffer);
|
||||
checkGLError("glVertexAttribPointer");
|
||||
GLES20.glDrawArrays(GLES20.GL_TRIANGLE_FAN, 0, 4);
|
||||
checkGLError("glDrawArrays");
|
||||
|
Loading…
x
Reference in New Issue
Block a user