在游戏中创建背景的方法

时间:2010-09-10 17:15:36

标签: flash actionscript-3

创建基于平台游戏的游戏以创建游戏关卡时,最好的(专业人士考虑)方法是什么?背景(静态的)。

创建单个背景并缩放它? 要么 通过加载对象(可能经常重复它们)即时显示它。

如果第一个是选择,则必须手动创建游戏的每个级别&让关卡编辑很难。 此外,如果后者是选择我发现它太处理器密集....我的帧速率几乎分成一半,同时试图在屏幕上一起管理这么多对象。

1 个答案:

答案 0 :(得分:0)

查看http://gamedev.stackexchange.com

通常,平台游戏使用“平铺”,放置在网格中的小图像,以便

  1. 整个背景不需要存储在内存中,
  2. 因此不需要在内存中复制背景的重复部分,
  3. 以便可以在本地更多地绘制单个部分(以提高缓存效率)。
  4. 例如,在超级马里奥兄弟这样的东西中,大量的屏幕空间被“天空”所覆盖。他们只有一个天空瓷砖,可能是16x16,也许是128x128,也许完全是其他东西(但通常是2的幂,所以数学很容易,所有的瓷砖都是相同的尺寸)都是蓝色的。看起来很可能(对我来说)他们的瓷砖尺寸是你可以击中并销毁的“块”之一的大小。

    无论如何 - 所以“级别数据”将是网格中一个空间中的哪个区块的数组,可能在内存中定位为访问位置的列。然后在绘制的时候,你从(例如)左上角开始,然后向下,然后在一列上再向下......

    对于“即时加载”,可以做但你必须确保你异步加载(这样游戏不会暂停),并确保数据你需要的东西在你真正需要它之前就已经可以使用了。