首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在BinaryLoader中使用showProgress标志来显示进度?

如何在BinaryLoader中使用showProgress标志来显示进度?
EN

Stack Overflow用户
提问于 2013-05-07 18:00:06
回答 1查看 949关注 0票数 2

我正在使用BinaryLoader加载相当大的3d模型(高达6MB),并且我想显示进度信息。

使用loader.showStatus已经是第一步(现在我的应用程序在模型加载时显示“加载”),但我想要显示模型已经加载的百分比。

在阅读BinaryLoader的代码时,我发现了'showProgress‘标志,但是如果我将它设置为true,我会得到多个类似下面这样的错误:

未捕获的错误: InvalidStateError: DOM异常11 xhr.onreadystatechange

在BinaryLoader.js:99行,它对应于:

callbackProgress( { total:长度,已加载: xhr.responseText.length } );

我也尝试过配置loader.onLoadProgress,但是我不知道该怎么做……

提前感谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-12-15 01:31:14

3年后,我遇到了和你一样的问题。以下是我的解决方案:

代码语言:javascript
复制
var onLoadComplete= function (geometry) {
    model = new THREE.Mesh(geometry, material);
    scene.add(model);
    //etc
};

var onLoadProgress = function (e) {
    var percentage = Math.round((e.loaded / e.total * 100));
    jQuery('#some-loader-div').html('Loading ' + percentage + '%')
};

loader.load(file_url, onLoadComplete, onLoadProgress);

参考:http://definitelytyped.org/docs/threejs--three/classes/three.jsonloader.html#onloadprogress

希望这对某些人有帮助!

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16416248

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档