内存泄漏有three.js和许多形状

Wiz*_*Pip 3 javascript memory-leaks three.js

我创建了一些很快就会占用内存并死掉的代码.

我已将其削减到代码的圆环生成/删除部分.我已经检查过场景数组和我的圆环阵列的长度随着形状的移除而缩小,因此它们看起来管理得很好,但我不确定内存泄漏的位置.

有任何想法吗?

http://jsfiddle.net/eVwP3/

Wes*_*ley 11

webGLRenderer,删除网格后

scene.remove( mesh );
Run Code Online (Sandbox Code Playgroud)

你可以释放内存

mesh.dispose();
geometry.dispose();
material.dispose();
texture.dispose();
Run Code Online (Sandbox Code Playgroud)

请参阅http://threejs.org/examples/webgl_test_memory.htmlhttp://threejs.org/examples/webgl_test_memory2.html.

编辑:更新为three.js r.69

PS好演示.您可能需要考虑创建对象池并重用它们,而不是不断分配和取消分配.

  • 但是,是的,我会使用一个对象池(一个数组)并重用它们,而不是不断地创建和删除对象。 (2认同)