@Override public void glBindBuffer(int param1, int param2) { GLContext.getCurrentGL().glBindBuffer(param1, param2); }
@Override public void bindBuffer(int target, int buffer) { gl.glBindBuffer(target, buffer); }
public void doLoadElementIntBuffer(GL gl, int indexSize, IntBuffer indices) { gl.glGenBuffers(1, elementName, 0); gl.glBindBuffer(GL.GL_ELEMENT_ARRAY_BUFFER, elementName[0]); gl.glBufferData(GL.GL_ELEMENT_ARRAY_BUFFER, indexSize, indices, GL.GL_STATIC_DRAW); gl.glBindBuffer(GL.GL_ELEMENT_ARRAY_BUFFER, pointer); }
public void doLoadArrayFloatBuffer(GL gl, int vertexSize, FloatBuffer vertices) { gl.glGenBuffers(1, arrayName, 0); gl.glBindBuffer(GL.GL_ARRAY_BUFFER, arrayName[0]); gl.glBufferData(GL.GL_ARRAY_BUFFER, vertexSize, vertices, GL.GL_STATIC_DRAW); gl.glBindBuffer(GL.GL_ARRAY_BUFFER, pointer); }
public void bind() { mGLAttribute.getGL().glBindBuffer(GL.GL_ARRAY_BUFFER, mVertexAttributeBuffersId[0]); }
public void unbind() { mGLInterface.getGL().glBindBuffer(GL2ES3.GL_PIXEL_UNPACK_BUFFER, 0); }
public void unbind() { mGLAttribute.getGL().glBindBuffer(GL.GL_ARRAY_BUFFER, 0); }
@Override public void glBindBuffer(int param1, int param2) { GLContext.getCurrentGL().glBindBuffer(param1, param2); }
public void bind() { mGLInterface.getGL().glBindBuffer(GL2ES3.GL_PIXEL_UNPACK_BUFFER, getId()); }
public void updateIndices(IntBuffer pIndexBuffer) { if (!isDynamic()) throw new UnsupportedOperationException("Cannot update non dynamic buffers!"); mStoredIndexCount = pIndexBuffer.remaining(); getGL().getGL3().glBindVertexArray(mVertexArrayObject[0]); getGL().glBindBuffer(GL.GL_ELEMENT_ARRAY_BUFFER, mIndexBuffer[0]); getGL().glBufferSubData(GL.GL_ELEMENT_ARRAY_BUFFER, 0, pIndexBuffer.limit() * (Integer.SIZE / Byte.SIZE), pIndexBuffer); getGL().getGL3().glBindVertexArray(0); getGL().glBindBuffer(GL.GL_ELEMENT_ARRAY_BUFFER, 0); }
@Override public final boolean bindBuffer(final GL gl, final boolean bind) { if( !ad.isVBO() ) { return false; } if(bind) { // always bind and refresh the VBO mgr, // in case more than one gl*Pointer objects are in use gl.glBindBuffer(ad.getVBOTarget(), ad.getVBOName()); if(!ad.isVBOWritten()) { final Buffer buffer = ad.getBuffer(); if(null!=buffer) { gl.glBufferData(ad.getVBOTarget(), buffer.limit() * ad.getComponentSizeInBytes(), buffer, ad.getVBOUsage()); } ad.setVBOWritten(true); } } else { gl.glBindBuffer(ad.getVBOTarget(), 0); } return true; }
@Override public final boolean bindBuffer(final GL gl, final boolean bind) { if( !ad.isVBO() ) { return false; } if(bind) { // always bind and refresh the VBO mgr, // in case more than one gl*Pointer objects are in use gl.glBindBuffer(ad.getVBOTarget(), ad.getVBOName()); if(!ad.isVBOWritten()) { final Buffer buffer = ad.getBuffer(); if(null!=buffer) { gl.glBufferData(ad.getVBOTarget(), buffer.limit() * ad.getComponentSizeInBytes(), buffer, ad.getVBOUsage()); } ad.setVBOWritten(true); } } else { gl.glBindBuffer(ad.getVBOTarget(), 0); } return true; }
public void setIndicesAndCreateBuffer(IntBuffer pIndexBuffer) { mStoredIndexCount = pIndexBuffer.remaining(); getGL().getGL3().glBindVertexArray(mVertexArrayObject[0]); getGL().glBindBuffer(GL.GL_ELEMENT_ARRAY_BUFFER, mIndexBuffer[0]); getGL().glBufferData(GL.GL_ELEMENT_ARRAY_BUFFER, pIndexBuffer.limit() * (Integer.SIZE / Byte.SIZE), pIndexBuffer, isDynamic() ? GL.GL_DYNAMIC_DRAW : GL.GL_STATIC_DRAW); getGL().getGL3().glBindVertexArray(0); getGL().glBindBuffer(GL.GL_ELEMENT_ARRAY_BUFFER, 0); }
public void addIndexArray(final GLVertexAttributeArray pGLVertexAttributeArray, final IntBuffer pIndexBuffer) { bind(); getGL().glBindBuffer(GL.GL_ELEMENT_ARRAY_BUFFER, pGLVertexAttributeArray.getId(1)); getGL().glBufferData(GL.GL_ELEMENT_ARRAY_BUFFER, pIndexBuffer.remaining() * (Integer.SIZE / 8) + 1, pIndexBuffer, GL.GL_STATIC_DRAW); mIndexCount = pIndexBuffer.remaining(); }
public void updateNormals(FloatBuffer pNormalBuffer) { if (!isDynamic()) throw new UnsupportedOperationException("Cannot update non dynamic buffers!"); getGL().getGL3().glBindVertexArray(mVertexArrayObject[0]); getGL().glBindBuffer(GL.GL_ARRAY_BUFFER, mVertexBuffers[1]); getGL().getGL3().glEnableVertexAttribArray(1); getGL().glBufferSubData(GL.GL_ARRAY_BUFFER, 0, pNormalBuffer.limit() * (Float.SIZE / Byte.SIZE), pNormalBuffer); getGL().getGL3().glVertexAttribPointer(1, mGeometrySize, GL.GL_FLOAT, false, 0, 0); getGL().getGL3().glBindVertexArray(0); getGL().glBindBuffer(GL.GL_ARRAY_BUFFER, 0); }
public void setTextureCoordsAndCreateBuffer(FloatBuffer pTextureCoordsBuffer) { getGL().getGL3().glBindVertexArray(mVertexArrayObject[0]); getGL().glBindBuffer(GL.GL_ARRAY_BUFFER, mVertexBuffers[2]); getGL().getGL3().glEnableVertexAttribArray(2); getGL().glBufferData(GL.GL_ARRAY_BUFFER, pTextureCoordsBuffer.limit() * (Float.SIZE / Byte.SIZE), pTextureCoordsBuffer, isDynamic() ? GL.GL_DYNAMIC_DRAW : GL.GL_STATIC_DRAW); getGL().getGL3().glVertexAttribPointer(2, mTextureCoordSize, GL.GL_FLOAT, false, 0, 0); getGL().getGL3().glBindVertexArray(0); getGL().glBindBuffer(GL.GL_ARRAY_BUFFER, 0); }
public void updateVertices(FloatBuffer pVertexBuffer) { mStoredPrimitiveCount = pVertexBuffer.remaining() / mGeometrySize; if (!isDynamic()) throw new UnsupportedOperationException("Cannot update non dynamic buffers!"); getGL().getGL3().glBindVertexArray(mVertexArrayObject[0]); getGL().glBindBuffer(GL.GL_ARRAY_BUFFER, mVertexBuffers[0]); getGL().getGL3().glEnableVertexAttribArray(0); getGL().glBufferData(GL.GL_ARRAY_BUFFER, pVertexBuffer.limit() * (Float.SIZE / Byte.SIZE), pVertexBuffer, isDynamic() ? GL.GL_DYNAMIC_DRAW : GL.GL_STATIC_DRAW); getGL().getGL3().glVertexAttribPointer(0, mGeometrySize, GL.GL_FLOAT, false, 0, 0); getGL().getGL3().glBindVertexArray(0); getGL().glBindBuffer(GL.GL_ARRAY_BUFFER, 0); }
public void setNormalsAndCreateBuffer(FloatBuffer pNormalBuffer) { getGL().getGL3().glBindVertexArray(mVertexArrayObject[0]); getGL().glBindBuffer(GL.GL_ARRAY_BUFFER, mVertexBuffers[1]); getGL().getGL3().glEnableVertexAttribArray(1); getGL().glBufferData(GL.GL_ARRAY_BUFFER, pNormalBuffer.limit() * (Float.SIZE / Byte.SIZE), pNormalBuffer, isDynamic() ? GL.GL_DYNAMIC_DRAW : GL.GL_STATIC_DRAW); getGL().getGL3().glVertexAttribPointer(1, mGeometrySize, GL.GL_FLOAT, false, 0, 0); getGL().getGL3().glBindVertexArray(0); getGL().glBindBuffer(GL.GL_ARRAY_BUFFER, 0); }
public void setVerticesAndCreateBuffer(FloatBuffer pVertexBuffer) { mStoredPrimitiveCount = pVertexBuffer.remaining() / mGeometrySize; getGL().getGL3().glBindVertexArray(mVertexArrayObject[0]); getGL().glBindBuffer(GL.GL_ARRAY_BUFFER, mVertexBuffers[0]); getGL().getGL3().glEnableVertexAttribArray(0); getGL().glBufferData(GL.GL_ARRAY_BUFFER, pVertexBuffer.limit() * (Float.SIZE / Byte.SIZE), pVertexBuffer, isDynamic() ? GL.GL_DYNAMIC_DRAW : GL.GL_STATIC_DRAW); getGL().getGL3().glVertexAttribPointer(0, mGeometrySize, GL.GL_FLOAT, false, 0, 0); getGL().getGL3().glBindVertexArray(0); getGL().glBindBuffer(GL.GL_ARRAY_BUFFER, 0); }
public void updateTextureCoords(FloatBuffer pTextureCoordsBuffer) { if (!isDynamic()) throw new UnsupportedOperationException("Cannot update non dynamic buffers!"); getGL().getGL3().glBindVertexArray(mVertexArrayObject[0]); GLError.printGLErrors(getGL(), "1"); getGL().getGL3().glBindBuffer(GL.GL_ARRAY_BUFFER, mVertexBuffers[2]); GLError.printGLErrors(getGL(), "2"); getGL().getGL3().glEnableVertexAttribArray(2); GLError.printGLErrors(getGL(), "3"); getGL().glBufferSubData(GL.GL_ARRAY_BUFFER, 0, pTextureCoordsBuffer.limit() * (Float.SIZE / Byte.SIZE), pTextureCoordsBuffer); GLError.printGLErrors(getGL(), "4"); getGL().getGL3().glVertexAttribPointer(2, mTextureCoordSize, GL.GL_FLOAT, false, 0, 0); GLError.printGLErrors(getGL(), "5"); getGL().getGL3().glBindVertexArray(0); GLError.printGLErrors(getGL(), "6"); getGL().glBindBuffer(GL.GL_ARRAY_BUFFER, 0); GLError.printGLErrors(getGL(), "7"); }