KineticJS:从图层中删除形状与将可见设置为false?

时间:2014-08-03 16:49:22

标签: kineticjs

在图层中保留不可见的形状与添加和删除形状有多少开销?

我正在构建一个轻量级的演示管理器,在幻灯片翻转时不断添加和删除形状。我经常会重复使用之前幻灯片中的形状,因此很多形状都不会被一次性使用(此外,它还可以向后滚动幻灯片,重复使用原始形状)。

在实践中,我无法区分,但我认为我会检查意见。现在我默认完全添加和删除每张幻灯片,但担心如果我从一张幻灯片到下一张幻灯片有很多形状会产生延迟。如果没有这样的开销,为什么会添加可见标志?

2 个答案:

答案 0 :(得分:1)

node.removenode.hide都保留对节点的引用,因此开销几乎相同。

node.destroy将销毁节点,垃圾收集器最终将回收其资源。

答案 1 :(得分:1)

如果你正在做任何事情,性能关键的分配和垃圾收集是性能最糟糕的两件事,因为它们会明显降低你的帧率。

理想情况下,您在加载交互式组件时创建所有内容,然后在交互或动画期间不删除或创建任何对象。我不确定KinectJS,但一个看不见的物体的开销通常不多。