public void OnEnable()
    {
        greenScreen = (GreenScreenManager)target;


        keyColors = serializedObject.FindProperty("keyColors");
        erosion   = serializedObject.FindProperty("erosion");

        range      = serializedObject.FindProperty("range");
        smoothness = serializedObject.FindProperty("smoothness");
        whiteclip  = serializedObject.FindProperty("whiteClip");
        blackclip  = serializedObject.FindProperty("blackClip");
        sigma      = serializedObject.FindProperty("sigma_");
        despill    = serializedObject.FindProperty("spill");
    }
    public void OnEnable()
    {
        greenScreen = (GreenScreenManager)target;

        //Create serialized properties for all the GreenScreenManager's fields so they can be modified and saved/serialized properly.
        keyColors = serializedObject.FindProperty("keyColors");
        erosion   = serializedObject.FindProperty("erosion");

        range          = serializedObject.FindProperty("range");
        smoothness     = serializedObject.FindProperty("smoothness");
        whiteclip      = serializedObject.FindProperty("whiteClip");
        blackclip      = serializedObject.FindProperty("blackClip");
        sigma          = serializedObject.FindProperty("sigma_");
        despill        = serializedObject.FindProperty("spill");
        pathfileconfig = serializedObject.FindProperty("pathFileConfig");

        enableGrabageMatte = serializedObject.FindProperty("enableGarbageMatte");
    }
    public override void OnInspectorGUI()
    {
        serializedObject.Update();
        greenScreen = (GreenScreenManager)target;
        key_colors();
        GUILayout.Space(20);
        EditorGUILayout.BeginHorizontal();
        greenScreen.pathFileConfig = EditorGUILayout.TextField("Save Config", greenScreen.pathFileConfig);
        if (GUILayout.Button("...", optionsButtonBrowse))
        {
            greenScreen.pathFileConfig = EditorUtility.OpenFilePanel("Load save file", "", "*");
            serializedObject.ApplyModifiedProperties();
        }
        EditorGUILayout.EndHorizontal(); EditorGUILayout.BeginHorizontal();
        GUILayout.FlexibleSpace();

        if (GUILayout.Button("Save"))
        {
            greenScreen.SaveChromaKeys();
        }
        GUI.enabled = File.Exists(greenScreen.pathFileConfig);
        if (GUILayout.Button("Load"))
        {
            greenScreen.LoadChromaKeys();
        }
        GUI.enabled = true;

        EditorGUILayout.EndHorizontal();
        GUILayout.Space(20);
        if (GUILayout.Button("Camera Control"))
        {
            EditorWindow.GetWindow(typeof(ZEDEditor), false, "ZED Camera").Show();
        }

        serializedObject.ApplyModifiedProperties();
    }
Beispiel #4
0
    public override void OnInspectorGUI()
    {
        serializedObject.Update();
        greenScreen = (GreenScreenManager)target;
        key_colors();



        if (ToggleButtonStyleNormal == null)
        {
            ToggleButtonStyleNormal  = "Button";
            ToggleButtonStyleToggled = new GUIStyle(ToggleButtonStyleNormal);
            ToggleButtonStyleToggled.normal.background = ToggleButtonStyleToggled.active.background;
        }

        //matte = (ZEDGarbageMatte)target;
        matte       = greenScreen.garbageMatte;
        GUI.enabled = greenScreen.screenManager != null && greenScreen.screenManager.ActualRenderingPath == RenderingPath.Forward;
        enableGrabageMatte.boolValue = EditorGUILayout.Toggle("Enable Garbage Matte", enableGrabageMatte.boolValue);
        GUI.enabled = true;
        if (enableGrabageMatte.boolValue && greenScreen.screenManager != null && greenScreen.screenManager.ActualRenderingPath == RenderingPath.Forward)
        {
            //serializedObject.Update();
            EditorGUILayout.BeginHorizontal();
            if (GUILayout.Button("Place Markers", matte.editMode ? ToggleButtonStyleToggled : ToggleButtonStyleNormal))
            {
                matte.editMode = !matte.editMode;
                if (matte.editMode)
                {
                    matte.EnterEditMode();
                }
            }
            EditorGUILayout.EndHorizontal();
            EditorGUILayout.BeginHorizontal();
            if (GUILayout.Button("Remove Last Marker"))
            {
                matte.RemoveLastPoint();
            }
            EditorGUILayout.EndHorizontal();
            EditorGUILayout.BeginHorizontal();
            if (GUILayout.Button("Apply Garbage Matte"))
            {
                matte.ApplyGarbageMatte();
            }
            EditorGUILayout.EndHorizontal();


            GUI.enabled = true;

            if (GUILayout.Button("Reset"))
            {
                matte.ResetPoints(true);
            }
        }

        GUILayout.Space(20);
        EditorGUILayout.BeginHorizontal();
        pathfileconfig.stringValue = EditorGUILayout.TextField("Save Config", greenScreen.pathFileConfig);
        serializedObject.ApplyModifiedProperties();
        if (GUILayout.Button("...", optionsButtonBrowse))
        {
            pathfileconfig.stringValue = EditorUtility.OpenFilePanel("Load save file", "", "json");
            serializedObject.ApplyModifiedProperties();
        }
        EditorGUILayout.EndHorizontal(); EditorGUILayout.BeginHorizontal();
        GUILayout.FlexibleSpace();

        if (GUILayout.Button("Save"))
        {
            greenScreen.SaveData(greenScreen.RegisterDataChromaKeys(), greenScreen.garbageMatte.RegisterData());
        }
        GUI.enabled = File.Exists(greenScreen.pathFileConfig);
        if (GUILayout.Button("Load"))
        {
            greenScreen.LoadGreenScreenData(true);

            keyColors.colorValue  = greenScreen.keyColors;
            range.floatValue      = greenScreen.range;
            smoothness.floatValue = greenScreen.smoothness;
            whiteclip.floatValue  = greenScreen.whiteClip;
            blackclip.floatValue  = greenScreen.blackClip;
            erosion.intValue      = greenScreen.erosion;
            sigma.floatValue      = greenScreen.sigma_;
            despill.floatValue    = greenScreen.spill;
        }
        if (GUILayout.Button("Clean"))
        {
            matte.CleanSpheres();
        }
        GUI.enabled = true;

        EditorGUILayout.EndHorizontal();
        GUILayout.Space(20);
        if (GUILayout.Button("Camera Control"))
        {
            EditorWindow.GetWindow(typeof(ZEDCameraSettingsEditor), false, "ZED Camera").Show();
        }


        serializedObject.ApplyModifiedProperties();
    }
Beispiel #5
0
 public void OnEnable()
 {
     greenScreen = (GreenScreenManager)target;
     //greenScreen.SetDefaultValues();
 }