2017-07-28 7 views
0

Threeループロードマネージャを使用して、requestionAnimationFrameアニメーションループを開始および停止します。Three.js:onLoad関数のブール値を変更できません

var loadingManager = new THREE.LoadingManager(); 
var isLoaded = new Boolean(); 

    loadingManager.onLoad = function() { 
     isLoaded = true; 
    }; 

    function startAnimationLoop() { 
     if (!runAnimation) { 
     runAnimation= animationDisplay.requestAnimationFrame(animate); 
     } 
    } 

    function stopAnimationLoop() { 
     if (runAnimation) { 
     animationDisplay.cancelAnimationFrame(runAnimation); 
     runAnimation= undefined; 
     } 
    } 

そして、これはレンダリングループ内で何です:私はこれ持って

if (isLoaded == true) { 
    startAnimationLoop(); //not working 
} else if (isLoaded == false) { 
    stopAnimationLoop(); 
} 

それはアニメーションループが起動しないようisLoadedonLoad機能でtrueに設定されていないようです。私はここで間違って何をしていますか?前もって感謝します。

答えて

1

、あなたは

loader.load('loadingManager', function (object) { } 

は、私はすでにこれを持って、このthree.js doc

+0

を参照してください。load関数を呼び出す必要がOBJLoader

var loader = new THREE.OBJLoader(loadingManager); 

のオブジェクトを作成する必要がありそれがなかったので、私はそれが含まれていませんでした私の質問には関係しません。 –

+0

onloadに警告を表示して、onloadが動作しているかどうかを確認します。 – Anil

+0

はい、動作しています。 –

関連する問題