在我的游戏中,我有一个想法,在地图上设置 3 层,第一层是地面,第二层是道路/草地/等,第三层是无法通行的物体,例如墙壁/建筑物/湖泊/河流/树木。我有它,所以玩家位于屏幕中间,地图的图层向玩家想要去的相反方向移动。我在想,如果 playerModel 与在 impassableLayer 上绘制的任何东西重叠,那么我会有不同的层,那么 playerModel 会向后移动。但是,由于我是 xna 的新手,我不知道如何让游戏识别 playerModel 与 impassableLayer 上的不可通过对象重叠。impassableLayer 显然只在其上绘制了对象,并且在没有对象的任何地方都是空的。因此,我不能只说:
if (playerModel.X > impassableLayer.X)
{
impassableLayer.X++;
}
因为这总是正确的。
有没有办法判断一个对象是否与图层重叠?