在 Android 游戏中定义边界的圆形区域
我想制作一个带有小行星的简单月球着陆器变体。我有小行星,但我很难知道如何将它们定义为有边界的区域,如果我的飞船穿过这些区域,就会导致玩家失败。关于定义圆形像素区域有什么技巧吗?如果有帮助的话,我知道我的小行星的确切坐标。
谢谢你的建议。
(寻找碰撞检测建议)
编辑:我个人的解决方案,稍微冗长一些,但并不比下面的解决方案更有帮助:)
public boolean collisionDetection(double xa, double ya, double ra, double xb, double yb, double rb) {
double distance = Math.sqrt(Math.pow(xa-xb, 2) + Math.pow(ya-yb, 2));
if (distance < ra+rb)
return true;
else
return false;
}
I want to make a simple lunar lander varient with asteroids. I've got asteroids, but I'm stumped on how to make them defined areas with bounds that if my ship crosses causes the player to lose. Any tips about defining a circle pixel area? If it helps, I know the exact coordinates of my asteroids.
Thanks for your advice.
(Looking for collision-detection advice)
Edit: My personal solution, slightly more verbose but no more helpful than the solution below :)
public boolean collisionDetection(double xa, double ya, double ra, double xb, double yb, double rb) {
double distance = Math.sqrt(Math.pow(xa-xb, 2) + Math.pow(ya-yb, 2));
if (distance < ra+rb)
return true;
else
return false;
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这假设你知道小行星和飞船的坐标和大小:
编辑:我的函数是错误的抱歉,使用这个
谢谢 LarsH
This assumes you know the asteroids and ships co-ords and size:
EDIT: my function was wrong sorry, use this one
Thanks LarsH