代码之家  ›  专栏  ›  技术社区  ›  Dominic K

XNA中基于瓷砖的碰撞

  •  5
  • Dominic K  · 技术社区  · 16 年前

    我已经在XNA游戏中绘制了瓷砖并加载了我的角色。然而,我的角色并没有移动——地图是这样的,它给人一种移动的错觉。现在我想知道如何实际测试它们是否发生碰撞。我的意思是,碰撞代码去哪里了,我如何让所有的图块代表“一件大事”?

    4 回复  |  直到 14 年前
        1
  •  5
  •   Brian Rasmussen    16 年前

    有一个关于 pixel based collision detection 在XNA创造者俱乐部。您需要弄清楚要对哪些对象进行碰撞检测。我猜你想让角色在平铺的背景中移动,所以你不想检查角色和背景之间的冲突。相反,你应该让任何障碍物精灵,并对它们进行碰撞检测。

        2
  •  1
  •   smack0007    16 年前

    你可以看看 Nick Gravelyn's Tile Engine Tutorials 它经历了创建一个平铺引擎的整个过程。有一个链接 here 查看YouTube上的所有教程。

        3
  •  0
  •   Paolo Tedesco    16 年前

    你可以看看 Platformer Starter Kit 它显示了如何在地图中组织图块并检查冲突。

        4
  •  0
  •   Eric Harms    14 年前

    矩形有一个相交方法。如果你的玩家是居中的,并且你知道坐标,那么在滚动地图之前,循环浏览其他纹理2d并检查是否存在交叉点。