[Unity] Visual Scripting でつくる簡単ゲーム「プラットフォームゲーム」
ビジュアルスクリプティングでつくる「プラットフォームゲーム」の解説です。このゲームのプログラムはシンプルですが、ゲームの様々なものの位置が大事です。
1.背景を作る
まず、背景を作ります。
下の画像をPCに保存して使いましょう。
ファイル名:BackgroundIMG03.png
Square(四角)スプライトを使って背景をつくります。
2D Object -> Sprites -> Square
Inspector画面で以下のように設定します。
背景画像は、Tiled設定にして画像を繰り返し使うようにしてあります。
こういう場合、大きさを変えるときにスケールツールではなく、レクトツールを使います。
最終的にはフィールドをすっぽり包むくらいの大きさにします。
6.フィールドの当たってはいけない場所をつくる
フィールド上のプレイヤーが当たってはいけない場所をつくります。
Hiearachy -> + -> 2D Object -> Sprites -> Triangle でトライアングルを追加します。
Inspector画面で以下の編集をします。
1.TagをEnemyにする
2.Polygon Colider 2Dを追加して、コライダーのサイズを合わせる。
※重要
このゲームで重要なのはフィールドづくりです。クリックのタイミングで障害をクリアできるかできないかの距離をきちんと計測してする必要があります。
また、途中でキャラクターのジャンプ力などのパラメーターを変えてしまうと、フィールドも作り直さなくてはいけないため、キャラクターのパラメーターは事前によく検討するとよい。
7.【第2面】浮遊型プラットフォーマーを作る
浮遊型プラットフォームゲームを作成してみましょう。プレイヤーは壁などの障害物に衝突しないようにしなければなりません。
それでは、プレイヤーのプログラムを作ります。まず、以下の変数が必要です。
[DayFX]
パーティクルオブジェクトを指定する。パーティクルを自分で作成するか、Asset Storeで購入したものを指定しておきましょう。
[StartPosition]
プレイヤーがはじめに登場する位置を指定します。希望の位置に空のオブジェクトをおき、それを指定してください。
【プレイヤーが障害物に衝突したときの処理】
処理説明
1.タグがEnemyだった場合
i. 破壊パーティクルエフェクトを自身の座標に生成する
ii.スタートボジションに移動させる
【キーボード及びマウス操作の処理】
処理説明
1.画面が更新されるたびに以下の処理をする
i. ジャンプキーもしくはマウス左クリックがあった場合
a.プレイヤーの速度を(x,y) = (18,10)にする
ii. ジャンプキーもしくはマウス左クリックがない場合
a.プレイヤーの速度を(x,y) = (18,-10)にする
「フィールドづくりについて」
プレイヤー触れては行けないすべてのオブジェクトにEnemyタグをつけましょう。(Enemyタグは自分で追加する必要があります。)