-1
在android studio中进行编程,我想用一些物理学做一个游戏。我不知道如何实现我的游戏物理。例如,我想用一个球来制作一个游戏,它可以跳过一些矩形,并且可以与它们碰撞,并且可以像真正的物理学一样碰到它们。 我该如何实现?在Android游戏中实现物理效果
public abstract class GameObject {
protected double vX;
protected double vY;
protected double mass;
protected MyPoint centerOfMass;
protected double accelerationX;
protected double accelerationY;
protected void update()
{
if(Math.abs(vX)<0.05)
{
if(Math.abs(accelerationX)==0.05)
{
vX=0;
accelerationX=0;
}
}
vY+=accelerationY;
vX+=accelerationX;
this.centerOfMass.setX(this.centerOfMass.getX()+vX);
this.centerOfMass.setY(this.centerOfMass.getY()+vY);
}
protected void collide()
{
// no idea ...
}
我不知道如何implemet的碰撞方法,因为有这么多的选项,以适应,就像如果球是RECT以上,或者其RECT下,或他是从下降时,未来矩形的左侧,或跳跃时出现。
此外,我不想使用像AndEngine这样的物理引擎,我想自己编写这个程序。
有人可以给我一些关于如何实现这个想法吗?谢谢 !!
碰撞检测的游戏核心是数学。数学原始对象可以用方程来描述。我建议阅读MDN上的[2D碰撞检测](https://developer.mozilla.org/en-US/docs/Games/Techniques/2D_collision_detection)文章。 –
你应该拿一本关于这个主题的(好的)书 - 在我的游戏开发中获得一个关于cs的高级课程之后,Ian Millington在我的书架上收到了“人工智能游戏”。它有几个关于碰撞检测的章节(和伪代码来分解实现)。另外,MDN文章看起来也不错。 – trooper
非常感谢。这篇文章正是我正在寻找的。 –