绘制2D侧射手的好方法(有点像liero,或soldat)

时间:2010-05-14 22:14:31

标签: c# data-structures xna tiles

我想知道哪种方式最适合为射击者渲染2D地图(这些将是静态地图),类似于Soldat。我考虑过的多个选项是基于图块的地图(存储在txt文件中),或者只是为我计划使用的不同地形创建不同的类,并创建一个数据结构来读取/存储它们在文件中。 (我也希望能够包括跳墙/跑墙,滑墙/斜坡等)。

我觉得必须有比这些更好的方法,但却找不到确切的信息:/

谢谢:)

4 个答案:

答案 0 :(得分:2)

Soldat使用基于多边形的格式来渲染和表示它的级别。编辑器允许用户绘制它们之间的点和连接,以制作墙壁和结构,然后给出纹理和属性(例如碰撞=死亡)。项目和图像然后覆盖在此上。

然后,soldat渲染引擎将使用这些结构来执行碰撞检测并构​​建世界的多边形(绘制的三角形)表示。

答案 1 :(得分:1)

我打算使用“只是使用瓷砖地图”,但后来我看了Soldat,它有点复杂。

我不知道他们正在使用什么,但我怀疑他们正在使用多边形并且可能也会碰撞多边形。这些级别可能是使用您在3D游戏中看到的相同类型的基元生成的,但都在平面中。例如。纹理映射三角形并与表面边缘碰撞,而不是与表面本身碰撞。

根据我的经验,“terrain”本身通常是一个对象,碰撞和视觉表示是该对象内部的数据(通常聚合到该对象中)。不同的地形不一定需要是不同类型的东西,实际上在我所做的所有游戏中,整个世界通常是“地形”或“世界”类型的单个对象,它管理着进出视野的各种可见作品的作用。

这不是一个好的答案,但我想我会尝试给你一些东西。

答案 2 :(得分:1)

执行您想要的平台游戏的示例包括BraidAquaria。你可以使用Humble Indie Bundle来获得2个便士的水族馆。

这是行动中的Aquaria's editor。我无法找到一个体面的编辑视频。

我找到了关于IndieLib的this other video,以及他们创建的与Aquaria相似的关卡编辑器(免责声明:我自己没有尝试过)。

从那里开始,谷歌搜索“辫子和水族馆平台引擎”应该会给你更多的结果。

答案 3 :(得分:1)

我建议您阅读这本书Building XNA 2.0 Games: A Practical Guide for Independent Game Development。它将引导您完成一个名为Zombie Smashers的2D侧面游戏的开发(基于作者屡获殊荣的The Dishwasher: Dead Samurai)。

第4章:您正在寻找地图编辑器。

即使您不打算在XNA中进行开发,它也会对您有所帮助。