Unityでゲーム、アプリ開発

Unityで初めてゲームやアプリを作る人のための支援ブログです。

Unity C#言語基礎知識②、よく使う関数を覚えよう! 初心者編⑥

どうもゆうきやんでっす!
たまにもの凄く病む時期があります。

多分みんなからしたらどうでもいい事で笑笑
え?俺って実はメンヘラだったのか?なんて
さらに落ち込む時もあります泣

みなさんはどうでしょうか?

と言う事で本題に入っていきましょう!



C#言語基礎知識!よく使う関数を覚えよう!

f:id:Phoenix9056:20200229224458j:plain

基礎知識知っているだけで何がいいかって
後になって『あ!コレこう言う意味でこうやって使えば良いんだ!』

何を隠そう僕が基礎飛ばして迷ったヤツです!!笑笑

※UnityでのスクリプトC#言語ってなんぞや??って思った方は
先に下記の記事を参考にしてください。

phoenix9056.hatenablog.com
関数ってなんぞや?
簡単にUnityのスクリプトで言う
void Start(){ }void に続くStartの部分にあたります。
Start関数とUpdate関数は上記記事で説明しているので飛ばしていきます。

よく使うfunction(関数)



①『Awake』

POINTGameObjectのスクリプトが開始した時に呼び出す事ができます。
Start関数よりももっと先に、最初の最初に何か決めたい時に
使います。


②『OnGUI』

POINTGUIが更新されるタイミングで呼び出される関数です。
画像や文字などのGUIをカメラ映像の前面に配置する事ができます。
その時に使われる関数だと思っていましょう。


③『LateUpdate』

POINT1フレーム中に全部のGameObjectの状況が反映されて、
描画される直前
で呼び出されます。
例えば、あるGameObjectが球を発射してその発射された玉をカメラが
追いかける時、Update関数だと1フレーム遅れて実行されてしまうので
球発射!のすぐ後にカメラで追いかける!って時に利用できます。


④『OnDestroy』

POINTGameObjectが消えてしまう瞬間に呼び出されます。
例えば左クリックでGameObjectを消す瞬間に爆発や効果音を
流したい時
に使えます。


⑤『OnCollisionEnter』

POINTGameObjectが持っているコライダの領域に、
別のコライダがぶつかった瞬間
に呼び出されます。
例えて言うと、キャラクターとキャラクターがぶつかって(大袈裟ですが)
血が噴き出す演出をしたり、磁石で言うとSとSが反発する様に、
吹き飛ばしたい
と言った時に使います。


⑥『OnCollisionEnter』

POINTコレはGameObjectが持っているコライダの領域から
出た瞬間
に呼び出されます。
敵キャラクターのコライダの範囲から主人公が出たら追いかける時や、
キャラクターが幽霊キャラから遠ざかったら心臓のバクバク音を無くすと、
言った感じで利用します。


⑦『OnCollisionStay』

POINT今度は、GameObjectのコライダが別のコライダと
触れている時
に呼び出されます。
キャラクターと地面のコライダが触れている時、地面が沼設定であれば沈んでいく。
アクションで言えばキャラどうしのコライダが触れている時は、
掴み合うアクションをする
と言った形です。


⑧『OnTriggerEnter』

POINTコレは少し気質が違って、
コライダコンポーネント内にあるisTriggerのチェックボックスにチェックが入っている時
利用できる関数です。
isTriggerにチェックが入っているとスクリプトのコードなしでは
コライダが使えない状態になります。
例えば、幽霊キャラが主人公キャラをすり抜けていった時に悪寒が走るアクションをする。
剣が相手に当たった瞬間でけダメージを与えるなど、そんな時に使います。


今日はこんな感じで終わりたいと思います。
もっと勉強して分かりやすい説明ができる様にしますね!
僕のスタイルは、実際やってみて説明する!です。
プログラミングの記事って結構適当に書いている人もいれば
凄い公式的なホームページなのに言ってる事適当なんてザラにあります。

ご視聴ありがとうございました。

初心者編の記事カテゴリは下記を参照してください。
phoenix9056.hatenablog.com


※このままUnity学習される方は下記カテゴリから好きな記事を選んでください。
phoenix9056.hatenablog.com

※オススメアセットはこちらのカテゴリになります。
phoenix9056.hatenablog.com