From: Lanius Trolling Date: Fri, 24 Feb 2023 17:30:43 +0000 (-0500) Subject: Optimize model loading 2 X-Git-Url: https://gitweb.starshipfights.net/?a=commitdiff_plain;h=2915f88dfb40705d5b09c8bd5895a7e94f13ec4e;p=factbooks Optimize model loading 2 --- diff --git a/src/main/resources/static/init.js b/src/main/resources/static/init.js index c4bfeff..b6d8673 100644 --- a/src/main/resources/static/init.js +++ b/src/main/resources/static/init.js @@ -67,10 +67,13 @@ }); window.addEventListener("load", function () { + const mtlLoader = (new THREE.MTLLoader()).setPath("/assets/meshes/").setResourcePath("/assets/meshes/"); + const objLoader = (new THREE.OBJLoader()).setPath("/assets/meshes/").setResourcePath("/assets/meshes/"); + async function loadObj(modelName) { - const mtlLib = await (new THREE.MTLLoader()).setPath("/assets/meshes/").setResourcePath("/assets/meshes/").loadAsync(modelName + ".mtl"); + const mtlLib = await mtlLoader.loadAsync(modelName + ".mtl"); mtlLib.preload(); - return await (new THREE.OBJLoader()).setPath("/assets/meshes/").setResourcePath("/assets/meshes/").setMaterials(mtlLib).loadAsync(modelName + ".obj"); + return await objLoader.setMaterials(mtlLib).loadAsync(modelName + ".obj"); } // Mesh viewing