【发布时间】:2016-05-30 03:30:05
【问题描述】:
我已经设置并从 tmx 文件成功地获得了平铺地图渲染。我的游戏是一个自上而下的 2D 迷宫游戏。我想移动到随机生成图块,并且我有算法。唯一的问题是我不确定我该怎么做:
1) 动态创建平铺地图 2)我需要以某种方式在每个图块的算法中正确设置旋转。 3) 不仅如此,我还需要确定要在我生成的每个图块上绘制哪些精灵。比如我有角件、直件等……
谢谢!
【问题讨论】:
标签: java android libgdx desktop
我已经设置并从 tmx 文件成功地获得了平铺地图渲染。我的游戏是一个自上而下的 2D 迷宫游戏。我想移动到随机生成图块,并且我有算法。唯一的问题是我不确定我该怎么做:
1) 动态创建平铺地图 2)我需要以某种方式在每个图块的算法中正确设置旋转。 3) 不仅如此,我还需要确定要在我生成的每个图块上绘制哪些精灵。比如我有角件、直件等……
谢谢!
【问题讨论】:
标签: java android libgdx desktop
2,确定需要自己绘制的图块。我通常会为每种类型的楼层指定一个唯一编号,如果您有多个楼层可供选择,请也为这些楼层指定一个唯一编号。然后你的算法需要用类型填充地图,然后你可以随机插入该类型的唯一楼层。
当您的算法完成后,您可以在第二遍中计算角点。如果你有一堵只有 W、NW 和 N 开放的墙,那么它是一个从 S 到 E 的墙角。如果你有一个从 S 到 W 的所有角的单一图像,那么你只需要水平翻转它或将其旋转 270 / -90 度。您需要自己计算所有这些东西,是的,使用大量 if 语句或开关是一件乏味的工作。
我建议你从小处着手,只要有一个适合墙壁类型的方块,然后从那里继续。因此,只需首先使用布尔值创建一个地图,0 = flow 和 1 = wall。稍后您可以进一步扩展它。您可以添加很多变体,我一直在研究一个包含 56 种不同瓷砖类型的瓷砖集,而这些都需要有 1 个或多个变体。
【讨论】:
1 和0 的二维数组,那么对于每个0,您可以绘制一堵墙,对于每个1,您可以绘制一个地板。