public Object readBuffer(Integer bufferViewIndex, int byteOffset, int count, Object store,
            int numComponents, VertexBuffer.Format format) throws IOException {
        JsonObject bufferView = bufferViews.get(bufferViewIndex).getAsJsonObject();
        Integer bufferIndex = getAsInteger(bufferView, "buffer");
        assertNotNull(bufferIndex, "No buffer defined for bufferView " + bufferViewIndex);
        int bvByteOffset = getAsInteger(bufferView, "byteOffset", 0);
        Integer byteLength = getAsInteger(bufferView, "byteLength");
        assertNotNull(byteLength, "No byte length defined for bufferView " + bufferViewIndex);
        int byteStride = getAsInteger(bufferView, "byteStride", 0);

        // target defines ELEMENT_ARRAY_BUFFER or ARRAY_BUFFER,
        // but we already know that since we know we load the index buffer or any other...
        // Not sure it's useful for us, but I guess it's useful when you map data directly to the GPU.
        // int target = getAsInteger(bufferView, "target", 0);

        byte[] data = readData(bufferIndex);
        data = customContentManager.readExtensionAndExtras("bufferView", bufferView, data);

        if (store == null) {
            store = new byte[byteLength];
        }

        if (count == -1) {
            count = byteLength;
        }

        populateBuffer(store, data, count, byteOffset + bvByteOffset, byteStride, numComponents, format);

        return store;
    }
GLTF 2.0 loader
Created by Nehon on 07/08/2017.
jme3-plugins/src/gltf/java/com/jme3/scene/plugins/gltf/GltfLoader.java