2011年8月17日水曜日

Unityのスクリプトの基本

Unityを触ってちょっとずつ理解したこと8

Unityで何をするにしてもScriptが必要なわけだけれども、その基本形は以下の5つの関数から成り立っている。

初期化系
Awake()
Start()

アップデート系
Update()
FixedUpdate()
LateUpdate()

Awake()とStart()の違い
Awake()はゲーム開始前に呼ばれるので、ゲームの状態や値を初期化するために使った方がよい。どのオブジェクトのAwake()から順番に呼ばれるかはランダムだが、どのオブジェクトのStart()よりも前に呼び出される。従って、Awake()から他のオブジェクトの状態を参照するような処理はしない方がよい。そうした処理はStart()に任せるべき。

LateUpdate()の特徴
全てのオブジェクトのUpdate()が呼び出された後に呼び出される。LateUpdate()は例えば、追跡カメラの処理と相性が良い。Update()で全てのオブジェクトの移動処理が終わった後で、追跡カメラの座標を決められるから。

Update()とFixedUpdate()の違い
Update()は毎フレーム呼び出されるが、FixedUpdate()は指定されたフレーム毎に呼び出される。この特性から、FixedUpdate()は特にRigidbody(剛体)に対する処理、新しく力を加えるなど、に向いている。(毎フレーム処理をするのにはRigidbodyが向いていないから?)

0 件のコメント:

コメントを投稿