目次
- 目次
- 前回のチュートリアル
- はじめに
- 玉を動かすためのコンポーネント(機能)の設定
- 玉を動かすスクリプトの準備
- 玉を動かすスクリプトの作成
- 玉を動かすスクリプトの反映
- 玉の動く速さの調整
- 次のチュートリアル
- 備考
前回のチュートリアル
はじめに
前回は、Unity プロジェクトの準備と、床と玉の作成を行いました
今回は、プレイヤーとなる玉をカーソルキーで転がせるようにしていきます
玉を動かすためのコンポーネント(機能)の設定
まずは玉を動かす準備をしていきます
「Player」を選択して、「Add Component」ボタンを押します
入力欄に「Rigidbody」と入力して、「Search」の欄に表示された
「Rigidbody」を選択します
これで、「Ridigbody」というコンポーネント(機能)が玉に設定されました
この「RIgidbody」というコンポーネントは、
オブジェクトを動かしたり、重力を与えたりするために使用されるものです
しかし、「RIgidbody」を設定しただけでは玉は動かないので
「Rigidbody」を使用して玉を動かすためのスクリプトを作成していきます
玉を動かすスクリプトの準備
「Project」の下にある「Create」ボタンを押して「Folder」を選択します
そして、作成したフォルダに
「Scripts」(スクリプト)という名前を入力して Enter を押します
次に、作成した「Scripts」フォルダを右クリックして
「Create>C# Script」を選択します
そして、作成したファイルに
「PlayerController」という名前を入力して Enter を押します
これで、「PlayerController」という名前のスクリプトが準備できました
スクリプトは、プログラムを記述するためのファイルで、
今回作成した「PlayerController」という名前のスクリプトに
玉を転がすためのプログラムを記述していきます
玉を動かすスクリプトの作成
さきほど作成した「PlayerController」をダブルクリックします
すると、お使いの環境に合わせて Visual Studio や MonoDevelop などの、
プログラムを書くためのエディタが起動するので、
下記のプログラムをコピーして貼り付けます
using UnityEngine; public class PlayerController : MonoBehaviour { public float speed = 20; // 動く速さ private Rigidbody rb; // Rididbody void Start() { // Rigidbody を取得 rb = GetComponent<Rigidbody>(); } void Update() { // カーソルキーの入力を取得 var moveHorizontal = Input.GetAxis("Horizontal"); var moveVertical = Input.GetAxis("Vertical"); // カーソルキーの入力に合わせて移動方向を設定 var movement = new Vector3(moveHorizontal, 0, moveVertical); // Ridigbody に力を与えて玉を動かす rb.AddForce(movement * speed); } }
(今回はプログラムの解説は割愛させていただきます)
上記のようにプログラムを貼り付けたら
Ctrl + S を押すなどしてスクリプトを保存します
これで、玉を動かすためのスクリプトの作成が完了したので Unity に戻ります
玉を動かすスクリプトの反映
さきほど作成した「PlayerController」を「Player」にドラッグして離します
そして、「Player」を選択すると
「PlayerController」が反映されていることがわかります
これで、エディタ上部の再生ボタンを押してゲームを再生してみます
そして、カーソルキーを入力すると玉が転がることがわかります
また、床の外側まで移動すると、重力に従って玉が落下することもわかります
これで、玉を動かすことができるようになりました
Unity メニューの「File>Save Scenes」を選択するか、
Ctrl + S を押して、ここまでの作業内容を保存しておきましょう
玉の動く速さの調整
今回作成した「PlayerController」は、玉の動く速さを調整できるようになっています
「Player」を選択して「PlayerController」の「Speed」の値を変更すると
玉の動く速さが変わるので試してみて頂ければと思います
次回は、カメラが玉に付いていくようにしていきます
次のチュートリアル
備考
この記事は上記のチュートリアルの翻訳になります