2D 游戏设计和优化技巧

2D 游戏设计和优化技巧

只绘制可见的,即只绘制当前在屏幕上的瓦片等。对于非常简单的瓦片,如果你有很多实体,你可以使用滑动窗口来保存屏幕本地的列表对象,或使用四叉树之类的东西。

因为没有简单/快速的方法可以将一个画布复制到另一个画布免费2d游戏引擎,所以重绘该区域非常复杂,因为如果背景没有改变,就无法保持(例如)背景的缓冲状态。因此,保留“脏矩形”列表肯定会产生计算开销。

整个主题非常广泛,即使处理 FPS 速率也可能相当困难,这个问题包含一些关于该主题的很好的链接和答案:

android 2d绘图引擎_安卓2d 游戏 引擎_免费2d游戏引擎

你也提到了服务器通信,如果你想玩多人游戏,你必须关心更多的事情,你不能信任客户端,你需要担心带宽、同步问题、客户端插值等问题。

android 2d绘图引擎_免费2d游戏引擎_安卓2d 游戏 引擎

我过去做过一些相当简单的 2D 游戏,其中大部分不是 JavaScript,但它们应该会给你一些提示:

免费2d游戏引擎_android 2d绘图引擎_安卓2d 游戏 引擎

(C语言平台引擎演示,相机专区免费2d游戏引擎,移动平台)

安卓2d 游戏 引擎_免费2d游戏引擎_android 2d绘图引擎

(Java 的 2D 平台,从未完成音乐音效,启动和一些很酷的东西)

安卓2d 游戏 引擎_免费2d游戏引擎_android 2d绘图引擎

(JS编写的2D多人太空射击游戏,使用Node.JS作为服务器,使用WebSocket进行通信)

最后我想说的是,你应该从小事做起,比如先做一个滚动磁贴,然后添加一个播放器,然后重写整个过程。您想从头开始编写一个完美的引擎,这需要多次迭代才能找到所有的怪癖和技巧。

如果您想要更准确的答案,您应该就您遇到问题的单个组件提出问题。