void DisplayProgressBarAndCancel() { SteamAudioBakedStaticListenerNode bakedStaticListener = serializedObject.targetObject as SteamAudioBakedStaticListenerNode; bakedStaticListener.phononBaker.DrawProgressBar(); Repaint(); }
// // Draws the inspector GUI. // public override void OnInspectorGUI() { serializedObject.Update(); EditorGUILayout.Space(); EditorGUILayout.LabelField("Baked Static Listener Settings", EditorStyles.boldLabel); SteamAudioBakedStaticListenerNode bakedStaticListener = serializedObject.targetObject as SteamAudioBakedStaticListenerNode; GUI.enabled = !Baker.IsBakeActive() && !EditorApplication.isPlayingOrWillChangePlaymode; EditorGUILayout.PropertyField(serializedObject.FindProperty("uniqueIdentifier")); bakedStaticListener.uniqueIdentifier = bakedStaticListener.uniqueIdentifier.Trim(); EditorGUILayout.PropertyField(serializedObject.FindProperty("bakingRadius")); EditorGUILayout.PropertyField(serializedObject.FindProperty("useAllProbeBoxes")); if (bakedStaticListener.uniqueIdentifier.Length == 0) { EditorGUILayout.HelpBox("You must specify a unique identifier name.", MessageType.Warning); } if (!serializedObject.FindProperty("useAllProbeBoxes").boolValue) { EditorGUILayout.PropertyField(serializedObject.FindProperty("probeBoxes"), true); } EditorGUILayout.BeginHorizontal(); EditorGUILayout.PrefixLabel(" "); if (GUILayout.Button("Bake Effect")) { if (bakedStaticListener.uniqueIdentifier.Length == 0) { Debug.LogError("You must specify a unique identifier name."); } else { bakedStaticListener.BeginBake(); } } EditorGUILayout.EndHorizontal(); GUI.enabled = true; DisplayProgressBarAndCancel(); serializedObject.FindProperty("bakedStatsFoldout").boolValue = EditorGUILayout.Foldout(serializedObject.FindProperty("bakedStatsFoldout").boolValue, "Baked Static Listener Node Statistics"); if (bakedStaticListener.bakedStatsFoldout) { BakedStaticListenerNodeStatsGUI(); } serializedObject.ApplyModifiedProperties(); }
public void BakedStaticListenerNodeStatsGUI() { SteamAudioBakedStaticListenerNode bakedNode = serializedObject.targetObject as SteamAudioBakedStaticListenerNode; GUI.enabled = !Baker.IsBakeActive() && !EditorApplication.isPlayingOrWillChangePlaymode; bakedNode.UpdateBakedDataStatistics(); for (int i = 0; i < bakedNode.bakedProbeNames.Count; ++i) { EditorGUILayout.LabelField(bakedNode.bakedProbeNames[i], (bakedNode.bakedProbeDataSizes[i] / 1000.0f).ToString("0.0") + " KB"); } EditorGUILayout.LabelField("Total Size", (bakedNode.bakedDataSize / 1000.0f).ToString("0.0") + " KB"); GUI.enabled = true; }