C#のファイルを新規作成しよう
下記のどれかの方法で追加する事ができるようになっています。
- メインメニューから、
Assets > Create > C# Script
- プロジェクトウィンドウから、
Create > C# Script
- プロジェクトウィンドウ内で右クリックから、
Create > C# Script
作成されるスクリプトはNewBehaviourScript
という名前がついていますが、
これからCubeを回転させるのに使用するのでCube
という名前に変更しておきましょう。
開いたファイルには最初につけた名前でMonoBehaviour
を継承したクラスが作成されます。
先ほど作成したC#ファイル、Cube
をクリックするとスクリプトを編集するエディタが立ち上がります。
デフォルトの状態ではMonoDevelopというエディタが立ち上がります。
生成されるスクリプトの中身を理解しよう
作成したファイル単体はダブルクリックで開く事ができますが、このプロジェクト全体のプログラムを一度に開くにはメインメニューの Assets > Open C# Project
から開けるようになっています。
先ほどのCube.cs
ファイルは開くと中身はこのような感じになっています。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Cube : MonoBehaviour
{
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
}
}
関数 | 概要 |
---|---|
Start | 初回に一度だけ呼ばれる |
Update | 毎フレームの更新時に呼ばれる |
using | このプログラムにライブラリを読み込んでいる |
public | このクラスやメソッド、が外からアクセスできる |
// | コメントアウト |
クラス | 設計図が書かれている |
メソッド | 何をさせたいかが書かれている |
プロパティ | データが持っている特質、値 |
MonoBehaviour | Unityで扱うプログラムの基本となるクラス |
ここではStart
の関数の中には初回に実行したいものを、
Update
の関数の中には毎フレーム実行したいものをそれぞれ記述する事で動作するようになっています。
void Start()
{
// ここに処理を書く
}
void Update()
{
// ここに処理を書く
}
オブジェクトを回すスクリプトを作成しよう
下記のプログラムを入力して保存します。 アップデートする毎に、トランスフォームのRotateの関数にどれだけ回したいかの値を渡しています。 渡している値は、Vector3という値を使用していて、中身はそれぞれ(x,y,z)の値が入っています。
void Update () {
transform.Rotate (new Vector3 (0, 10, 0));
}
オブジェクトにプログラムをアタッチして回してみよう
ヒエラルキーウィンドウでCubeを選択し、インスペクタウィンドウのAdd Component
のボタンを押して先ほど作成したスクリプトをアタッチします。
再生して確認しよう
ツールバーの再生ボタンを押すとプログラムが実行され、オブジェクトが回転を始めます。
- ショートカット、
Cmnd
+P
でゲームを再生できます
他にも
Translate
で移動させたり、同じスクリプトを別のオブジェクトにアタッチしてみたりなどさまざまな使い方をする事ができます。色々試してみましょう。
- 回転する方向を色々変えてみよう
- 移動させてみよう
- カメラも移動させてみよう