コード例 #1
0
        public bool BakedReverbGUI(PhononManager phononManager)
        {
            PhononListener bakedReverb = GameObject.FindObjectOfType <PhononListener>();

            if (bakedReverb == null || !bakedReverb.enableReverb ||
                bakedReverb.reverbSimulationType != ReverbSimulationType.BakedReverb)
            {
                return(false);
            }

            PhononGUI.SectionHeader("Bake Reverb");

            GUI.enabled = !PhononBaker.IsBakeActive() && !EditorApplication.isPlayingOrWillChangePlaymode;
            EditorGUILayout.BeginHorizontal();
            bakedReverb.UpdateBakedDataStatistics();

            bool previousValues = bakedReverb.bakeToggle;
            bool newValue       = GUILayout.Toggle(bakedReverb.bakeToggle, " reverb");

            if (previousValues != newValue)
            {
                Undo.RecordObject(bakedReverb, "Toggled reverb in Phonon Manager");
                bakedReverb.bakeToggle = newValue;
            }

            EditorGUILayout.LabelField((bakedReverb.bakedDataSize / 1000.0f).ToString("0.0") + " KB");
            EditorGUILayout.EndHorizontal();
            GUI.enabled = true;

            return(true);
        }
コード例 #2
0
        public void BakedReverbStatsGUI()
        {
            PhononListener bakedReverb = serializedObject.targetObject as PhononListener;

            GUI.enabled = !bakedReverb.phononBaker.IsBakeActive();
            bakedReverb.UpdateBakedDataStatistics();
            for (int i = 0; i < bakedReverb.bakedProbeNames.Count; ++i)
            {
                EditorGUILayout.LabelField(bakedReverb.bakedProbeNames[i], (bakedReverb.bakedProbeDataSizes[i] / 1000.0f).ToString("0.0") + " KB");
            }
            EditorGUILayout.LabelField("Total Size", (bakedReverb.bakedDataSize / 1000.0f).ToString("0.0") + " KB");
            GUI.enabled = true;
        }
コード例 #3
0
        public bool BakedReverbGUI(PhononManager phononManager)
        {
            PhononListener bakedReverb = GameObject.FindObjectOfType <PhononListener>();

            if (bakedReverb == null || !bakedReverb.enableReverb ||
                bakedReverb.reverbSimulationType != ReverbSimulationType.BakedReverb)
            {
                return(false);
            }

            PhononGUI.SectionHeader("Bake Reverb");

            GUI.enabled = !bakedReverb.phononBaker.IsBakeActive();
            EditorGUILayout.BeginHorizontal();
            bakedReverb.UpdateBakedDataStatistics();
            EditorGUILayout.LabelField("__reverb__", (bakedReverb.bakedDataSize / 1000.0f).ToString("0.0") + " KB");
            if (GUILayout.Button("Bake Reverb", GUILayout.Width(200.0f)))
            {
                Debug.Log("START: Baking reverb effect.");
                phononManager.currentlyBakingObject = bakedReverb;
                bakedReverb.BeginBake();
            }
            EditorGUILayout.EndHorizontal();
            GUI.enabled = true;

            DisplayProgressBarAndCancel(bakedReverb, phononManager);

            if (bakedReverb.phononBaker.GetBakeStatus() == BakeStatus.Complete)
            {
                bakedReverb.EndBake();
                phononManager.currentlyBakingObject = null;
                EditorSceneManager.MarkSceneDirty(SceneManager.GetActiveScene());
                Debug.Log("COMPLETED: Baking reverb effect.");
            }

            return(true);
        }