public static void updateVBO(final AbstractBufferData<? extends Buffer> data, final RendererRecord rendRecord,
final int vboID, final int offsetBytes) {
if (data.isNeedsRefresh()) {
final Buffer dataBuffer = data.getBuffer();
dataBuffer.rewind();
LwjglRendererUtil.setBoundVBO(rendRecord, vboID);
if (dataBuffer instanceof FloatBuffer) {
ARBBufferObject.glBufferSubDataARB(ARBVertexBufferObject.GL_ARRAY_BUFFER_ARB, offsetBytes,
(FloatBuffer) dataBuffer);
} else if (dataBuffer instanceof ByteBuffer) {