[5]コインを回転させよう

(1)オブジェクトに「命令」を与える方法

先ほど作成した「Coin」を動くようにしてみましょう。

(ここがポイント!)

・今回、プログラミング言語は「C#」というものを使います。

「Script(スクリプト)」とは「台本」とか「脚本」という意味があります。プログラミングの台本の中には、「こういう具合に動け」という指示(命令)を書いていきます。書いた台本はオブジェクトに適用する(与える)ことで、オブジェクトは台本通りに動くようになります。

・「Assets」の余白で右クリック

・「Create」を選択

「C# Script」を選択してクリック

スクリーンショット 2015-10-15 13.07.41

・名前を「Coin」に変更する。

スクリーンショット 2015-10-15 13.10.58

・名前の変更が済んだら「Coin」スクリプトをダブルクリック

「MonoDevelop」というコードを書くためのツール(エディタ)が起動します。

(2)コードを書く

・下記のお手本を見てコードを記載してみましょう。

*書く場所に注意。
*大文字、小文字に注意。

using UnityEngine;
using System.Collections;

public class Coin : MonoBehaviour {

	// Use this for initialization
	void Start () {

	}

	// Update is called once per frame
	void Update () {

		// ↓この一行を書いてみよう
		transform.Rotate(new Vector3(0,0,90) * Time.deltaTime);

	}
}

(ここがポイント!)

「{  }」が1つの命令のかたまり(ブロック)と覚えよう。

「void Start(){ }」は、「最初に1回だけ実行される」命令ブロック

「void Update(){ }」は、「フレームが更新されるごとに呼び出される」命令ブロック

・コードの最後の部分に「;(セミコロン)」を必ず付けること。(セミコロンを付け忘れるとエラーになるので注意!)

・コードを書いたら必ず「セーブ」すること

・コードが書けたら、「スクリプト」をオブジェクトに適用させる(ドラッグ&ドロップ)

スクリーンショット 2015-10-15 13.25.02

・「スクリプト」が適用されているか確認。

スクリーンショット 2015-10-15 13.25.11

・ここまでできたら「再生ボタン」を押してみましょう。

スクリーンショット 2015-10-15 13.30.40

・コインが回転したら成功です。

(3)試してみよう(応用)

Q.コインの回転速度を速くするにはどうしたらよいでしょう?

using UnityEngine;
using System.Collections;

public class Coin : MonoBehaviour {

	// Use this for initialization
	void Start () {

	}

	// Update is called once per frame
	void Update () {

		// 回転速度を10倍にする方法
		// コードの最後に「* 10」を追加する。
		transform.Rotate(new Vector3(0,0,90) * Time.deltaTime * 10);

	}
}

 

・数字をいろいろ変えてどうなるか試してみましょう。

(ここがポイント!)

・プログラミングで「*」は「掛ける」の意味(例;「*10」は、10を掛ける)

・「小数点」を使う場合には、数字の後に「f」(floatの略)を付けること(例;0.5f)。fを付けないとエラーになるので注意!