Unity provides a number of preferences that allow you to customize the behavior of the Unity Editor.
The search box allows you to enter keywords so you can filter the list on the left by category and highlight keywords on the right. For more information, see Finding settings.
Preferences are grouped by category. The category list displays a list of available categories. When you click on a preference category, all preferences matching that category appear in the details pane.
The details pane displays the list of preferences for each category.
To access the Preferences window, go to Edit > Preferences (Windows) or Unity > Preferences (Mac) from the main menu in Unity. The following preference categories are available:
Some AssetStore or Unity packages add their own custom preferences to the Preferences window. Generally these use the package name as the preferences category. In this example, you can see the Cinemachine package preferences:
For information about a specific package’s preferences, see the documentation for that package. This section contains documentation only for standard Unity preferences.
General preferences allow you to customize working in Unity overall.
|Auto Refresh||Enable this option to update Assets automatically as they change.|
|Load Previous Project on Startup||Enable this option to always load the previous Project at startup.|
|Compress Assets on Import||Enable this option to automatically compress Assets during import.|
|macOS Color Picker||Enable this option to use the native macOS color picker instead of Unity’s own.|
|Disable Editor Analytics (Pro only)||Enable this option to stop the Editor automatically sending information back to Unity.|
|Show Asset Store search hits||Enable this option to show the number of free/paid Assets from the Asset Store in the Project Browser.|
|Verify Saving Assets||Enable this option if you wish to verify which Assets to save individually on quitting Unity.|
|Script Changes While Playing||Choose Unity’s behavior when scripts change while your game is running in the Editor.|
|Recompile And Continue Playing||Recompile your scripts and keep running the Scene. This is the default behaviour, but you might want to change it if your scripts rely on any non-serializable data.|
|Recompile After Finished Playing||Defer recompilation until you manually stop your Scene, avoiding any interruption.|
|Stop Playing And Recompile||Immediately stop your Scene for recompilation, allowing you to quickly restart testing.|
|Editor Skin||Choose which skin to use in the Unity Editor. This is only available for Plus and Pro Unity subscriptions.|
|Personal||Use the light grey background with black text.|
|Professional||Use the dark grey background with white text.|
|Enable Alpha Numeric Sorting||Enable this option to display a button in the top-right corner of the Hierarchy window, which toggles between Transform sort (the default) and Alphanumeric sort.|
|Device To Use||Choose which of your computer’s graphics devices Unity should use. You can leave this on Automatic unless you want Unity to use a specific device. This setting overrides any device specified in command line options.|
Use the Max Sprite Atlas Cache Size (GB) preference to set the maximum size of the Sprite Atlas cache folder. Whenever possible, Unity keeps the size of this folder below this level.
Enable the Show Flood Fill Preview to preview the Tilemap you are painting in Flood Fill mode. This option is enabled by default, but you can disable it to improve performance for large fill areas.
Choose a behavior from the Tile Palette Target Edit Mode drop-down menu to determine how to edit a Prefab instance in the Tile Palette when that instance is selected as the Active Target.
|Enable Dialog||Always ask how to edit the instance (either in Prefab Mode or in the Scene). This is the default.|
|Edit in Prefab Mode||Edit the Paint target in Prefab mode.|
|Edit in Scene||Edit the Prefab instance directly in the Scene.|
Any time an Asset changes, Unity automatically re-imports it. Setting up a Cache Server drastically reduces the time it takes to import Assets. You can set up a Cache Server using remote hosting or stored on your local computer.
By default, the Cache Server is disabled.
To enable it, choose one of the other options from the Cache Server Mode drop-down menu:
|Local||Use a local Cache Server on this computer. The preferences for Remote hosting appear.|
|Remote||Use a Cache Server hosted on a remote computer. The preferences for Local storage appear.|
These preferences are only available when the Use Cache Server is set to Remote.
|IP Address||Enter the IP address of the dedicated cache server that an administrator set up.|
|Check Connection||Click this button to attempt to connect to the remote Cache Server.|
These preferences are only available when the Use Cache Server is set to Local.
|Maximum Cache Size (GB)||Specify the maximum size in gigabytes for the Cache Server on this computer’s storage. The minimum size is 1GB. The maximum size is 200GB.
The default cache size is 10GB.
|Custom cache location||Enable this option to specify a location where you want to store the cache.|
|Cache Folder Location||Click the Browse button to specify a location for the cache.|
|Cache size is …||Message displaying the current size of the cache. Before clicking the Check Cache Size button, this appears as Cache size is unknown. After clicking the button, the calculated cache size appears in the message.|
|Check Cache Size||Click this to find out how much storage the Local Cache Server is using. This operation can take some time to complete if you have a large project.|
|Clean Cache||Delete the contents of the cache.|
The Colors preferences allow you to choose the colors that Unity uses when displaying various user interface elements.
The External Tools preferences allow you to set up external applications for scripting, working with images, and source control.
|External Script Editor||Choose which application Unity should use to open script files. Unity automatically passes the correct arguments to script editors it has built-in support for. Unity has built-in support for Visual Studio (Express), Visual Studio Code, Xamarin Studio, MonoDevelop and JetBrains Rider.|
|External Script Editor Args||Set the arguments to pass to the external script editor.
If not set on macOS, then the default mechanism for opening files is used. Otherwise, the external script editor is only launched with the arguments without trying to open the script file using the default mechanism.
See below for examples of external script editor arguments.
|Add .unityproj’s to .sln||Enable this option to add UnityScript (.unityproj) projects to the generated solution (.sln) file. This is enabled by default for MonoDevelop and Xamarin Studio, and disabled by default for Visual Studio (Express) and Visual Studio Code.|
|Editor Attaching||Enable this option to allow debugging of scripts in the Unity Editor. If this option is disabled, it is not possible to attach a script debugger to Unity to debug your scripts.|
|Image application||Choose which application you want Unity to use to open image files.|
|Revision Control Diff/Merge||Choose which application you want Unity to use to resolve file differences with the Asset server. Unity detects these tools in their default installation locations (and checks registry keys for TortoiseMerge, WinMerge, PlasticSCM Merge, and Beyond Compare 4 on Windows).|
--remote-tab-silent +$(Line) "$File"
-g $(Line) "$(File)"
The Global Illumination (GI) system uses a cache on each computer to store intermediate files used to pre-compute real-time Global Illumination. All projects on the computer share the cache.
|Maximum Cache Size (GB)||Use the slider to set the maximum GI cache folder size. Unity keeps the GI cache folder size below this number whenever possible. Unity periodically deletes unused files to create more space (deleting the oldest files first). This is an automatic process, and doesn’t require you to do anything.
Note: If the current Scene is using all the files in the GI cache, increase your cache size. Otherwise, resource-intensive recomputation occurs when baking. This can happen when the Scene is very large or the cache size is too small.
|Custom cache location||Enable this option to allow a custom location for the GI cache folder. By default, the GI cache is stored in the Caches folder. All Projects share the cache folder.
Tip: Storing the GI Cache on an SSD drive can speed up baking in cases where the baking process is I/O bound.
|Cache Folder Location||Click the Browse button to specify a location for the cache.|
|Cache compression||Enable this option to allow Unity to compress files in the GI cache and reduce the size of the generated data. The files are LZ4-compressed by default, and the naming scheme is a hash and a file extension. The hashes are computed based on the inputs to the lighting system, so changing any of the following can lead to recomputation of lighting:
- Materials (Textures, Albedo, Emission)
- Static flags
- Light Probe groups
- Reflection probes
- Lightmap Parameters
Tip: If you need to access the raw Enlighten data, disable Cache Compression and clean the cache.
|Clean Cache||Use this button to clear the cache directory.
It is not safe to delete the GI Cache directory manually while the Editor is running. This is because the Editor creates the GiCache folder when it starts and maintains a set of references to those files. The Clean Cache button ensures that the Editor releases all references to the files on disk before they are deleted.
This Keys preferences allow you to set the hotkeys that activate various commands in Unity.
When you select one of the Actions from the list on the left, Unity displays any current key assignments in the Key and indicates when to use any key Modifiers by showing or hiding a checkmark:
|Command||When enabled, hold down the Control button (Windows) or the Command button (Mac).|
|Shift||When enabled, hold down the Shift button.|
|Alt||When enabled, hold down the Alt button (Windows) or the Option button (Mac).|
Note: Modifying a hotkey assignment is immediate, but you can revert all hotkey assignment changes by clicking the Use Defaults button.