Unity Slider不会自动应用更改

时间:2016-08-04 14:56:16

标签: user-interface events unity3d 3d editor

我用Slider创建了自定义编辑器:

[CustomEditor(typeof(CylindricalCamera))]
public class CylindricalCameraEditor : Editor
{
    public override void OnInspectorGUI()
    {
        CylindricalCamera camera = (CylindricalCamera)target;
        camera._nearClipPlane = EditorGUILayout.Slider(camera._nearClipPlane, 0, 10);

在CylindricalCamera我正在绘制一个自定义小发明:

public class CylindricalCamera : MonoBehaviour
{
..
    void OnDrawGizmos()
    {
...

我希望每次拖动滑块时都要重新绘制CylindricalCamera中的Gizmo。但实际上我不仅要拖动滑块,还要选择并在Slider附近的文本框中按Enter键:

Custom slider

如何在不按Enter键的情况下强制Slider自动应用更改?

我正在使用Unity 5.3.5 f1

1 个答案:

答案 0 :(得分:2)

解决:

OnInspectorGUI()
{
...
if (GUI.changed) EditorUtility.SetDirty(target);
}