Unity Tool showing a timeline of assembly compilation. This is especially helpful when trying to optimize compile times and dependencies between assemblies. Besides showing a graphical view of compilation, selecting an assembly shows both dependencies and dependents of that assembly.
This tool visualizes the assembly compilation process in Unity3D. It hooks into the Editor-provided events and nicely draws them on a timeline. That's especially helpful when trying to optimize compile times and dependencies between assemblies.
Besides showing a graphical view of compilation, selecting an assembly shows both dependencies and dependents of that assembly.
The screenshots show full compilations; but the timeline works as well for partial compilations (e.g. you changed a single script and Unity only recompiles the relevant parts of the dependency chain).
Compilation Visualizer is available on OpenUPM: https://openupm.com/packages/com.needle.compilation-visualizer/
If you're on Unity 2019.4+: - open
Edit/Project Settings/Package Manager- add a new Scoped Registry:
Name: OpenUPM URL: https://package.openupm.com/ Scope(s): com.needle.compilation-visualizer- click Save - open Package Manager - click + - select Add from Git URL - paste
com.needle.compilation-visualizer- click Add.
You can open the Compilation Visualizer by selecting
Window > Analysis > Compilation Timeline.
If you want to trigger a recompile, you can either use the Recompile button, or
Right Click > Reimporta script or folder with scripts to cause that to be recompiled.
While most functionality works great those versions, some minor things are different: - slightly less accurate total compilation time on 2018.4 — 2019.1+ has events for the entire compilation while on 2018.4 the last finished assembly compilation is used as end date. - no PackageInfo for now on 2018.4/2019.1 as
On 2021.2, Compile Player Scripts sometimes returns empty/incorrect results. This seems to be caused by incremental compilation (e.g. the files are already compiled) and Unity doesn't have a method call to clean the build cache.
A workaround seems to be clicking Recompile and then afterwards Compile Player Scripts.
Also on 2021.2, sometimes
UnityEditor.TestRunner.dllare included in Player Builds for reasons.