unityを何回か取り上げてきました。実際に手を動かした方が覚えるので、3次元のブロック崩しを作成するわかり易い説明動画とそこで用いるC#スクリプトの基礎講座がありましたので、紹介します。見ながら手を動かして作成してみてください。形になってくると面白くなってきます。また、C#スクリプト講座については、動画見ても忘れてしまうので、資料にまとめてみました。
資料はこちら → C#
ゲーム作成の動画 → https://www.youtube.com/watch?v=muOOLwfbjfs
c#の基礎講座 → https://www.youtube.com/watch?v=hydf8TrgFE0
p.1 「private float speed 」のコードは、「権限 型 変数」の並び順になっています。権限は、「private」「public」の2通りあって、そのゲーム内だけで使用したり、他から編集できないようにする際に「private」を使います。型は、変数について整数、浮動小数点、文字など、変数の箱の種類を宣言します。変数の頭は小文字、関数の頭は大文字にします。
p.2 関数「ChangeSpeed(int plusNumber) 」の( )内が引数で、最初は「1」です。関数内で「return」で関数処理を終えて、返り値を変数に返します。 スクリプトが書けたら、必ず保存してください。保存によりunityに反映されます。
p.3 ブロック崩しのBall・Block・Playerに動きをさせるスクリプトを作成します。ボールがプレイヤーに当たったら、右斜め前に力を加え弾き返します。ボールがブロックに当たったら、ブロックを消します。プレイヤーは左右の矢印キーで動かします。
p.4 プレイヤーのスクリプトです。右下の赤い四角内が関数の中身です。矢印キーが押されればプレイヤーを動かして、左右の壁の内側で動くような位置判断のスクリプトがあります。「public float speed」で「public」とすることで、編集画面で自由にspeedの数値を変えることが可能です。
p.5 ボールのスクリプトです。ボールに物理的な動きをさせるために、unity内の「Rigidbody」を用います。このRigidbodyの情報を取得して、方向とスピードを有する力をボールに加えます。
p.6 単純なコードですね。衝突したら、オブジェクトのブロックを消します。
以上のスクリプトファイルをヒエルラルキのオブジェクトにドラッグ&ドロップすると、各オブジェクトを動かすことが可能となります。今回は、基本的な動きのスクリプトを学びました。自由自在にスクリプトを書けるようになりたいものです。