シーンに追加せずに新しいGameObjectを作成する方法は?
私は本質的に自分のプレハブシステムを作成しています。ゲームオブジェクトは、人間が読めるデータファイルによって定義されます。空のゲームオブジェクトを作成し、データファイルで定義されたコンポーネントを使用してロードし、準備してInstantiate()呼び出しを待機したいと思います。ただし、使用GameObject go = new GameObject()するたびに新しいゲームオブジェクトがシーンに追加されます。 Unityに組み込まれたプレハブを使用して、プレハブをGameObjectとしてロードできますが、シーンに追加されません。(下の例を参照) この背後にある理論的根拠は、Unityプレハブをロードすることによって生成されたものと、カスタムプレハブシステムによって作成されたものと、GameObjectsを含む1つのリストが欲しいということです。これは実行時に行う必要があり、Unity Editorを使用することはできません(理想的にはエンドユーザーが独自のデータファイルを定義できるためです)。 Unityが自動的にインスタンス化しないで、新しいGameObjectを作成するにはどうすればよいですか? たとえば、次のように電話をかけることができます。 Resources.LoadAll("PrefabsDirectory", typeof(GameObject)) また、呼び出しが行われたときにシーンに追加されていないGameObjectsのリストを取得します。基本的に、私はLoadAll自分のプレハブ用のメソッドを作成しています。同様に、呼び出しが行われたときにGameObjectsをインスタンス化したくありません。