playcanvas
Version:
Open-source WebGL/WebGPU 3D engine for the web
24 lines (21 loc) • 703 B
JavaScript
import { GlbContainerResource } from './glb-container-resource.js';
import { GlbParser } from './glb-parser.js';
class GlbModelParser {
parse(data, callback, asset) {
GlbParser.parse('filename.glb', '', data, this._device, this._assets, asset?.options ?? {}, (err, result)=>{
if (err) {
callback(err);
} else {
const model = GlbContainerResource.createModel(result, this._defaultMaterial);
result.destroy();
callback(null, model);
}
});
}
constructor(modelHandler){
this._device = modelHandler.device;
this._defaultMaterial = modelHandler.defaultMaterial;
this._assets = modelHandler.assets;
}
}
export { GlbModelParser };