代码之家  ›  专栏  ›  技术社区  ›  user3271566

在不影响UI的情况下,将外部几何图形加载到Three.js中的最佳和最快方法是什么

  •  2
  • user3271566  · 技术社区  · 12 年前

    目前,我正在将许多.obj文件(总共20MB)加载到Three.js中。当加载文件时,一切都正常,但问题是,Three.js需要大约25秒来加载和处理数据,用户无法与页面交互,这是非常不正常的。
    这些文件只包含几何图形、无动画和材质,所以我想知道是否有更好的方法将几何图形加载到Three.JS中。
    我希望有人能给我一个提示。

    2 回复  |  直到 12 年前
        1
  •  4
  •   Leeft    12 年前

    尝试 examples/js/loaders/ctm/CTMLoader.js 因为这样可以非常有效地包装物体。您可以使用工具转换对象,该工具位于 http://openctm.sourceforge.net/

    我认为,当模型插入场景中时,您无法避免UI冻结,但OpenCTM确实应该减少这个问题。有一个 examples/js/loaders/ctm/CTMWorker.js

    现场示例: http://threejs.org/examples/#webgl_loader_ctm http://threejs.org/examples/#webgl_loader_ctm_materials

        2
  •  -2
  •   Community Mohan Dere    9 年前

    我刚开始三点

    但我想这可能会对你有所帮助

    http://threejs.org/docs/index.html#Reference/Loaders/Loader .addStatusElement()可以用作加载几何图形的调试工具

    关于减少加载时间,本网站解释了“使用单个绘制调用绘制多个对象”(但不使用.obj文件) http://www.html5rocks.com/en/tutorials/webgl/million_letters/#toc-efficientwebgl

    关于“缓冲几何体”,以下问题的答案给出了关于“Verold Studio”的缓冲几何体的简要概述 http://www.verold.com/

    Fastest method to load a large number of objects in Three.js?

    感谢您的建议@Armam 我删除了我的回答,只是为了感谢你的建议。(您可以删除此评论) 如果不是太麻烦的话,你能建议我如何用更简洁的方式重新编排这个问题吗 https://stackoverflow.com/questions/25312778/i-need-help-understanding-the-math-in-a-three-js-simple-animation

    @spencer7593谢谢你的意见,我还没学会问好问题,但我真的很感谢你的建议。