Стек Unity и его экосистема
Версии Unity, языки, рендер-пайплайны, ключевые инструменты и пакеты.
Версии Unity
Unity выпускается в нескольких ветках одновременно. Хронология ключевых релизов 6.x:
- Unity 6.0 (октябрь 2024) — первый мажорный релиз новой схемы (вместо
2021.x / 2022.x / 2023.x). - Unity 6.1 (март 2025) — public WebGPU backend, Deferred+ для URP, GPU Resident Drawer улучшения, DOTS production-ready.
- Unity 6.2 (август 2025) — UI Toolkit World Space experimental, Unity AI интеграции, новые Awaitable примитивы.
- Unity 6.3 LTS (релиз 5 декабря 2025) — текущий рекомендованный LTS, поддержка до декабря 2027 (Enterprise / Industry-лицензии — до декабря 2028). Здесь legacy Input Manager явно помечен deprecated; Box2D v3 для 2D-физики; Hybrid 2D/3D Scenes.
- В Tech Stream сейчас Unity 6.4 / 6.5 — постепенное превращение DOTS-пакетов в core engine modules; experimental CoreCLR ожидается в 6.7, полная замена Mono — в 6.8 (конец 2026).
Для нового проекта в 2026 году стандартный выбор — Unity 6.3 LTS. Если поддерживаете старый проект: 2022.3 LTS закрыт в июне 2025; 2021.3 LTS снят с поддержки ещё в 2024. Версии до 6.0 не получают функциональных апдейтов.
Языки
- C# — единственный first-class язык скриптинга. UnityScript (диалект JS) и Boo были удалены ещё в 2017–2018 годах. Unity 6 поддерживает C# 9 синтаксис при компиляции в .NET Standard 2.1, а с определёнными настройками — и более новые фичи.
- HLSL — для написания шейдеров под Built-in RP, URP и HDRP. Альтернатива — визуальный редактор Shader Graph.
- C++ — только если вы пишете нативный плагин (DLL/dylib/so).
Runtime: Mono, IL2CPP и грядущий CoreCLR
C# код компилируется в IL (CIL), а потом выполняется одним из двух способов:
- Mono — JIT-компиляция IL на устройстве пользователя. Используется в редакторе и для быстрых итераций. Поддерживается не на всех платформах.
- IL2CPP — AOT-компиляция IL в C++, потом — в нативный бинарь. Обязательна для iOS, WebGL, большинства консолей. Запуск быстрее, итерационная компиляция дольше.
Unity объявила миграцию на .NET CoreCLR как третий runtime. По уточнённому roadmap: experimental CoreCLR desktop player — в Unity 6.7; полная замена scripting runtime (Mono → CoreCLR) — в 6.8 (конец 2026). CoreCLR быстрее Mono на серверах и нативных платформах, поддерживает современный .NET. Серьёзное изменение для долгосрочных проектов — следите за релиз-нотами 6.6+.
Под IL2CPP не работает динамическая генерация кода (Reflection.Emit, динамические лямбды через
Expression.Compile()). Если используете рефлексию активно — добавляйте [Preserve] атрибуты,
чтобы линкер не выкинул нужные типы.
Рендер-пайплайны
Unity поддерживает три рендер-пайплайна, и выбор делается на старте проекта:
| Пайплайн | Назначение | Когда выбирать |
|---|---|---|
| Built-in RP | Старый универсальный | Поддержка legacy-проектов, не для нового кода |
| URP (Universal RP) | Кросс-платформа, мобильные, средняя графика | Дефолт для большинства новых проектов |
| HDRP (High Definition RP) | ПК и консоли, фотореализм | Высококачественные ПК/консольные проекты |
URP и HDRP — это пакеты Scriptable Render Pipeline (SRP), их можно конфигурировать через ассеты качества и Volume-систему. Переключаться между ними в течение проекта дорого: материалы и шейдеры несовместимы. Решайте до того, как начнёте.
Ключевые пакеты Package Manager
Unity Package Manager (UPM) — это npm для Unity. Большинство инструментов идёт через него:
- Input System — современная замена legacy
Inputкласса (legacy явно deprecated в Unity 6.3). - Cinemachine — мощные камеры (follow, free-look, dolly tracks). UPM-пакет, предустановлен в шаблонах Unity 6.
- TextMeshPro — текст с SDF-шрифтами (вместо устаревшего
UI.Text). - Addressables — асинхронная загрузка ассетов вместо
Resources.Load. - Animation Rigging — процедурная анимация скелета (IK, aim constraints).
- Burst + Job System + Collections — высокопроизводительные системы.
- Entities (DOTS/ECS) — data-oriented стек для тысяч сущностей. Production-ready с Unity 6.0 (Entities 1.0); в Unity 6.4 пакет становится core engine package — без отдельной установки.
- Unity Behavior — официальная graph-based behavior trees система для AI (с Unity 6.1).
- Sentis — встроенный ML inference (заменил Barracuda).
- Netcode for GameObjects 2.x — мультиплеер (поддерживает Distributed Authority с Unity Cloud).
Инструменты вокруг проекта
- Unity Hub — менеджер версий редактора и проектов (как
nvmдля Node). - JetBrains Rider или Visual Studio — основные IDE. VS Code тоже работает, но Rider даёт глубокую интеграцию (отладка, навигация по компонентам).
- Git + Git LFS для бинарных ассетов. Не забудьте
.gitignoreдляLibrary/,Temp/,Logs/,UserSettings/. - Plastic SCM (Unity Version Control) — встроенный VCS, удобный для бинарных файлов и больших проектов; альтернатива Git LFS.
В следующей главе — главный материал: всё про 3D-разработку.