前回作った物をちょっと改良して、物理的な要素を加え、自由落下運動っぽいことをして
画面下に来たら反発して、ボールのような動きをやってみようと思う。
自由落下運動とは
重力だけを受けている物体が初速0で真下に落下する運動
落下する物体の運動は等加速度直線運動で、落下しながらスピードを増していく。
今回、画面下に来たら、反発して図のような動きをさせてみる。
自由落下に必要な計算は、
vy+=g*t
座標上、下向きに動作する場合は、Y座標なので、y方向に重力を加え、また、これに等加速度運動を入れるので、時間を掛けてあげる。
そして、反発係数をいれる。
反発係数は、画面の右端、左端、画面下側に描画した円が来た時、vx,vyにそれぞれ、0.9を掛けている。
vx*=0.9;
vy*=0.9;
画面の端に来たときの処理は、こんな感じ
if(x<0) {
x=0;
//移動方向を反転
vx*=-1;
vx *=0.9;
}
if(x>panel.getWidth()-r) {
x=panel.getWidth()-r;
//移動方向を反転
vx*=-1;
vx *=0.9;
}
if(y<0) {
y=0;
//移動方向を反転
vy*=-1;
vy *=0.9;
}
if(y>panel.getHeight()-r) {
y=panel.getHeight()-r;
//移動方向を反転
vy*=-1;
vy *=0.9;
}
その他のタッチイベント関連
タッチイベントを使って、画像を回転させる
タッチイベントで文字を書いたり絵を描く
タッチした方向に描画した円を発射する
Androidでゲーム ブロック崩し編 3回目:板画像のタッチ操作
Androidでゲーム ブロック崩し編 4回目:タッチ操作が出来る範囲と出来ない範囲を作る
ランダムクラスを使って色の変更を行う
Androidのタッチイベントを使ってアニメーションを動作させる
0 件のコメント:
コメントを投稿