[9]加速装置を作ろう

(今回はこんなことを学びます)

・オブジェクトに「画像」を貼り付ける方法

・オブジェクトに触れると「加速」する方法

(1)オブジェクトに画像を貼り付ける方法

・まず、「Hierarchy」→「Create」→「3D Object」→「Cube」で新たにオブジェクトを1つ作成してください。

・名前は「AccelPoint」に変更してください。

・Position(位置)は「X=0,  Y=0.005,  Z=3」にします。

・Scale(大きさ)は「X=3,  Y=0.01,  Z=2」にします。

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

次に、AccelPointに貼り付ける画像をUnityにインポートします。

「Assets右クリック」「Import New Asset….」で画像をインポートしてください。

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

・オブジェクトに色を付ける時に使用する「Material」を作成してください。

・「Material」の名前も「AccelPoint」に変更します。

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

・インポートした画像を「Material(名前;AccelPoint)」の「Albedo横の四角」にドラッグ&ドロップしてください。

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

2箇所に絵柄が入れば成功です。

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

・「Material(名前;AccelPoint)」を「オブジェクト(名前;AccelPoint)」にドラッグ&ドロップしてください。

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

オブジェクトに画像が付いたことを確認してください。

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

この画像を微調整しましょう。

・「AccelPoint」の「Rotation」「Y=90」にしてください。

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

画像の向きが変わります。

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

「MateriaのAccelPoint」を選択します。

「Tiling」「XとY」の数値を変えると、画像を細かく配置することができます。(床にタイルを敷き詰めるようなイメージです。)

*数値を自分で好きなように変更してみましょう。

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

これで画像の準備ができました。

次は、スクリプト(台本)の準備です。

(2)加速装置のスクリプト

・まず「C# Script」を作成し、名前を「AccelPoint」に変更します。

・作成した「AccelPoint」スクリプトをダブルクリックします。

・下記のお手本を参考にコードを書いてみましょう。

*横スクロールするとコード全体を見ることができます。↓

using UnityEngine;
using System.Collections;

public class AccelPoint : MonoBehaviour {

	// ★このメソッド(命令ブロック)を記載する
	void OnTriggerEnter(Collider other){

		other.gameObject.GetComponent<Rigidbody>().AddForce(new Vector3(0,10,30), ForceMode.VelocityChange);

	}
}

・コードが書けたら、スクリプト(台本)をオブジェクトにドラッグ&ドロップしましょう。

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

・「Hierarchy」で「AccelPoint」を選択

・(重要!)「is Trigger」にチェックを入れます。

*これで、AccelPoint に他のオブジェクトがぶつかった時、「OnTriggerEnter」の命令ブロックが実行されるようになります。

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

さあ、これで準備が整いました。

「再生ボタン」を押して確認してみましょう。

BallがAccelPointに触れた瞬間、加速すれば成功です。