[[Tonyu基礎練習]] - [[練習:数学と物理とゲーム]] - ''オブジェクトの移動方向'' x=x+vx; という表現があります。 これは、「現在の場所からvxだけ移動した場所」を x(現在の場所)に代入しています。つまりは、元の場所から、新たに距離vx分だけすすんだことになります。 ここで、vxは正(+)であるか、または負(-)であるかによって、移動する方向がかわります。下の例を見てください。 では、vxが0の時はどうなっているのでしょうか?vxが0の時とは新たに移動した距離が0、すなわち止まっている状態を表します。止まっている状態ではオブジェクトがどちらに向いているのかは定かではありません。 移動方向に応じて向きを変える変数fを用いると、キャラクタの左右を反転させることが できます。これを応用して、次のようにすると綺麗に移動してくれます。 if (vx>0) f=1; //vxが0以上の時に右向き else if (vx<0) f=0; //vxが0以下の時に左向き //その他の条件では向きは変わらない 練習:数学と物理とゲーム ← オブジェクトの移動方向 → オブジェクトの移動方向(2) |