我的玩家和贴图(背景)之间的碰撞检测.XNA
本文关键字:之间 碰撞检测 XNA 背景 玩家 我的 | 更新日期: 2023-09-27 18:06:48
所以,我想检查玩家和贴图之间的碰撞。贴图并不是一个大的物体,而是32*32像素大小的贴图,总共有11个,用作地板,这样玩家就可以在上面行走了。我的问题是,我要怎么检测它?像素碰撞听起来并不是很有效。如果我应该使用矩形碰撞,我希望得到一个解释,我将如何在我的代码中实现它。
谢谢。
我建议下载并学习由Microsoft开发的Platformer Starter Kit。
下载:Starter Kit下载
MSDN讨论Starter Kit讨论
对于他们的解决方案最简单的解释是,瓷砖被保存在一个2D数组中来代表世界。当玩家的Update()函数被调用时,handlecollions()函数被调用,循环遍历贴图数组的子集以寻找可能的碰撞。对于与玩家的每一次可能的碰撞,玩家边界和贴图的交叉深度,玩家的位置将被调整以使其脱离贴图。