首页 > 解决方案 > 是否可以缓存按钮?

问题描述

我正在将 Flash 游戏转换为 createjs。我正在使用 adobe animate cc 2017 面临性能问题。内存越来越高。当我 GOOGLE 时,我想添加缓存。我开始添加没有动画的转换后的 Flash 文件。当我添加并测试它时,我失去了按钮效果。有什么办法可以缓存一个按钮

标签: javascriptcreatejs

解决方案


在 Animate 中创建的按钮(我假设使用 ButtonHelper?)本质上是一个具有不同状态的 MovieClip,当您与之交互时会激活这些状态。如果您缓存一个 MovieClip,它会将当前状态存储到单个缓存画布中,这就是它不再更新的原因。

如果您的 Button 具有矢量或复杂状态,您可以缓存这些帧,而不缓存 Button/MovieClip。这将有助于查看内容包含的内容。随意发布一些代码,我可以用一些建议更新我的答案。

关于 EaselJS 缓存

当您拥有变化不大的矢量、文本或分组内容时,缓存非常有用。如果您可以将这些缓存分组到一个共享的 SpriteSheet 中,那就更好了,这有助于 GPU 管理更少的纹理。请注意,简单地“缓存事物”不一定会让您恢复任何性能,具体取决于您在做什么。


推荐阅读