循环生成几何挂起,内存似乎很好

时间:2013-08-20 11:27:11

标签: three.js webgl

如果我在这样的循环中生成Tubes

http://jsfiddle.net/crizzis/RYQty/1/

    for (var y = 0; y < 800; y++){...}

循环开始挂起并且无法完成,尽管主内存似乎没问题(任务管理器)并且GPU内存似乎也很好。

它挂在生成管几何体的循环中。它甚至没有渲染。

有谁知道这会怎么样?

奇怪的是700循环在5秒内完成,800循环完全没有或真的非常慢。

1 个答案:

答案 0 :(得分:0)

好吧,我只是看着你的小提琴,我不确定你的整个循环。 你在循环中创建了太多的东西。例如,参见材料。只需在循环外创建一次。 然后将vector [0]和[1]定义移到循环外部并在循环内部执行vector [0] .y =。所以你不要为每次运行创建2个Three.Vector3() - 对象。另外,将所有变量声明移到循环之外。就像var line一样;在里面,你做行= SPline ...... 接下来,为什么不在循环中创建整个Spline然后在循环之后,之后创建ONE TubeGeometry而不是创建数百个网格?好吧,我还是不知道你的用例。