Unity
Unity — это кроссплатформенная среда разработки компьютерных игр и приложений, разрабатываемая компанией Unity Technologies. Среда позволяет создавать проекты для более чем 25 платформ, включая персональные компьютеры (Windows, macOS, Linux), мобильные устройства (iOS, Android), игровые консоли (PlayStation, Xbox, Nintendo Switch), веб-платформы (WebGL) и системы виртуальной и дополненной реальности (AR/VR). Unity предоставляет интегрированную среду разработки (IDE), набор инструментов для создания 2D- и 3D-графики, физического движка, системы анимации, звукового сопровождения, а также средства для сетевого взаимодействия и монетизации.
История
История Unity началась в 2004 году, когда три разработчика — Дэвид Хелгасон, Йоахим Анте и Николай Френсис — основали компанию Over the Edge Entertainment в Копенгагене (Дания). Их первой игрой стала GooBall (2005), коммерческий провал которой подтолкнул разработчиков к созданию универсального игрового движка, способного упростить разработку многоплатформенных проектов.
Первый релиз и ранние версии
В июне 2005 года Unity Technologies представила первую публичную версию — Unity 1.0. Она поддерживала только macOS и позиционировалась как «движок для создания игр на Mac». Ключевой особенностью стал визуальный редактор и возможность экспорта в веб-плеер (Unity Web Player), что позволяло запускать игры в браузере. Уже в 2006 году, с выходом Unity 2.0, была добавлена поддержка Windows, а также интегрирована система освещения и теней.
Расширение платформ и конкуренция
В 2008 году с релизом Unity 2.5 началась поддержка iOS, что совпало с запуском App Store. Это стало поворотным моментом: Unity оказался единственным движком, позволявшим относительно легко портировать игры на iPhone. В 2009 году вышла Android-поддержка (Unity 2.6). К концу 2000-х годов Unity завоевал популярность среди инди-разработчиков из-за бесплатной версии (Unity Free) с ограниченным функционалом.
Версии 3, 4 и 5
- Unity 3.0 (2010): интеграция системы глобального освещения (Beast Lightmapper), улучшенный физический движок (Box2D для 2D, PhysX для 3D) и поддержка версии Lightmap baking.
- Unity 4.0 (2012): анимационная система Mecanim, DirectX 11 для Windows, поддержка черенков (shaders) и BlackBerry.
- Unity 5.0 (2015): переход на модель подписки (вместо единоразовой покупки), введение системы компонентов UI (uGUI), глобального освещения Enlighten и сервиса облачной сборки (Unity Cloud Build).
Unity 2017—2023: реструктуризация и службы
В 2017 году Unity Technologies изменила нумерацию версий, перейдя на годовую систему (Unity 2017.x, 2018.x и т. д.). Это сопровождалось внедрением конвейеров рендеринга (Scriptable Render Pipeline, SRP), системы пакетов (Package Manager) и обновлением физического движка. В 2018 году был добавлен Data-Oriented Technology Stack (DOTS) — архитектура для повышения производительности за счёт использования Job System и Burst Compiler.
В 2020–2022 годах компания активно развивала сервисы: Unity Ads (реклама), Unity Analytics, Unity Gaming Services, а также инструменты машинного обучения и компьютерного зрения. В конце 2022 года Unity Technologies объявила о приобретении компаний Ziva Dynamics (симуляция тканей) и Weta Digital (инструменты VFX), что существенно усилило возможности движка в области фотореалистичной графики.
Критика и изменения в модели лицензирования (2023)
В сентябре 2023 года Unity Technologies объявила о введении «платежа за время выполнения» (Runtime Fee) — новой схемы, по которой разработчики должны были бы платить дополнительную сумму за каждую установку игры, начиная с определённых порогов (200 000 долларов дохода и 200 000 установок). Это вызвало массовую критику игрового сообщества, отказ ряда студий от использования движка и юридические угрозы (иски, коллективные письма). Компания была вынуждена пересмотреть политику: в октябре 2023 года она отменила runtime fee для разработчиков, использующих Unity Personal и Plus, и ввела повышение цен на подписку Unity Pro и Enterprise.
Архитектура и ключевые возможности
Unity построена на концепции компонентно-ориентированной архитектуры. Каждый объект в сцене (GameObject) может содержать набор компонентов (Transform, Renderer, Collider, скрипт и т. д.), определяющих его поведение и внешний вид. Это позволяет модульно конструировать игровой мир.
Рендеринг и графика
Движок поддерживает несколько конвейеров рендеринга:
- Built-in Render Pipeline — классический способ рендеринга, используется в старых проектах.
- Universal Render Pipeline (URP) — оптимизированный конвейер для мобильных платформ и платформ с ограниченными ресурсами.
- High Definition Render Pipeline (HDRP) — конвейер для фотореалистичной графики с поддержкой трассировки лучей (райтрейсинг), глобального освещения и сложных шейдеров.
В состав входит система глобального освещения Enlighten (встроенная) и система Probe Baking, а также поддержка технологии NVIDIA DLSS, Intel XeSS и AMD FSR для повышения производительности.
Физика
Unity использует физический движок NVIDIA PhysX для симуляции твёрдых тел, соударений и эффектов (ткани, жидкости). Для двухмерных игр применяется модифицированная версия Box2D. В версии 2023.1 появилась система Physics Simulation Stepper, позволяющая настраивать частоту физических вычислений отдельно от частоты кадров.
Анимация и визуальные эффекты
Система анимации Mecanim обеспечивает создание деревьев смешивания (blend trees), анимационных слоёв и состояний (State Machines). Для работы с персонажами используется Humanoid Avatar, автоматически ретаргетирующий анимации на разные модели. Визуальные эффекты создаются с помощью системы частиц (Particle System) и шейдерных графов (Shader Graph, Visual Effect Graph).
Программирование
Основным языком скриптования является C#. С выходом DOTS (Data-Oriented Tech Stack) была введена поддержка Job System (многопоточное выполнение кода) и Burst Compiler (компилятор, оптимизирующий код под SIMD-инструкции). Для написания игровой логики можно использовать как стандартные сценарии, так и Visual Scripting (графический редактор без программирования).
Платформенная поддержка
Unity поддерживает:
- Персональные компьютеры: Windows, macOS, Linux.
- Мобильные устройства: iOS, Android, tvOS, iPadOS.
- Игровые консоли: PlayStation 4/5, Xbox One/Series X/S, Nintendo Switch, Wii U.
- Веб-платформы: WebGL.
- AR/VR: Oculus Rift, HTC Vive, PlayStation VR, Apple Vision Pro, HoloLens, Magic Leap.
- Специализированные платформы: Tizen, WebOS (через WebGL), Samsung Smart TV.
Применение
Разработка игр
Unity используется для создания игр всех жанров — от мобильных пазлов до крупных AAA-проектов. Среди известных игр на Unity: Genshin Impact (miHoYo), Hollow Knight (Team Cherry), Cities: Skylines (Colossal Order), Monument Valley (ustwo games), Rust (Facepunch Studios).
Промышленность и симуляция
Благодаря поддержке виртуальной и дополненной реальности Unity применяется в промышленных симуляторах, архитектурных визуализациях, медицинских тренажёрах и обучающих системах. Например, компания Airbus использует Unity для тренировки пилотов, а Siemens — для цифровых двойников заводов.
Кинематограф и анимация
Unity Technologies развивает направление Unity Cinemachine — инструмент для создания кинематографичных сцен и виртуальных камер. После приобретения Weta Digital (2021) движок получил инструменты для работы с VFX и композитингом, что позволило использовать его в производстве фильмов (например, Мстители: Финал — отдельные сцены были созданы на Unity Real-Time Engine).
Машинное обучение
Среда Unity Machine Learning Agents (ML-Agents) позволяет обучать нейросетевые модели с помощью симуляций в реальном времени. Этот инструментарий применяется в робототехнике, компьютерном зрении и игровом дизайне для генерации поведения неигровых персонажей (NPC).
Обучение и сообщество
Unity обладает крупнейшим среди движков сообществом разработчиков. Компания предоставляет официальные курсы (Unity Learn), включающие интерактивные проекты, видеоуроки и документацию. Существует множество сторонних ресурсов: форумы, группы в социальных сетях, YouTube-каналы (Brackeys, Sebastian Lague — прекратили обновление). В России и СНГ Unity также популярен; проводятся конференции (например, Unity User Group Meetup), издаются книги и переводы официальной документации.
Интересные факты
- Название «Unity» (Единство) было предложено одним из основателей в противовес разрозненности игровых движков того времени.
- По состоянию на 2023 год на Unity было создано более 50% всех мобильных игр в мире.
- В 2020 году Unity Technologies провела IPO на Нью-Йоркской фондовой бирже (тикер: U) и оценивалась в 13,6 миллиарда долларов.
- В 2021 году компания запустила Unity Editor Metaverse — версию движка, работающую внутри самого Unity, что позволяет создавать и редактировать контент в VR.
- Движок используется не только для игр: на Unity работают приложения для обучения в NASA, конфигураторы автомобилей Porsche и интерьеров IKEA.
Критика
Несмотря на популярность, Unity подвергается критике по нескольким направлениям:
- Производительность: при стандартной настройке движок может генерировать избыточный код и увеличивать размер финального бинарного файла.
- Лицензионная политика: июньские изменения 2023 года (Runtime Fee) вызвали негативную реакцию и ухудшили доверие к компании.
- Сложность для новичков: хотя окно редактора интуитивно понятно, настройка современного High Definition Render Pipeline требует глубоких знаний в области шейдеров и рендеринга.
- Отсутствие обратной совместимости: при переходе между основными версиями (например, с Unity 2020 на 2022) некоторые проекты перестают компилироваться без доработок из-за устаревших API.
Источники
- Unity Technologies. Unity Documentation.
- Стивенс, Дж. Программирование игр для Unity. — М.: ДМК Пресс, 2018.
- Харитонов, Е. Unity в действии. — СПб.: Питер, 2021.
- Официальный блог Unity Technologies (blog.unity.com).
- Отчёт Unity Technologies об IPO (SEC Filing, 2020).
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →