我正在使用Three.js Loading Manager来启动和停止我的requestionAnimationFrame
动画循环。我有这个:
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();
}
isLoaded
函数似乎未将onLoad
设置为true,因为动画循环无法启动。我在这做错了什么?提前谢谢。
答案 0 :(得分:1)
需要制作OBJLoader的对象
var loader = new THREE.OBJLoader( loadingManager );
然后你需要调用加载函数
loader.load( 'loadingManager', function ( object ) { }
参考此three.js doc