2D赛车游戏中的地图格式

3

我在XNA上写简单游戏的经验很少,但现在我不知道如何解决我的问题。

所以,我想写一个简单的2D街机赛车游戏,但我不知道怎样为这个游戏制作地图。

我的想法是:

  1. 我用MSPaint绘制一张图片地图。黑色-草地,白色-公路,红色-路标,蓝色-水,绿色-森林等;

  2. 当图像加载后,我通过XNA覆盖纹理 - 在白色上放置公路纹理,在黑色上放置草地纹理等。

所以我有两个问题:

  1. 我认为我是朝着正确的方向思考吗?
  2. 我如何知道所需像素的颜色并且如何倒入所有白色颜色而不是每个像素单独倒入?第二个问题不是必须的,因为我可以制作第二个包含正常纹理的图像,并将其放置在第二层中,对吧?

非常抱歉我的英语很差。谢谢您提前回答。

示例地图图像

1个回答

0
在 MSDN 论坛中,昵称为 Mad Martin 的 建议这样做

在画板上用混合纹理绘制最终图像,就像你想要在屏幕上看到的那样。直接绘制这个纹理。现在你的游戏逻辑需要知道在那个纹理中哪里是道路。我能想到两种方法:

  • 将道路作为样条线,并计算游戏的确切布局。对于初学者来说可能有点陡峭,但是最强大的。
  • 制作一个与你的纹理类似的单独纹理,只有两种颜色(黑色没有道路,白色有道路)。然后通过汽车的坐标检查你是否在道路上。你可以在 CPU 上通过使用 Texture2D.GetData 将纹理读入数组,也可以在 GPU 上进行。无论哪种方式都需要一些调整,以避免你的汽车卡在道路边缘。

我认为这是一个非常有用的答案,所以我关闭了问题。


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