The Unity Stack and Its Ecosystem
Unity versions, languages, render pipelines, and the key tools and packages.
Unity versions
Unity ships several branches at the same time. A timeline of the key 6.x releases:
- Unity 6.0 (October 2024) — the first major release under the new scheme (instead of
2021.x / 2022.x / 2023.x). - Unity 6.1 (March 2025) — public WebGPU backend, Deferred+ for URP, GPU Resident Drawer improvements, DOTS production-ready.
- Unity 6.2 (August 2025) — UI Toolkit World Space experimental, Unity AI integrations, new Awaitable primitives.
- Unity 6.3 LTS (released December 5, 2025) — the current recommended LTS, supported through December 2027 (Enterprise / Industry licenses through December 2028). Here the legacy Input Manager is explicitly marked deprecated; Box2D v3 for 2D physics; Hybrid 2D/3D Scenes.
- The Tech Stream is currently at Unity 6.4 / 6.5 — gradually turning the DOTS packages into core engine modules; experimental CoreCLR is expected in 6.7, with a full replacement of Mono in 6.8 (late 2026).
For a new project in 2026, the standard choice is Unity 6.3 LTS. If you maintain an older project: 2022.3 LTS reached end of support in June 2025; 2021.3 LTS was dropped back in 2024. Versions before 6.0 receive no functional updates.
Languages
- C# — the only first-class scripting language. UnityScript (a JS dialect) and Boo were removed back in 2017–2018. Unity 6 supports C# 9 syntax when compiling to .NET Standard 2.1, and with certain settings, even newer features.
- HLSL — for writing shaders for the Built-in RP, URP, and HDRP. The alternative is the visual editor Shader Graph.
- C++ — only if you write a native plugin (DLL/dylib/so).
Runtime: Mono, IL2CPP, and the upcoming CoreCLR
C# code is compiled to IL (CIL) and then executed in one of two ways:
- Mono — JIT compilation of IL on the user’s device. Used in the editor and for fast iteration. Not supported on every platform.
- IL2CPP — AOT compilation of IL to C++, then to a native binary. Required for iOS, WebGL, and most consoles. Faster to run, but slower iteration compile times.
Unity has announced a migration to .NET CoreCLR as a third runtime. Per the refined roadmap: an experimental CoreCLR desktop player in Unity 6.7; a full replacement of the scripting runtime (Mono → CoreCLR) in 6.8 (late 2026). CoreCLR is faster than Mono on servers and native platforms and supports modern .NET. A significant change for long-term projects — keep an eye on the release notes for 6.6+.
Under IL2CPP, dynamic code generation does not work (Reflection.Emit, dynamic lambdas via
Expression.Compile()). If you use reflection heavily, add [Preserve] attributes
so the linker doesn’t strip the types you need.
Render pipelines
Unity supports three render pipelines, and the choice is made at the start of the project:
| Pipeline | Purpose | When to choose |
|---|---|---|
| Built-in RP | Old, general-purpose | Maintaining legacy projects, not for new code |
| URP (Universal RP) | Cross-platform, mobile, mid-range graphics | The default for most new projects |
| HDRP (High Definition RP) | PC and consoles, photorealism | High-quality PC/console projects |
URP and HDRP are Scriptable Render Pipeline (SRP) packages; they can be configured via quality assets and the Volume system. Switching between them mid-project is expensive: materials and shaders are incompatible. Decide before you begin.
Key Package Manager packages
The Unity Package Manager (UPM) is the npm of Unity. Most tools come through it:
- Input System — the modern replacement for the legacy
Inputclass (legacy is explicitly deprecated in Unity 6.3). - Cinemachine — powerful cameras (follow, free-look, dolly tracks). A UPM package, preinstalled in the Unity 6 templates.
- TextMeshPro — text with SDF fonts (instead of the obsolete
UI.Text). - Addressables — asynchronous asset loading instead of
Resources.Load. - Animation Rigging — procedural skeletal animation (IK, aim constraints).
- Burst + Job System + Collections — high-performance systems.
- Entities (DOTS/ECS) — a data-oriented stack for thousands of entities. Production-ready since Unity 6.0 (Entities 1.0); in Unity 6.4 the package becomes a core engine package, with no separate installation.
- Unity Behavior — the official graph-based behavior trees system for AI (since Unity 6.1).
- Sentis — built-in ML inference (it replaced Barracuda).
- Netcode for GameObjects 2.x — multiplayer (supports Distributed Authority with Unity Cloud).
Tooling around the project
- Unity Hub — a manager for editor versions and projects (like
nvmfor Node). - JetBrains Rider or Visual Studio — the main IDEs. VS Code works too, but Rider provides deep integration (debugging, navigation across components).
- Git + Git LFS for binary assets. Don’t forget to
.gitignoreLibrary/,Temp/,Logs/, andUserSettings/. - Plastic SCM (Unity Version Control) — a built-in VCS, convenient for binary files and large projects; an alternative to Git LFS.
The next chapter covers the main material: everything about 3D development.