【发布时间】:2013-04-07 09:33:50
【问题描述】:
背景:我正在使用 kineticjs 开发一款实时多人 html5 画布游戏,主要在手机浏览器上播放。游戏中发生了很多事情,例如每秒与服务器的套接字通信,使用基于服务器响应的 kineticjs 重绘和动画,所有这些都在繁重的图形界面之上。该游戏在桌面浏览器中运行良好,但在手机上运行缓慢。所以,我需要找到所有可以优化代码的方法。
我的问题,
假设我需要根据刚刚从服务器收到的服务器响应重绘屏幕的特定部分,我是否应该将这些需要重绘的元素保留在单独的层中,以便我需要重绘更少的元素。就我而言,我需要每秒钟重新绘制一次,这会导致性能提升吗?
如果上面的答案是肯定的,那么我应该划分布局的最佳层数是多少。我问这个是因为屏幕上有很多不同的部分需要根据不同的服务器响应重新绘制(尽管不是同时),如果所有这些都需要放在单独的层中,我需要知道如何到目前为止,我可以扩展上面的逻辑,例如,我可以在不牺牲性能的情况下拥有 10 个不同的层,而这正是所有这些练习的目标。
【问题讨论】:
-
我同意@markE。我自己创建了一个简单的 HTML5 游戏,以移动设备为目标,我不得不说,要么将游戏开发为原生 Android/iOS 代码,要么使用专门设计的 HTML5 框架。游戏,例如 ImpactJS 或 LimeJS。不要误会我的意思,我喜欢 KineticJS,并且一直在这里为问题提供答案,但对于游戏,您只需要考虑到这一点而专门构建的东西。
-
@EliteOctagon:+1 用于查找和使用适合工作的工具。