Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Unity3d 使用[CaneditMultipleObject]在gui中编辑多个对象_Unity3d_Unity3d Gui - Fatal编程技术网

Unity3d 使用[CaneditMultipleObject]在gui中编辑多个对象

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

我已经创建了一个unity编辑器类,我想在其中选择我的瓷砖并向其添加墙。它适用于单选,但我不能适用于多选。我发现

[CaneditMultipleObject]

但单凭这一点是无济于事的。以下是编辑器脚本:

#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();
}