Unityでスクリプトを生成した際は、デフォルトで下記のようなスクリプト内容になっています。
1 2 3 4 5 6 7 8 9 10 11 12 |
using System.Collections; using System.Collections.Generic; using UnityEngine; public class Test : MonoBehaviour { void Start() { } void Update() { } } |
「MonoBehaviour(モノビヘイビア)」というクラスが継承されているということですが、これは一体何でしょうか。
MonoBehaviour(モノビヘイビア)とは?
全てのスクリプトの「ベースクラス」で、ゲームオブジェクトを制御するために必要な機能を提供しています。
Unityのスクリプトは、「MonoBehaviour」というクラスの子クラスでなければならないというルールがあります。
ただし一部例外はあり。
Unity上に実体があるクラスは、もちろん「MonoBehaviour」を継承させなければなりません。
しかし、ただのロジックを記載するだけのクラス等のUnity上に実体のないクラス等は、継承させる必要はないです。
MonoBehaviourのユースケース
GameObjectにゲームの機能を追加する。
ゲームのキャラクターやコンポーネントなどもMonoBehaviourを継承しています。
プログラムの開始、終了ポイント
後述するStart、Updateメソッドなどです。(他にも、Awake、OnEnable、OnDisable、OnDestroyなどのメソッドがあります。)
Startメソッド、Updateメソッドについて
これも、Monobehaviourクラスのメソッドの一つで、Unityのシステムから呼び出されるイベント関数と呼ばれるものです。
Startメソッド
初期化イベントです。ゲームオブジェクトが登場した際に何かさせたい場合に記述します。
Updateメソッド
定期イベントです。ゲームオブジェクトが出現後に定期的に何かをさせたい場合に記述します。
定期イベントは、フレームごとに呼び出されます。
「フレーム」とは?
ゲームが画面を書き換える1コマのことです。
フレームを1秒間に書き換える回数のことをfps(frame per second)と呼びます。
fpsの平均回数は?
fpsの平均回数は性能もよりますが、端末によってかなり異なります。
端末 | fps |
---|---|
パソコン | 50~60 |
スマホ | 20 |
この記事へのコメントはありません。