Google

2011年10月12日水曜日

MonoBehaviour継承

Unityでは事実上基底クラスがMonoBehaviourみたいなことになっているので、実戦環境では多段継承で実装していくケースもあるかと思われます。
じゃあ自分で作ったメンバはいいけど、MonoBehaviourのメンバはどうやればいいか?を実験してみましょう。

まずはC#スクリプトを2つ作成してください。
メニューから「Assets」→「Create」→「C# Script」です。


基底クラスとなるBaseScript、そこから派生するinheritanceScriptです。

UnityのinheritanceScriptリファレンスを見ても、StartやUpdateが仮想関数だとは書いてません。
JsやBooと共用なので書きづらい部分もあるのでしょうが。
基本FWのソースコードは見れないのでまずは実験です。

出来上がったらメニューの「GameObject」→「Create Empty」で空っぽのオブジェクトを作成してください。
inheritanceScriptだけをそいつにドラッグし、ヒモ付します。


くっついたのを確認したらおもむろに実行してみましょう。


このSSのようになったら成功です。
基底クラスのStartと派生クラスのStartが呼び出されていることが解りました。
なお、他のメンバも同様に仮想関数として扱えます。

0 件のコメント:

コメントを投稿