2

大家好,我想问一些事情。我用 Flash CC 和 createJS 制作了一个游戏。这是一个拖放游戏(3 个拖放对象,3 个拖放对象)和很多矢量动画剪辑对象。但是当我在手机上运行它时,游戏看起来有性能问题。我读过一些关于caching该对象的文章。但我真的一无所知cache,也不知道如何在像movieclip这样的对象上使用它。您是否有任何解释或解决方案,或者可能有如何使用cache功能的教程?非常感谢。

4

1 回答 1

2

从文档:

将显示对象绘制到新画布中,然后用于后续绘制。对于不经常更改的复杂内容(例如,具有许多不移动的子项的容器,或复杂的矢量形状),这可以提供更快的渲染速度,因为不需要在每个刻度上重新渲染内容。缓存的显示对象可以自由移动、旋转、淡化等,但是如果其内容发生变化,您必须再次调用 updateCache() 或 cache() 手动更新缓存。您必须通过 x、y、w 和 h 参数指定缓存区域。这定义了将使用此显示对象的坐标进行渲染和缓存的矩形。 http://createjs.com/Docs/EaselJS/classes/DisplayObject.html#method_cache

因此,您不想缓存正在播放的影片剪辑(您必须每帧更新缓存,这很慢)。但是,您可以在 MC 中缓存正在转换的元素。

例如,一个行走角色的动画,其中手臂、腿、头部和身体的复杂矢量形状正在被变换(缩放、旋转、平移)以创建行走动画。您不会缓存角色 MC,但您可以自己缓存身体部位。

于 2015-03-13T15:52:51.747 回答