back to home

needle-tools / compilation-visualizer

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.

1,095 stars
45 forks
2 issues
C#

AI Architecture Analysis

This repository is indexed by RepoMind. By analyzing needle-tools/compilation-visualizer in our AI interface, you can instantly generate complete architecture diagrams, visualize control flows, and perform automated security audits across the entire codebase.

Our Agentic Context Augmented Generation (Agentic CAG) engine loads full source files into context on-demand, avoiding the fragmentation of traditional RAG systems. Ask questions about the architecture, dependencies, or specific features to see it in action.

Source files are only loaded when you start an analysis to optimize performance.

Embed this Badge

Showcase RepoMind's analysis directly in your repository's README.

[![Analyzed by RepoMind](https://img.shields.io/badge/Analyzed%20by-RepoMind-4F46E5?style=for-the-badge)](https://repomind.in/repo/needle-tools/compilation-visualizer)
Preview:Analyzed by RepoMind

Repository Overview (README excerpt)

Crawler view

Compilation Visualizer for Unity What's this? 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). Quick Start Compilation Visualizer is available on OpenUPM: https://openupm.com/packages/com.needle.compilation-visualizer/ If you're on Unity 2019.4+: • open • add a new Scoped Registry or add the package to the existing OpenUPM scope: • click Save • open Package Manager • click + • select Add from Git URL • paste • click Add . You can open the **Compilation Visualizer** by selecting . It will automatically update whenever something is compiled. Recompile If you want to trigger a recompile, you can either use the Recompile button, or a script or folder with scripts to cause that to be recompiled. You can also compile **player scripts only**, by clicking Compile Player Scripts . Use the dropdown button to switch to another platform. On 2021.2+, Unity changed how compilation results are cached. The Recompile and Compile Player Scripts will clear those caches to allow measuring a full compilation run. Navigation Left Click to select a specific assembly. This will show dependencies and dependants. Hover over an assembly to get additional details. Alt + Scroll Wheel to zoom in/out. Alt + Right Click to reset zoom. Compact will toggle between a waterfall view of all assemblies, and a compact collapsed view that tries to save space. Logging turns on a lot of extra logs that will be put into the Console when clicking on an assembly. Show Reloads adds an extra section in the timeline to see how much time went into compilation and how much into the following Domain Reload. EditMode tests Compilation Visualizer can run edit mode tests to ensure your project compiles on all platforms, catching common mistakes with ifdefs and API compatibility. To use these tests, simply add it to the "testables" section in your project manifest.json: Then, when you open you can click Run All or double-click . Screenshots Compatibility to 2018.4, 2019.1, 2019.2 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 doesn't exist. Known Issues On 2021.2, sometimes and are included in Player Builds for reasons. Contact needle — tools for unity • @NeedleTools • @marcel_wiessler • @hybridherbst