前回UnityでC#スクリプトを作成してアタッチする方法をやっていただきました。では実際にスクリプトを開いてみましょう。
Unityでスクリプトを開く方法
●スクリプトを開く方法
【Projectウィンドウ】→【Testスクリプトをダブルクリック】→【スクリプトが表示される】
いよいよプログラミングっぽいですね。
こんな画面になっていればOK
あとエディタの色とか気にしないでください。機能はかわりません。文字が小さいと感じたら【CTRL】+【スクロール(マウスの回せるところ)】で拡大できます。
もしVisual Studio以外が開いてしまう場合
もしVisual Studio以外(Monodevelop)が開いてしまう場合、そのエディタでも良いのですが、変更してください。
圧倒的にVisual Studioのほうが使いやすいので変更しましょう。インストールしていない場合はVisual Studioをインストールしましょ。
自動的に書いてあるスクリプトの説明
using System.Collections; // データを格納する型を提供(気にしないで)
using System.Collections.Generic; // データを格納する型を提供(気にしないで)
using UnityEngine; // Unityを動かすための機能を提供(気にしないで)
// 1.クラス名
public class Test : MonoBehaviour {
// Use this for initialization
void Start () { // 2.Startメソッド
}
// Update is called once per frame
void Update () { // 3.Updataメソッド
}
}
このようなスクリプトが書いてありますよね。「//丸々」このようなコメントは勝手につけた部分があります。「//」以降はコメントといって、メモみたいなもの。スクリプトに影響を与えません。あと太字も勝手につけました。
最初のやつらは気にしないで
using System.Collections; // データを格納する型を提供(気にしないで)
using System.Collections.Generic; // データを格納する型を提供(気にしないで)
using UnityEngine; // Unityを動かすための機能を提供(気にしないで)
こやつは気にしないでください。
1.クラス名を決める
public class Test : MonoBehaviour {
略
}
1ではクラス名を決めています。C#はクラスという単位でスクリプトを管理しています。
「public class Test」この「Test」というのがクラス名を表して、
【クラス名】=【スクリプト名】
でなければなりません。【スクリプト名】はスクリプト作成時につけた名前です。
もしこのクラス名が「Test」でない場合はスクリプト作成時に名前を入力しなかったのが原因です。自分で「Test」と書き換えましょう。
「{」「}」で挟まれた部分をブロックといいます。「{」だけでもなく、「}」も必ず必要です。
スクリプトを実行したときに処理される内容がブロックで挟まれた部分です。今回でいうと「Startメソッド」と「Updateメソッド」が実行されます。
2.Startメソッド
// Use this for initialization
void Start () {
// ここに処理を書くよ
}
「// Use this for initialization」コメントですね。スクリプトを実行しても無視されます。
ここは「Startメソッド」といわれています。「メソッド」とは操作を定義したものです。
とりあえずスクリプト実行時に一度だけ「{」「}」に挟まれるブロックとよばれる部分が実行されます。
「Start」って書いてあるぐらいだからね。
3.Updateメソッド
// Update is called once per frame
void Update () {
// ここに処理を書くよ
}
「 // Update is called once per frame」はコメントですね。実行されません。
ここは「Updateメソッド」といわれています。「メソッド」とは操作を定義したものです。
とりあえずスクリプト実行時に1フレームごとに「{」「}」に挟まれるブロックとよばれる部分が実行されます。
何回も実行されるよってことです。
StartメソッドとUpdateメソッドの関係
スクリプト実行
↓
Startメソッド(一度のみ)
↓
Updateメソッド ← ↑(1フレームごと)
↓ ↑
→→→→→→→→→→
Startメソッドはスクリプト実行時に一回のみ実行されます。Updateメソッドは1フレームごと実行されます。
まとめ
- スクリプトはダブルクリックをすれば開ける
- 【クラス名】=【スクリプト名】
- Startメソッドは一回実行
- Updateメソッドは1フレームごと実行
では次のHello Worldを表示するにいきましょ。
コメント