2014-05-03 32 views
1

我需要在3D图上重新绘制轴标签(实施为精灵),为此,需要在添加更新的标签之前删除旧标签。然而,这让我感到悲伤:旧标签拒绝离开现场!我使用three.js所释放66无法从three.js场景中删除精灵?

测试此与three.js所示例场景在这里:http://threejs.org/examples/#webgl_sprites我只需添加如下代码:

setInterval(removesprites, 1000); 

所以每一秒钟我们删除所有精灵:

function removesprites() { 
    for (var i = group.children.length-1; i>=0 ; i--) { 
     var sprite = group.children[ i ]; 
     console.log("removing"); 
     scene.remove(sprite); 
    } 
} 

精灵都在Object3D组中。我在另一篇文章中看到,需要反向删除对象(因此需要反向删除),但无论我通过哪种方式循环访问,标签都不会被删除。

任何想法的人?

回答

2

而不是

scene.remove(sprite); 

使用

group.remove(sprite); 

Object3D.remove()

three.js r.67

+0

谢谢,那就是了。 – Balthasar