我可以创建一个碰撞面具吗?

时间:2013-01-26 19:17:06

标签: c# xna

此刻,我通过查看方形精灵的任何角是否相交来检查两个物体之间的碰撞。

我要检查像素是否相交并且它们不是目标上的透明像素。然而,这不适合让我走在树后面。

相反,我想知道是否有一种简单的方法来使用掩码,可能存储在我可以用来检查的.png中。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

其中一种方法是使用图像的alpha通道作为遮罩,假设您只想要剪切非透明像素。尝试使用Texture2D.GetData获取所需的图像填充并检查.A alpha分量的值。

我认为较旧的游戏对于蒙版有单独的单色纹理,有些甚至使用二维比特数组(或布尔值)。当然,这可能会更快并且消耗更少的CPU资源,但也将更难实现。

相关问题