如何在等距地图游戏中实现和设计墙壁是最佳方式?

11

我正在考虑应用这个解决方案的游戏是一种可以更改瓦片的游戏,类似于编辑器。您需要为两种类型的墙制作图形:西墙和东墙或南/西墙。

在等角瓷砖游戏中似乎有两种处理墙壁的方法:

  • 将其绘制在瓦片的外部(《模拟人生1》,《主题医院》,《锯齿联盟2》,《僵尸大亨》)
  • 使它们变成1x1(瓦片)大小,并在它们自己的瓦片上绘制它们(《究极天龙》、每一个roguelike)

示例图:

第二种方法似乎是最简单的方法。由于墙占据了整个瓦片,您无需担心重叠到地板瓷砖并需要设计周围的图案。但是,如果您想以不同于网格大小的尺寸制作图案,例如较窄的墙,那么您的网格也需要更大。优点是只需1块墙。

第一种方法需要一些代码来检测要绘制的墙的变化,并且可能看起来有些奇怪,除非地板瓷砖是围绕它设计的。这也需要至少4个部件。

哪种方法是处理此问题的首选方法?为什么?

2个回答

1
我建议从最远的物体开始渲染,最后再渲染最近的物体 - 这样你可以得到一个简单的不变量:靠近相机的物体可以覆盖更远的物体(就像现实生活中一样)。
另一种方法是:你可以使用物体的“Z”坐标的微小差异来让深度缓冲区起作用 - 如果你使用深度缓冲区,渲染顺序是无关紧要的,但最好从最近的物体开始 - 这样渲染的像素数可以更少。

渲染顺序对问题并不重要。我想要的是如何设计图形,使用最少的墙块,而不会出现裂缝,同时仍然能够获得等距游戏所具有的统一外观。只用一个墙块就无法创建四个封闭的墙壁而不重叠,因此我的问题是:如何做到这一点? - user1035910
这里有另一个示例来说明我的问题: http://www.freeimagehosting.net/bv62d 这些数字代表了期望的绘制顺序,但是正如您所看到的,它并没有给我想要的结果。 - user1035910

1

我会选择第二个选项,让墙壁单独占用一个瓷砖。这是最容易实现的,需要艺术家做更少的工作。

如果你担心不能制作细薄的墙壁,只需确保瓷砖的尺寸足够小即可。您游戏中的瓷砖不需要遵循在地板上画出的图案,例如,一个现实生活中的地板瓷砖可能由2x2的游戏瓷砖组成。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接