正如大家可能知道的那样,我们可以为monobehaviour类创建编辑器脚本。
我希望能够为Component制作编辑器。 有可能吗?
我不是在询问Monobehaviour编辑器类,而是询问Component类。
我说的是通过编辑器完全扩展Component类。 准确编写" Component"的编辑器,以便能够为Transform Component,Rigidbody组件等制作自定义检查器
答案 0 :(得分:0)
我猜你正在寻找的是一种覆盖默认Unity组件编辑器脚本的方法(MonoBehaviour
脚本基本上是由你创建的组件)。我建议使用第一种方法:
如果您只是想改变Unity组件的完整显示方式,您可以创建一个从您想要更改的组件派生的新类,并将其编写为自定义检查器:
using UnityEngine;
#if UNITY_EDITOR
using UnityEditor;
#endif
public class YOUR_CLASS_NAME : THE_CLASS_YOU_DERIVE_FROM
{
}
#if UNITY_EDITOR
[CustomEditor(typeof(YOUR_CLASS_NAME))]
public class YOUR_CLASS_NAME_CUSTOM_EDITOR : Editor
{
public override void OnInspectorGUI()
{
// If you want to display THE_CLASS_YOU_DERIVE_FROM as it is usually on the inspector (doesn't completely work with some components that have "complex" editor)
base.OnInspectorGUI();
// Otherwise feel free to do what you want
}
}
#endif
请注意,您也可以使用2个脚本执行此操作(只需不要忘记将编辑器放在 ... / Editor /...文件夹下:)
希望这有帮助,