【Tanks】TankManagerスクリプトをTankプレハブにアタッチしないのはなぜ | Unity Forum | Tech Stadium Forum

【Tanks】TankManagerス...
 
通知
すべてクリア

【Tanks】TankManagerスクリプトをTankプレハブにアタッチしないのはなぜ  

  RSS

Student
(@student)
メンバー Moderator
結合: 4年前
投稿: 1351
06/05/2022 11:17 am  

Tanksチュートリアルで質問です。

TankManager スクリプトで Tank のインスタンスを m_Instance に格納してから
m_Instance.GetComponent<>~ のように各コンポーネントを参照をしています。

それなら TankManager スクリプトを Tank プレハブにアタッチしておけば
GetComponent や transform でそのまま参照できると思うのですが
そのようにしないのはなぜなんでしょうか?


引用
Teacher
(@admin)
メンバー Admin
結合: 5年前
投稿: 1318
06/05/2022 11:18 am  

MonoBehaviour を継承していないクラスは、コンポーネントとして GameObject (Prefab) にアタッチすることはできません。

このプロジェクトでは、GameManagerというゲームの進行を管理するクラスが、TankManagerという管理クラスを介して Tank に関わるコンポーネントやUIを管理する、という設計が読み取れます。

この時、TankManager には MonoBehaviour の機能(役割)は必要ないというのが前提なのかもしれません。


返信引用
Student
(@student)
メンバー Moderator
結合: 4年前
投稿: 1351
06/05/2022 11:18 am  

MonoBehaviour がコンポーネントの機能を提供していたのですね。

MonoBehaviour を使わないケースとしてあえてこういう実装をしているのかもしれませんね。
ありがとうございました!


返信引用
共有:
タイトルとURLをコピーしました