私の問題は、複数のシーンで同じ GUI を共有する方法です。
例えば:
農場のシーンにインベントリ GUI があり、城やダンジョンなどの他のシーンでこの GUI が必要です。
Canvasのプレハブを作ってみませんか?それとも、GUI を再設計しますか? 「共有 GUI」とダイアログなどの個別の GUI を混在させるのはどうですか?
回答ありがとうございます。
私の問題は、複数のシーンで同じ GUI を共有する方法です。
例えば:
農場のシーンにインベントリ GUI があり、城やダンジョンなどの他のシーンでこの GUI が必要です。
Canvasのプレハブを作ってみませんか?それとも、GUI を再設計しますか? 「共有 GUI」とダイアログなどの個別の GUI を混在させるのはどうですか?
回答ありがとうございます。
Besides GUI itself you will need some scripts to handle each element and property separately.
Take a look at singleton codes; it shows how to create persistent object, which stays across different scenes.
http://wiki.unity3d.com/index.php/Singleton
It's good practice to script GUI which needs to be visible on different levels with this design pattern.
必要な画面ごとにキャンバスのプレハブを作成することはできますが、キャンバスを破棄して何度も再生成する必要がある場合は、パフォーマンスが低下する可能性があります。別の方法は、すべての画面を子として単一のキャンバスを作成し、すべてを無効にして、必要に応じてそれぞれを有効にすることです。これには、一度に多くの計算を行わないという利点がありますが、欠点として、すべてをメモリに保持するためのオーバーヘッドがあります。小さなゲームの場合は後者をお勧めします。スケールアップする必要がある場合は、2 つを組み合わせることができます。複数の関連する画面を持つキャンバスを用意し、理想的には、特定の状況でのみアクセスできるように画面をグループ化して、シーン内のキャンバスをできるだけ少なくします。