Beispiel #1
0
    public static void SkyboxInspector(SpaceBox sb)
    {
        GuiTools.DrawTitleChapter("Original skybox",12,true,0,Screen.width,Color.white);

        EditorGUI.BeginChangeCheck();
        sb.skyboxTexture[0] = (Texture2D)EditorGUILayout.ObjectField("Front",sb.skyboxTexture[0],typeof(Texture2D),true);
        sb.skyboxTexture[1] = (Texture2D)EditorGUILayout.ObjectField("Back",sb.skyboxTexture[1],typeof(Texture2D),true);
        sb.skyboxTexture[2] = (Texture2D)EditorGUILayout.ObjectField("Left",sb.skyboxTexture[2],typeof(Texture2D),true);
        sb.skyboxTexture[3] = (Texture2D)EditorGUILayout.ObjectField("Right",sb.skyboxTexture[3],typeof(Texture2D),true);
        sb.skyboxTexture[4] = (Texture2D)EditorGUILayout.ObjectField("Up",sb.skyboxTexture[4],typeof(Texture2D),true);
        sb.skyboxTexture[5] = (Texture2D)EditorGUILayout.ObjectField("Down",sb.skyboxTexture[5],typeof(Texture2D),true);

        if(EditorGUI.EndChangeCheck()){
            sb.UpdateOriginalSkybox();
        }
    }
Beispiel #2
0
    public static void Inspector(SpaceBox sb)
    {
        if (Application.isPlaying) return;

        GuiTools.DrawTitleChapter("Nebula",12,true,0,Screen.width,Color.white);

        #region Toolbar
        if (GUILayout.Button( new GUIContent(" Add nebula",CosmosInspector.GetIcon(13) ))){
            SpaceBox.instance.starfield.Render(true);
            sb.AddNebula();
            RenderNebula( SpaceBox.instance.GetNebulaQuality2Int());
            SpaceBox.instance.UpdateNebulaSkyBox();
            SpaceBox.instance.nebulaNeed2Save = true;
        }

        EditorGUILayout.Space();

        // Random
        if (GUILayout.Button(new GUIContent(" Random nebula",CosmosInspector.GetIcon(15)))){
            SpaceBox.instance.starfield.Render(true);
            sb.RandomNebula();
            RenderNebula( SpaceBox.instance.GetNebulaQuality2Int());
            SpaceBox.instance.UpdateNebulaSkyBox();
            SpaceBox.instance.nebulaNeed2Save = true;

        }

        // Color
        if (GUILayout.Button( new GUIContent("Random color",CosmosInspector.GetIcon(14)))){
            SpaceBox.instance.Quality = SpaceBox.NebulaQuality.Draft;
            SpaceBox.instance.UpdateNebulaColor();
            RenderNebula( SpaceBox.instance.GetNebulaQuality2Int());
            SpaceBox.instance.UpdateNebulaSkyBox();
            SpaceBox.instance.nebulaNeed2Save = true;
        }

        GuiTools.DrawSeparatorLine();

        // Quality
        GUI.backgroundColor = new Color(33f/255f,180f/255f,252f/255f);
        SpaceBox.NebulaQuality tmpQuality = (SpaceBox.NebulaQuality)EditorGUILayout.EnumPopup("Quality",sb.Quality);
        if (tmpQuality != sb.Quality){
            sb.Quality = tmpQuality;
            RenderNebula( SpaceBox.instance.GetNebulaQuality2Int());
            SpaceBox.instance.UpdateNebulaSkyBox();
            SpaceBox.instance.nebulaNeed2Save = true;
        }
        GUI.backgroundColor = Color.white;

        EditorGUILayout.Space();
        #endregion

        #region Nebula inspector process
        int i=0;
        while (i<sb.nebula.Count){
            NebulaProperties(sb.nebula[i]);
            i++;
        }
        #endregion

        GuiTools.DrawSeparatorLine();

        // Clear
        if (GUILayout.Button(new GUIContent( " Clear",CosmosInspector.GetIcon(12)))){
            if (EditorUtility.DisplayDialog( "Delete all nebulas","Are you sure ?","Delete","Cancel")){
                SpaceBox.instance.starfield.Render(true);
                SpaceBox.instance.Quality = SpaceBox.NebulaQuality.Draft;
                SpaceBox.instance.ClearNebula();
                RenderNebula( SpaceBox.instance.GetNebulaQuality2Int());
                SpaceBox.instance.starfield.Render();
                SpaceBox.instance.UpdateNebulaSkyBox();
                SpaceBox.instance.nebulaNeed2Save = true;
            }
        }
    }