gltf-pipeline
Version:
Content pipeline tools for optimizing glTF assets.
32 lines (29 loc) • 783 B
JavaScript
const addToArray = require('./addToArray');
module.exports = addBuffer;
/**
* Adds buffer to gltf.
*
* @param {Object} gltf A javascript object containing a glTF asset.
* @param {Buffer} buffer A Buffer object which will be added to gltf.buffers.
* @returns {Number} The bufferView id of the newly added bufferView.
*
* @private
*/
function addBuffer(gltf, buffer) {
const newBuffer = {
byteLength: buffer.length,
extras: {
_pipeline: {
source: buffer
}
}
};
const bufferId = addToArray(gltf.buffers, newBuffer);
const bufferView = {
buffer: bufferId,
byteOffset: 0,
byteLength: buffer.length
};
return addToArray(gltf.bufferViews, bufferView);
}
;