2011-04-07 33 views
1

我正在研究如何挤出闪存安装的性能。如何优化运行闪存的计算机

安装有一个巨大的舞台尺寸,2800px x 2100px,是在一个高规格的机器上,但我遇到低帧率。

我想知道最佳设置是什么机器运行这个?如果系统设置为优化后台进程等,闪存会更喜欢它吗?

任何建议很好地收到。

回答

3

这是一个有趣的问题。我实际上并不知道硬件方面的任何事情,但我可以告诉你的一件事是,如果你在像这样的巨型舞台上出现低帧率问题,DisplayList本身就是一个非常常见的瓶颈。

根据您显示的内容类型的不同,如果您将渲染引擎更改为使用blitting,它可能会对您有很大帮助。这通常是通过使用CopyPixels()来更改位于舞台上的一个大的位图图像中的像素数据来实现的 - 所有其他逻辑都被删除,这在渲染时间上减少了很多。喜欢,很多。

谷歌“blitting in flash”,这应该让你开始。

2

根据您使用的Flash Player的版本,您可以使用硬件加速来运行Flash。 Here's an article about that

当然,代码优化是一个复杂的话题,您可以将这个网站的全部内容都奉献给它。简而言之,您将需要跟踪内存中的对象数量并处理您没有使用的任何内容。保持显示列表平坦并使用最简单的显示对象作为作业(当不使用时间线等时使用精灵而不是动画片段)或将所有项目绘制到单个位图(blitting)中。确保你使用的是强类型的动作,并避免使用任何动态对象(避免使用Object对象或movieClip["foo"] = "bar",而是创建一个封闭的类)。除此之外,还有一大堆关于optimizing flash的文章可供阅读。

+1

好点这里!渲染引擎可能会成为最重要的元素(一般来说,它占用大部分处理器周期),但所有其他的东西也会有所帮助。是的,如果您可以选择使用带有硬件加速图形的Flash Player 10.2,那就让它旋转吧! – Myk 2011-04-07 23:21:01

1

如果您发布到最新版本的Flash Player(fp11及以上版本),则可以使用GPU进行低级渲染(通过Stage3D)。使用Starling(http://gamua.com/starling/)等框架,您可以使用3D API将2D呈现到舞台上,并可以在大多数平台上轻松处理更高的帧速率。