我需要在对象检查器中编辑此结构,就像在屏幕截图上一样: Structure
我的主要对象附有一个脚本。它有一个名为TestData的成员,它本身有另外两个成员I和F.
当我点击我的主对象时,如何启用Unity Inspector来编辑TestData的成员(I,F)而不是对TestData的引用?
答案 0 :(得分:3)
在Unity中创建一个脚本并将其附加到GameObject。该脚本必须来自MonoBehaviour
您可以将公共变量添加到脚本中,并在检查器中查看它们。
C#:
public Vector3 StartPoint;
您可以在课程中添加[System.Serializable]
:
[System.Serializable]
public class TestData
{
public int I;
public int F;
}
或者,如果您希望检查器显示默认编辑器面板以外的其他内容,则可以为您的类型定义CustomPropertyDrawer。
[CustomPropertyDrawer(typeof(MyScript))]
public class MyScriptDrawer : PropertyDrawer
{
public override void OnGUI(Rect position, SerializedProperty property, GUIContent label)
{
//...
EditorGUI.BeginProperty(position, label, property);
EditorGUI.LabelField(new Rect(x, y, w, h), "title");
EditorGUI.PropertyField(rect, I, GUIContent.none);
//...
}
}