2017-01-16 8 views
1

インスペクタでSceneオブジェクト(新しいSceneManagerから)を表示して操作する必要があります。私はシーンがまだインスペクタに表示されませんUnityインスペクタでSceneオブジェクトを描画する方法

[SerializeField] 
Scene scene; 

を使用して、それをシリアル化しようとしても 。 SceneManagerはかなり新しく(Unity 5)、そこには情報はあまりなく、かつてのようにシーンを参照することを控えたいと思っています。

答えて

0

documentationに記載されているように、Sceneオブジェクトは実行時データです。したがって、オープン時または実行時にのみ使用できます。おそらく、操作したいフィールドのカスタムインスペクタを描画するでしょう。

BuildSettingsで定義されたシーンを取得したい場合は、UnityEditor名前空間のEditorBuildSettings.scenesで作業することができます。 BuildSettingsで定義されたシーンだけを選択するカスタムInspectorフィールド(Enum Popupなど)を作成します。

から取得できるSceneSetupで作業することもできます。しかし、これはあなたのシーンや実行時にロードされたデータを操作することだけを可能にします。

シーンオブジェクト用のラッパークラスを作成し、それにカスタムProperty drawerを描画することができます。実際のSceneオブジェクトにデータを適切に保存するには、フィールドにユーザー入力を管理するためのクラスが必要です。

関連する問題