【Unity】SceneManagerを使用しないフロー制御
SceneManagerを使用しないフロー制御
Sceneは1つのまま、内部でフロー制御できないか試したので、ご紹介します。
Unityバージョン:Unity 2018.3.13f1
やり方
①フロー制御のManagerを作成
②フローごとのオブジェクトをPrefab化
③ManagerがフローごとにPrefabを生成
ManagerのInspectorにフローのObjectを指定。
各フローのObjectが遷移後のフローを指定します。
今回はButtonにButton用スクリプトをアタッチしてOnClick()の中で呼び出してます。
フローのEnumも用意します。
この時、Managerの中に用意すると呼び出すときにManager.EnGameFlowとなってちょっと長いので、Managerの外に定義してます。
後は、ManagerのUpdateでリクエストが来たら今のフローのObjectを削除してリクエストのフローのObjectを生成します。
これで、フロー制御することができました。
感想
Sceneを跨がないので、フェードアウトの制御もしやすいと思います。
ただ、LoadSceneとこの方法どちらが早いの検証等もまだしてないので、今後やっていけたらなと思います。
問題点等ありましたら教えてくださいm(__)m