所以我正在开发一个Windows手机应用程序,我需要一种方法来检测用户将矩形拖到另一个矩形的天气。我已经得到了拖延和一切排序,但我不能为我的生活弄清楚如何解决碰撞,我看起来有点进入xna并设法将波纹管混合在一起,如果任何人可以帮助它将是非常appriciated。 / p>
double BoxLeft = characterMain.Margin.Left;
double BoxTop = characterMain.Margin.Top;
Rect r1 = new Rect(BoxLeft, BoxTop, 20, 20);
txtblck2.Text = r1.X.ToString() + r1.Y.ToString();
double badBoxLeft = BadGuy.Margin.Left;
double badBoxTop = BadGuy.Margin.Top;
Rect r2 = new Rect(badBoxLeft, badBoxTop,12, 100);
txtblck3.Text = r2.X.ToString() + r2.Y.ToString();
r1.Intersect(r2);
if (r1.IsEmpty)
{
MessageBox.Show("You Did it");
}
答案 0 :(得分:0)
与矩形的碰撞非常简单,我不知道你是否搜索过任何东西,但这会对你有所帮助:
http://msdn.microsoft.com/en-us/library/microsoft.xna.framework.rectangle.intersects.aspx
您可能还想阅读一些教程:
http://jamessadlier.wordpress.com/tutorials/xna-4-0-collision-detection/ http://codeforcake.com/blog/?p=160
基本碰撞的工作原理如下: 它基本上就是它所说的。
if(r1.Intersects(r2))
{
//Collision happend
//Do something
}
下次当你有一个问题时一定要检查互联网真正的好处,那里有很多教程和很好的例子。
祝你的项目好运!