シーン間でデータを処理する適切な方法は何ですか?
私はUnityで最初の2Dゲームを開発していますが、重要な質問と思われるものに出会いました。 シーン間でデータを処理するにはどうすればよいですか? これには異なる答えがあるようです: PlayerPrefsの使用に言及している人もいれば、画面の明るさなどのその他のものを保存するために使用すべきだと他の人から言われました。 誰かが私に、シーンを変更するたびにセーブゲームにすべてを書き込み、新しいシーンがロードされたときに必ずセーブゲームから情報を取得するようにすることだと言った。これはパフォーマンスが無駄に思えました。私は間違っていましたか? もう1つのソリューションは、これまでに実装したものですが、シーン間で破壊されず、シーン間のすべてのデータを処理するグローバルゲームオブジェクトを用意することです。したがって、ゲームが開始されると、このオブジェクトがロードされる開始シーンをロードします。これが終了すると、最初の実際のゲームシーン(通常はメインメニュー)が読み込まれます。 これは私の実装です: using UnityEngine; using UnityEngine.UI; using System.Collections; public class GameController : MonoBehaviour { // Make global public static GameController Instance { get; set; } void Awake () { DontDestroyOnLoad (transform.gameObject); Instance = this; } void Start() { //Load first game scene (probably main menu) …