Nanashi-softプログラマ専用Unityでゲーム開発


◇Unityでゲーム開発 -JavaScriptの基本:関数とか-

Unityにおけるスクリプトは,オブジェクト指向をかじったこ とがある人であれば,こう考えれば全てしっくりきます
Projectに追加したスクリプトファイル自体をクラスだと考える

ファイルの先頭に宣言した変数を,クラス変数
ファイル内の関数がメソッド
Hierarcky内のオブジェクトの Inspecterに入れると生成
と言う感じです。これで後の扱いが大体合っています('-'*)

●機能が決まった関数(オーバーライドメソッドね)

特に重要なものだけ書いておきます
function Start(){
	//最初に一度だけ呼び出される
}
function Update(){
	//描画時に処理される
}
function OnCollisionEnter(col : Collision){
	//衝突判定用の処理をする
	if(col.gameObject.name == "「ゲームオブジェクト名」"){
		//それと衝突した
	}
}
※衝突判定は,ただゲームオブジェクトを置いただけではコール バックされません。詳細は別のページで説明します

●変数スコープ

//ファイルの先頭に書いた変数宣言は,そのファイル内全てに有効です(グローバル変数)
var global_hensu;

//privateを付けるとプロパティに表示されません(他のクラスから隠蔽)
private var global_inpei_hensu;

function Update(){
	//関数内に宣言すると,その関数内でのみ有効です(ローカル変数)
	var local_hensu;
}

他のファイル(別生成クラス)のグローバル変数にアクセスする方法
var obj = GameObject.Find("「オブジェクト名」");
var a = obj.GetComponent(「ファイル名」).global_hensu;

基本的に,Inspectorに表示されている値は操作できます
var a = obj.タイトルになっている文字.プロパティ名;
で取得できないときに GetComponent使ってみる感じでしょうか


TOPプログラマ専用Unityでゲーム開発

Melonbooks DL