Unity3d 使用[CaneditMultipleObject]在gui中编辑多个对象
我已经创建了一个unity编辑器类,我想在其中选择我的瓷砖并向其添加墙。它适用于单选,但我不能适用于多选。我发现 [CaneditMultipleObject] 但单凭这一点是无济于事的。以下是编辑器脚本:Unity3d 使用[CaneditMultipleObject]在gui中编辑多个对象,unity3d,unity3d-gui,Unity3d,Unity3d Gui,我已经创建了一个unity编辑器类,我想在其中选择我的瓷砖并向其添加墙。它适用于单选,但我不能适用于多选。我发现 [CaneditMultipleObject] 但单凭这一点是无济于事的。以下是编辑器脚本: #if UNITY_EDITOR using UnityEngine; using System.Collections; using UnityEditor; [CustomEditor(typeof(TileMorpherMonoBehaviour))] [CanEditMultip
#if UNITY_EDITOR
using UnityEngine;
using System.Collections;
using UnityEditor;
[CustomEditor(typeof(TileMorpherMonoBehaviour))]
[CanEditMultipleObjects]
public class TileMorpher : Editor {
public override void OnInspectorGUI() {
TileControl tileControl = (target as TileMorpherMonoBehaviour).gameObject.GetComponent<TileControl> ();
if (GUILayout.Button("Add wall")) {
tileControl.addWall ();
}
if (GUILayout.Button("Remove wall")) {
tileControl.removeWall ();
}
}
}
#endif
解决了。目标是关键
for(int i = 0; i < targets.Length; i++) {
(target as SomeClass).gameObject.GetComponent<TileControl> ().addWall();
}