我粗略看了一下你的代码,但是挖掘整个项目并不是调试优化问题的绝妙方法。
首先要考虑的是,如果你有你的舞台启用mouseOver
,我会建议任何东西不互动宽松的使用mouseChildren=false
互动元素,mouseEnabled=mouseChildren=false
。翻转可能是一个很大的原因,因为它需要每秒钟绘制20次(在您的使用中)。文本和矢量的重绘可能很昂贵。
// Non-interactive elements (block all mouse interactions)
element.mouseEnabled = element.mouseChildren = false;
// Interactive elements (reduce mouse-checking children individually)
element.mouseChildren = false;
如果它们没有改变,你可能会考虑缓存文本元素或按钮图形。我认为我从源头上看到了一些缓存 - 但它通常是一件好事情要考虑。
-
随着中说,调试优化可能是艰难的。如果删除所有的按钮带来的性能提升,考虑你的按钮是如何被构建,以及它们的成本。 *鼠标悬停很贵 *矢量和文本可能很贵 *正确使用时,缓存可以提供帮助,但如果时间过于频繁,则缓存可能很昂贵。 *查看tick()上发生了什么。有时候,代码会不断运行,这并不需要。
-
其他一些注意事项:
希望能有所帮助。
谢谢Bro.Lanny。你回答的所有问题都帮助我改进得更好。我也使用循环访问容器。这是否太慢了帧速率。或者,我们称之为创建按钮的类更好。通过这种方式可以避免正确的循环。请给我们建议。 –