アンドロイドスタジオでImプログラミングを行い、いくつかの物理学を使ってゲームをしたいと思います。私は自分のゲームの物理をどのように実装するのか分かりません。例えば、ボールを使って、いくつかの長方形を飛び越えることができ、実際の物理学のように衝突することができます。 どうすれば実装できますか?アンドロイドゲームでフィジカルを実装する
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する方法が分からない、またはから落下するとき、彼は来ています矩形の左側、またはジャンプするときに来る。
さらに、私はAndEngineのような物理エンジンを使いたくないので、これを自分でプログラムしたいと思います。
これを実装する方法について私にいくつかのアイデアを教えてもらえますか?ありがとうございました !!
ゲームにおける衝突検出のコアは数学でを使用することをお勧めします。数学的プリミティブオブジェクトは、方程式を使用して記述することができます。 MDNの[2D衝突検出](https://developer.mozilla.org/en-US/docs/Games/Techniques/2D_collision_detection)の記事を読むことをお勧めします。 –
あなたはそのテーマに関する良い本を手にするべきです - 私はゲーム開発者の上級csコースを取った後、Ian Millingtonの "Artificial Intelligence for Games"のコピーを私の棚に持っています。衝突検出(および実装を分解する擬似コード)については、いくつかの章があります。また、MDNの記事もかなりよく見えます。 – trooper
ありがとうございました。この記事はまさに私が探していたものです。 –