@Override public void glBufferData (int target, int size, Buffer data, int usage) { if (data instanceof FloatBuffer) { gl.bufferData(target, copy((FloatBuffer)data), usage); } else if (data instanceof ShortBuffer) { gl.bufferData(target, copy((ShortBuffer)data), usage); } else { throw new GdxRuntimeException("Can only cope with FloatBuffer and ShortBuffer at the moment"); } }
@Override public void glBufferData (int target, int size, Buffer data, int usage) { if (data instanceof FloatBuffer) { gl.bufferData(target, copy((FloatBuffer)data), usage); } else if (data instanceof ShortBuffer) { gl.bufferData(target, copy((ShortBuffer)data), usage); } else { throw new GdxRuntimeException("Can only cope with FloatBuffer and ShortBuffer at the moment"); } }
@Override public void glBufferData (int target, int size, Buffer data, int usage) { if (data instanceof FloatBuffer) { gl.bufferData(target, copy((FloatBuffer)data), usage); } else if (data instanceof ShortBuffer) { gl.bufferData(target, copy((ShortBuffer)data), usage); } else if (data instanceof IntBuffer) { gl.bufferData(target, copy((IntBuffer)data), usage); } else { throw new ParallaxRuntimeException("Can only cope with FloatBuffer and ShortBuffer at the moment, buffer: " + data.getClass().getCanonicalName()); } }
@Override public void glBufferData (int target, int size, Buffer data, int usage) { if (data instanceof FloatBuffer) { gl.bufferData(target, copy((FloatBuffer)data), usage); } else if (data instanceof ShortBuffer) { gl.bufferData(target, copy((ShortBuffer)data), usage); } else { throw new GdxRuntimeException("Can only cope with FloatBuffer and ShortBuffer at the moment"); } }
@Override public void glBufferData(int target, int byteSize, Buffer data, int usage) { if (target == GL_ARRAY_BUFFER) { if (requestedArrayBuffer != boundArrayBuffer) { gl.bindBuffer(target, requestedArrayBuffer); boundArrayBuffer = requestedArrayBuffer; } } else if (target == GL_ELEMENT_ARRAY_BUFFER) { if (requestedElementArrayBuffer != boundElementArrayBuffer) { gl.bindBuffer(target, requestedElementArrayBuffer); boundElementArrayBuffer = requestedElementArrayBuffer; } } gl.bufferData(target, getTypedArray(data, GL_BYTE, byteSize), usage); }
@Override public void glBufferData(int target, int byteSize, Buffer data, int usage) { if (target == GL_ARRAY_BUFFER) { if (requestedArrayBuffer != boundArrayBuffer) { gl.bindBuffer(target, requestedArrayBuffer); boundArrayBuffer = requestedArrayBuffer; } } else if (target == GL_ELEMENT_ARRAY_BUFFER) { if (requestedElementArrayBuffer != boundElementArrayBuffer) { gl.bindBuffer(target, requestedElementArrayBuffer); boundElementArrayBuffer = requestedElementArrayBuffer; } } gl.bufferData(target, getTypedArray(data, GL_BYTE, byteSize), usage); }
@Override public void glBufferData(int target, int byteSize, Buffer data, int usage) { if (target == GL_ARRAY_BUFFER) { if (requestedArrayBuffer != boundArrayBuffer) { gl.bindBuffer(target, requestedArrayBuffer); boundArrayBuffer = requestedArrayBuffer; } } else if (target == GL_ELEMENT_ARRAY_BUFFER) { if (requestedElementArrayBuffer != boundElementArrayBuffer) { gl.bindBuffer(target, requestedElementArrayBuffer); boundElementArrayBuffer = requestedElementArrayBuffer; } } gl.bufferData(target, getTypedArray(data, GL_BYTE, byteSize), usage); }
@Override public void glDrawElements(int mode, int count, int type, Buffer indices) { prepareDraw(); if (boundElementArrayBuffer != elementBuffer) { gl.bindBuffer(ELEMENT_ARRAY_BUFFER, elementBuffer); boundElementArrayBuffer = elementBuffer; } gl.bufferData(ELEMENT_ARRAY_BUFFER, getTypedArray(indices, type, count * getTypeSize(type)), STREAM_DRAW); // if ("ModelPart".equals(debugInfo)) { // HtmlPlatform.log.info("drawElements f. ModelPart; count: " + count); // } gl.drawElements(mode, count, type, 0); }
@Override public void glDrawElements(int mode, int count, int type, Buffer indices) { prepareDraw(); if (boundElementArrayBuffer != elementBuffer) { gl.bindBuffer(ELEMENT_ARRAY_BUFFER, elementBuffer); boundElementArrayBuffer = elementBuffer; } gl.bufferData(ELEMENT_ARRAY_BUFFER, getTypedArray(indices, type, count * getTypeSize(type)), STREAM_DRAW); // if ("ModelPart".equals(debugInfo)) { // HtmlPlatform.log.info("drawElements f. ModelPart; count: " + count); // } gl.drawElements(mode, count, type, 0); }
@Override public void glDrawElements(int mode, int count, int type, Buffer indices) { prepareDraw(); if (boundElementArrayBuffer != elementBuffer) { gl.bindBuffer(ELEMENT_ARRAY_BUFFER, elementBuffer); boundElementArrayBuffer = elementBuffer; } gl.bufferData(ELEMENT_ARRAY_BUFFER, getTypedArray(indices, type, count * getTypeSize(type)), STREAM_DRAW); // if ("ModelPart".equals(debugInfo)) { // HtmlPlatform.log.info("drawElements f. ModelPart; count: " + count); // } gl.drawElements(mode, count, type, 0); }
if (data.nioBufferPosition * elementSize < data.stride) { data.nioBuffer.position(0); gl.bufferData(ARRAY_BUFFER, getTypedArray(data.nioBuffer, data.type, data.nioBufferLimit * elementSize), STREAM_DRAW); gl.vertexAttribPointer(i, data.size, data.type, data.normalize, data.stride, } else { data.nioBuffer.position(data.nioBufferPosition); gl.bufferData(ARRAY_BUFFER, getTypedArray(data.nioBuffer, data.type, (data.nioBufferLimit - data.nioBufferPosition) * elementSize), STREAM_DRAW);
if (data.nioBufferPosition * elementSize < data.stride) { data.nioBuffer.position(0); gl.bufferData(ARRAY_BUFFER, getTypedArray(data.nioBuffer, data.type, data.nioBufferLimit * elementSize), STREAM_DRAW); gl.vertexAttribPointer(i, data.size, data.type, data.normalize, data.stride, } else { data.nioBuffer.position(data.nioBufferPosition); gl.bufferData(ARRAY_BUFFER, getTypedArray(data.nioBuffer, data.type, (data.nioBufferLimit - data.nioBufferPosition) * elementSize), STREAM_DRAW);
if (data.nioBufferPosition * elementSize < data.stride) { data.nioBuffer.position(0); gl.bufferData(ARRAY_BUFFER, getTypedArray(data.nioBuffer, data.type, data.nioBufferLimit * elementSize), STREAM_DRAW); gl.vertexAttribPointer(i, data.size, data.type, data.normalize, data.stride, } else { data.nioBuffer.position(data.nioBufferPosition); gl.bufferData(ARRAY_BUFFER, getTypedArray(data.nioBuffer, data.type, (data.nioBufferLimit - data.nioBufferPosition) * elementSize), STREAM_DRAW);
gl.bufferData(ARRAY_BUFFER, (12 + 8) * Float32Array.BYTES_PER_ELEMENT, STATIC_DRAW); indexBuffer = gl.createBuffer(); gl.bindBuffer(ELEMENT_ARRAY_BUFFER, indexBuffer); gl.bufferData(ELEMENT_ARRAY_BUFFER, ArrayUtils.createInt32Array(indices), STREAM_DRAW);
gl.bufferData(ARRAY_BUFFER, (12 + 8) * Float32Array.BYTES_PER_ELEMENT, STATIC_DRAW); indexBuffer = gl.createBuffer(); gl.bindBuffer(ELEMENT_ARRAY_BUFFER, indexBuffer); gl.bufferData(ELEMENT_ARRAY_BUFFER, ArrayUtils.createInt32Array(indices), STREAM_DRAW);
gl.bufferData(ARRAY_BUFFER, (12 + 8) * Float32Array.BYTES_PER_ELEMENT, STATIC_DRAW); indexBuffer = gl.createBuffer(); gl.bindBuffer(ELEMENT_ARRAY_BUFFER, indexBuffer); gl.bufferData(ELEMENT_ARRAY_BUFFER, ArrayUtils.createInt32Array(indices), STREAM_DRAW);