鍍金池/ 問答/HTML/ threejs中如何判斷所有模型加載完成?

threejs中如何判斷所有模型加載完成?

最近用到threeJs加載模型,單個(gè)的模型有onLoad回調(diào),但一般不會(huì)只加載一個(gè)模型,如何判斷所有模型加載完成呢?

回答
編輯回答
故林

你沒貼代碼,就用官網(wǎng)的例子吧

// instantiate a loader
var loader = new THREE.OBJLoader();

// load a resource
loader.load(
    // resource URL
    'models/monster.obj',
    // called when resource is loaded
    function ( object ) {

        scene.add( object );
        //你加載完模型,要把模型add到場(chǎng)景中吧
        //后面加個(gè)標(biāo)志判斷不就可以了,比如bool數(shù)組,或者map什么的,最簡(jiǎn)單的加載數(shù)量int也可以
        cnt += 1; //加載成功數(shù)+1
        if(cnt > 10) {//全部加載完
            //todo
        }
    },
    // called when loading is in progresses
    function ( xhr ) {

        console.log( ( xhr.loaded / xhr.total * 100 ) + '% loaded' );

    },
    // called when loading has errors
    function ( error ) {

        console.log( 'An error happened' );

    }
);
2017年10月1日 11:18