2017-02-12 46 views
-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这样的物理引擎,我想自己编写这个程序。

有人可以给我一些关于如何实现这个想法吗?谢谢 !!

+0

碰撞检测的游戏核心是数学。数学原始对象可以用方程来描述。我建议阅读MDN上的[2D碰撞检测](https://developer.mozilla.org/en-US/docs/Games/Techniques/2D_collision_detection)文章。 –

+0

你应该拿一本关于这个主题的(好的)书 - 在我的游戏开发中获得一个关于cs的高级课程之后,Ian Millington在我的书架上收到了“人工智能游戏”。它有几个关于碰撞检测的章节(和伪代码来分解实现)。另外,MDN文章看起来也不错。 – trooper

+0

非常感谢。这篇文章正是我正在寻找的。 –

回答

-1

如果您需要非常详细的内容,也可以将文件作为纹理添加到文件夹中,也可以使用其他图像或从0开始执行.xml可绘制。 使用图像和.xml可绘制的自定义按钮和背景。 所有进入drawables文件夹。

我永远不会做在Android Studio中一场比赛,但人们推荐使用游戏C++编程与像Visual Studio或统一2D