这一节重点介绍改善您使用Flash Professional构建的移动应用程序中的性能的一些最佳实践。
缩短应用程序启动时间
要最小化加载时间,一定不要一次加载整个应用程序,使应用程序停顿。例如,想象一个游戏有100关。甚至在显示标题屏幕之前加载所有100关,这毫无意义。这意味着您不应在对象准备好使用之前实例化它们。在每个类中使用init()
函数来实例化对象和变量,而不将实例化代码放在类构造函数或全局声明中,这样可支持更加受控的环境。在用户体验方面,相比从一开始就执行一个较长的加载流程,拥有多个较短的时间段要好得多。
禁用警告模式来缩短编译时间
在Flash Professional中,访问Advanced ActionScript设置并找到警告模式选项。默认情况下它已启用,请将它关闭。如果您在库中拥有400个类的链接,当打开警告模式时,运行一段测试影片将会花大约1-2分钟。当该设置关闭时,测试相同的影片只需花3-5秒。
设置“.visible = false”而不是“alpha = 0”属性,隐藏舞台上的实例
尽管在测试时,设置影片片段属性 alpha=0
或 visible=false
的最终结果在舞台上看起来是一样的,但性能结果是不同的。简单来讲,设置为alpha=0
的对象仍然需要计算之后再在屏幕上绘制,占用了宝贵的CPU资源。所以将可视属性设置为 false
。
避免使用实时滤镜
发光、模糊、倒角或投影效果等特效看起来很漂亮,但这对性能而言不是好事。这并不是说,您决不应该使用Flash Professional中内置的滤镜。但是,您将发现,如果将添加了滤镜的影片片段转换为位图,您可以实现类似的可视结果。而且这样,您可以提升应用程序的性能,同时显示您想要的漂亮效果。
在启用Allow smoothing选项时保持谨慎
在舞台上调整之后,位图的Allow smoothing选项有助于使图像更加美观,而没有锯齿。当图像调整为更大尺寸时会出现该问题。请记住,Allow smoothing选项基本上与实时地向位图应用滤镜相同。例如,将启用了平滑效果的10 × 10像素图像调整为2000 × 2000像素后,它的运行速度像使用具有2000 × 2000像素的原始尺寸的图像一样慢,甚至可能更慢。但是,将10 × 10像素的图像调整为没有应用平滑效果的2000 × 2000像素的图像,性能会高得多。
子画面表 > 平铺图形实例 > 一个大图像
您为改善应用程序的性能投入的时间越多,您可以实现的性能就越高。在过去,开发人员使用平铺的图形而不是一个大图像来减少加载时间和改善性能。现在,您可以在游戏中使用子画面表来优化性能和改善用户体验。