目次:
ビデオ: [Unity5] #1 高専生が自由にGAMEを作る。- Tactics of Tactician編- 2025
重力計算は、最初からHTML5ビデオゲームの一部です。実際に考慮すべき重力の種類は2種類あります。プラットフォームスタイルのゲームでは、プレイヤーは惑星に近く、すべての重力はすべてをまっすぐに下ろすように見えます。
加速度ベクトルを追加する方法を知っているとき、プラットフォームスタイルの重力は実際には使いやすいです。重力は常にフレームごとに少量を引きずり込む一定の力と考えてください。
あなたのゲームの乗り物にロケットを追加する方法
この例にはもう1つ興味深い機能があります。上向きの矢印を押すと、車の画像は炎のある別の画像に変更されます。
hoverCarの例のコードは、ここではすべて
hoverCarです。 html var car; var city; varゲーム;関数Car(){tCar =新しいスプライト(ゲーム、 "hoverCar.png"、70、50); tCar。 setSpeed(0); tCar。 hSpeed = 0 994 tCar。 checkKeys = function(){tCar。 changeImage( "hoverCar。png"); if(keysDown [K_LEFT]){ これ。 hSpeed = = 1 999} if(keysDown [K_RIGHT]){ これ。 hSpeed + = 1 999} if(keysDown [K_UP]){ これ。 addVector(0、.5); これ。 changeImage( "hoverCarThrust。png");} これは、 changeXby(this。hSpeed); } // end checkKeys tCar。 checkGravity = function(){ if(this。y> 580){ これがifです。 setPosition(this。x、580); } else { これ。 addVector(180、.1); } // end if } // end checkGravity return tCar;} //終了カーデフ機能init(){game = new Scene(); car = new Car();都市=新しいスプライト(ゲーム、 "都市.png"、800,600);シティ。 setSpeed(0);シティ。 setPosition(400、300);ゲーム。 start();} //終了するinit関数update(){ゲーム。 clear();シティ。更新();車。 checkKeys();車。 checkGravity();車。 update();} // end update あなたのゲームで力ベクトルを使う方法 <! - 2 - > 重力は実際にはかなり簡単です。これは単なる力ベクトルです。この例の他の興味深い部分は、車の画像角度を変更することなく水平方向の動きを変更し、スラスタを示すように画像を調整することを含む。手順は次のとおりです。
2つの異なるイメージを作成します。
イメージエディタを使用して、2つの異なるバージョンのイメージを作成します。通常のスプライトを作ります。
-
<! - 3 - >
ほとんどの車両スプライトと同様に、checkKeys()メソッドが必要です。これは普通の方法で設定されていますが、動作は少し異なります。
-
画像をデフォルトに設定します。
デフォルト画像にはスラスターがありません。これをデフォルトのイメージにするには、changeImage()メソッドを使用します。スラスタがオンになると、画像が変更されます。変数を使用して水平速度を制御します。
-
hSpeed変数を作成して車の水平速度を管理できます。
左矢印と右矢印を設定してhSpeedを変更します。
-
左右の矢印キーは、hSpeed変数を変更します。
水平方向の速度を設定するには、changeXbyを使用します。
-
すべてのキーを確認した後、車のx値をhSpeedの現在の値に変更します。
上矢印は、ベクトルを上方向に追加します。
-
ユーザーが上矢印を押したときに小さな力ベクトルを上に追加するには、今や悪名高いaddVector()関数を使用します。 0度が上であることを忘れないでください。この値で遊んで、あなたのゲームに必要な推力の量を取得してください。
上向き矢印が押されたときにスラスタを表示します。
-
ユーザーが上矢印を押している場合は、スラスタを表示する必要があります。 changeImage()メソッドを使用して、スプライトのイメージをロケットスラスタを持つイメージに設定します。
checkGravity()メソッドを構築します。この方法は、重力を補償するためにすべてのフレームと呼ばれる。
-
あなたが地面にいるかどうかを確認します。
この例では、地面は580より大きなy値として定義されています。
-
地面にいない場合は、重力ベクトルを追加します。それが蓄積するので、重力ベクトルはかなり小さくする必要があります。重力の力とスラスタのバランスをとって、あなたが望む動作を得る必要があります。重力が強すぎると、スラスタは作動しません。スラスタが強すぎると、車は単に宇宙に飛んでいくだけです。
