【问题标题】:ColladaLoader and progressCallbackColladaLoader 和 progressCallback
【发布时间】:2014-03-06 11:30:18
【问题描述】:

ColladaLoader 中实现加载条的正确方法是什么?

源码显示加载器采用三个参数。一个是progressCallback

progressCallback( { total: length, loaded: request.responseText.length } );

如果我调用 progressCallback 的函数来显示值,total 将显示为 null,而 loaded 会上升到 5,200,000。

function(callback){    
    console.log(callback.loaded + ' / ' + callback.total);
}

如何使用ColladaLoader 附加某种已加载元素百分比

【问题讨论】:

  • 您在运行本地服务器吗?如果不是,那可能就是问题所在。见github.com/mrdoob/three.js/wiki/How-to-run-things-locally
  • @WestLangley 我没有加载 collada 文件的问题。我需要一种方法来确定加载元素的百分比,以显示带有加载栏的加载屏幕。我找不到有关如何使用progressCallback 函数的信息。
  • 我的问题的答案是什么?
  • @WestLangley 是的,我正在运行本地服务器。
  • 好的。很公平。作为文件加载时,我能够重现您的问题。运行服务器时,您的代码适用于我。

标签: javascript three.js loader collada


【解决方案1】:

查看ColladaLoader.js的源代码,看起来progressCallback函数会检查您的collada文件中的字符总数(5,200,000)和读取的字符数

你可以通过使用获得百分比

var percent = Math.round(callback.loaded / callback.total) * 100;

您的百分比从一个数字跳到另一个数字很可能是因为它在本地被调用或部分数据被缓存。如果您从服务器运行,您的百分比将逐渐更新。

WestLangley 是正确的,总数只会显示在服务器或本地服务器上,如果作为文件打开,则显示为 null。这是因为 Ajax 向服务器发送了一个请求。

【讨论】:

    猜你喜欢
    • 2013-02-25
    • 2014-03-26
    • 2014-06-07
    • 2018-06-02
    • 2012-02-18
    • 2013-03-02
    • 2018-08-29
    • 2012-07-29
    • 2013-10-31
    相关资源
    最近更新 更多