Skip to content

Clean, development and profiling builds

↑

A clean build forces Unity to regenerate output rather than reuse certain incremental build artifacts; it helps diagnose stale artifacts and changes in build settings. It is not the same as deleting the Library/ directory. Clean builds can take longer; run them for release verification or when incremental results seem inconsistent.

A Development Build enables additional debugging support, and options such as script debugging or profiler connection may be available. These settings can increase overhead or expose information, so turn them off for normal public releases. Profiling a development build is useful for diagnosis but should not be confused with measuring optimized release performance.

Clean/development/release are build configurations, not operating systems. Apply them to separate Windows x64 and Linux x64 profiles. Test the Windows build on Windows 10 and Windows 11 and the Linux build on Linux; profile and backend performance can differ. Choose a fresh output directory through the Editor or file manager on either host instead of reusing Linux cleanup commands in PowerShell. A clean build does not require deleting the project’s Library/ directory.

BuildDecision.txt
Debug C# behavior? Development Build + appropriate debugging
Measure production FPS? Release-like player on target hardware
Suspect stale output? Clean Build
Prepare public release? Clean/verified release configuration

Pitfall: A clean build does not fix wrong references, missing scenes or incorrect Player Settings. Always read the build report and player log. Try it: Compare a development build with a release build on identical hardware.