Version: 5.4

EditorUtility.DisplayProgressBar

Switch to Manual
public static void DisplayProgressBar (string title, string info, float progress);

Description

Displays or updates a progress bar.

The window title will be set to title and the info will be set to info. Progress should be set to a value between 0.0 and 1.0, where 0 means nothing done and 1.0 means 100% completed.

This is useful if you perform any lengthy operations in your editor scripts or wizards, and want to notify the user about the progress.

See Also: DisplayCancelableProgressBar, ClearProgressBar functions.


Progress bar in the editor.

using UnityEngine;
using UnityEditor;

public class DisplayProgressBarExample : EditorWindow { static int secs = 0; static double startVal = 0; static double progress = 0;

[MenuItem( "Example/Simple Progress Bar" )] static void Init( ) { // Get existing open window or if none, make a new one: DisplayProgressBarExample window = (DisplayProgressBarExample)EditorWindow.GetWindow( typeof(DisplayProgressBarExample ) ); window.Show( ); }

void OnGUI( ) { if( secs > 0 ) { if( GUILayout.Button( "Display bar" ) ) startVal = EditorApplication.timeSinceStartup;

progress = EditorApplication.timeSinceStartup - startVal;

if( progress < secs ) EditorUtility.DisplayProgressBar( "Simple Progress Bar", "Shows a progress bar for the given seconds", (float)(progress / secs) ); else EditorUtility.ClearProgressBar( ); } else secs = EditorGUILayout.IntField( "Time to wait:", secs ); } void OnInspectorUpdate( ) { Repaint( ); } }