Version: 2017.1

SceneAsset

class in UnityEditor

/

継承:Object

マニュアルに切り替える

説明

SceneAsset はエディターでシーンオブジェクトに対する参照を持つのに使用されます。

ユーザーがフィールドの値としてシーンオブジェクトを取得できるよう、 ObjectField UI 要素の型として使用されます。

以下の例はシーンをエディターで取得する方法です。 ScenePicker コンポーネントはシーンのゲームオブジェクトにアタッチされています。

using UnityEngine;

public class ScenePicker : MonoBehaviour { [SerializeField] public string scenePath; }

ScenePickerEditor スクリプトはプロジェクトの Editor ディレクトリに設置しなくてはいけません。ユーザーがシーンを選択できるよう、 ObjectField の SceneAsset クラスを使用するエディターのカスタムインスペクターを提供します。

using UnityEngine;
using UnityEditor;

[CustomEditor(typeof(ScenePicker), true)] public class ScenePickerEditor : Editor { public override void OnInspectorGUI() { var picker = target as ScenePicker; var oldScene = AssetDatabase.LoadAssetAtPath<SceneAsset>(picker.scenePath);

serializedObject.Update();

EditorGUI.BeginChangeCheck(); var newScene = EditorGUILayout.ObjectField("scene", oldScene, typeof(SceneAsset), false) as SceneAsset;

if (EditorGUI.EndChangeCheck()) { var newPath = AssetDatabase.GetAssetPath(newScene); var scenePathProperty = serializedObject.FindProperty("scenePath"); scenePathProperty.stringValue = newPath; } serializedObject.ApplyModifiedProperties(); } }

コンストラクタ

SceneAssetコンストラクター

継承メンバー

変数

hideFlagsオブジェクトは非表示、シーンに保存、ユーザーが編集可能、などを設定する。
nameオブジェクト名

Public 関数

GetInstanceIDオブジェクトのインスタンス ID を返します
ToStringゲームオブジェクトの名前を返します

Static 関数

Destroyゲームオブジェクトやコンポーネント、アセットを削除します
DestroyImmediateDestroys the object obj immediately. You are strongly recommended to use Destroy instead.
DontDestroyOnLoad新しいシーンを読み込んでもオブジェクトが自動で破壊されないように設定します
FindObjectOfTypeタイプ type から最初に見つけたアクティブのオブジェクトを返します
FindObjectsOfTypeタイプから見つけたすべてのアクティブのオブジェクト配列を返します
Instantiateoriginal のオブジェクトをクローンします

Operator

boolオブジェクトが存在するかどうか
operator !=二つのオブジェクトが異なるオブジェクトを参照しているか比較します
operator ==2つのオブジェクト参照が同じオブジェクトを参照しているか比較します。