Введение
Unity - это кроссплатформенный игровой движок, разработанный Unity Technologies, впервые анонсированный и выпущенный в июне 2005 года на Всемирной конференции разработчиков Apple как игровой движок для Mac OS X. С тех пор движок постепенно расширялся, чтобы поддерживать различные платформы для настольных компьютеров, мобильных устройств, консолей, дополненной реальности и виртуальной реальности. Он особенно популярен для разработки мобильных игр для iOS и Android, считается простым в использовании для начинающих разработчиков и популярен для разработки инди-игр. Двигатель может использоваться для создания трехмерных (3D) и двухмерных (2D) игр, а также интерактивных симуляций. Двигатель был принят промышленностью за пределами видеоигр, такими как кино, автомобилестроение, архитектура, инженерия, строительство и Вооруженные силы США.
Unity is a cross platform game engine developed by Unity Technologies, first announced and released in June 2005 at Apple Worldwide Developers Conference as a Mac OS X game engine. The engine has since been gradually extended to support a variety of desktop, mobile, console, augmented reality, and virtual reality platforms. It is particularly popular for iOS and Android mobile game development, is considered easy to use for beginner developers, and is popular for indie game development. The engine can be used to create three dimensional (3D) and two dimensional (2D) games, as well as interactive simulations. The engine has been adopted by industries outside video gaming, such as film, automotive, architecture, engineering, construction, and the United States Armed Forces.
История
Игровой движок Unity был запущен в 2005 году, целью которого было "демократизировать" разработку игр, сделав их доступными для большего количества разработчиков. Он был показан на Всемирной конференции разработчиков 2005 года Скотом Форсталом на Mac OS X. В следующем году Unity занял второе место в категории "Лучшее использование графики Mac OS X" в Apple Design Awards. Unity был первоначально выпущен для Mac OS X, позже добавленная поддержка для Microsoft Windows и веб-браузеров.
Единство 2.0 (2007)
Unity 2.0 был запущен в 2007 году с приблизительно 50 новыми функциями. Релиз включал оптимизированный движок рельефа для детальной 3D-среды, динамические тени в реальном времени, направленные огни и прожекторы, воспроизведение видео и другие функции. В дополнение к поддержке Android, Unity 3 включает в себя интеграцию инструмента Illuminate Labs Beast Lightmap, отложенный рендеринг, встроенный редактор деревьев, рендеринг оригинальных шрифтов, автоматическое УФ-картирование и аудиофильтры, среди прочего. Опрос, проведенный журналом Game Developer в мае 2012 года, показал, что Unity является лучшим игровым движком для мобильных платформ.
Unity 4.0 (2012)
В ноябре 2012 года Unity Technologies выпустила Unity 4.0. В этой версии была добавлена поддержка DirectX 11 и Adobe Flash, новые инструменты анимации под названием Mecanim и доступ к предварительному просмотру Linux. Это включало инструменты, которые позволяли отслеживать рекламные кампании и глубокую ссылку, где пользователи были напрямую связаны с сообщениями в социальных сетях с конкретными частями в играх, и легко в обмене игровыми изображениями. Unity обеспечивал поддержку игровых платформ Facebook, и разработчики Unity могли быстрее экспортировать и публиковать игры на Facebook. С Unity 5 двигатель улучшил освещение и аудио. Через WebGL разработчики Unity могли добавлять свои игры в совместимые веб-браузеры без плагинов, необходимых для игроков. Unity 5.6 добавил новые эффекты освещения и частиц, обновил общую производительность движка и добавил поддержку для Nintendo Switch, Facebook Gameroom, Google Daydream и графического API Vulkan. Он представил 4K видеоплеер, способный запускать видео на 360 градусов для виртуальной реальности. Бывший генеральный директор Джон Риччителло сказал в интервью, что он считает, что это побочный эффект успеха Unity в демократизации разработки игр: "Если бы я мог, я бы хотел, чтобы 50 миллионов людей использовали Unity , хотя я не думаю, что мы скоро туда доберемся. Я бы хотел, чтобы это использовали школьники и студенты, люди, не работающие в основной индустрии. Я думаю, что это печально, что большинство людей являются потребителями технологий, а не создателями. Мир становится лучше, когда люди умеют создавать, а не просто потреблять, и это то, что мы пытаемся продвигать".
Единство (2017 настоящее время)
В декабре 2016 года Unity Technologies объявила, что изменит систему нумерации версий для Unity с идентификаторов, основанных на последовательности, на год выпуска, чтобы согласовать версирование с их более частой каденцией выпуска; Unity 5.6 следовательно, был последовал за Unity 2017. Инструменты Unity 2017 включают в себя движок рендеринга графики в реальном времени, классификацию цветов и создание миров, аналитику операций в реальном времени и отчетность о производительности. Unity 2017.2 подчеркнул планы Unity Technologies за пределами видеоигр. Unity 2018 включает в себя Scriptable Render Pipeline для разработчиков, чтобы создавать высококачественную графику. Это включало в себя High Definition Rendering Pipeline для консолей и ПК, а также Lightweight Rendering Pipeline (позже переименованный в Universal Render Pipeline) для мобильных устройств, виртуальной реальности и дополненной реальности. По состоянию на 2020 год программное обеспечение, созданное с игровым движком Unity, работало более чем на 1,5 миллиарде устройств. По данным Unity, приложения, созданные с помощью их игрового движка, составляют 50 процентов всех мобильных игр, и загружаются более 3 миллиардов раз в месяц, и примерно 15 000 новых проектов начинаются ежедневно с его программного обеспечения. Financial Times сообщила, что движок Unity "поощряет некоторые из самых прибыльных мобильных игр в мире", таких как Pokémon Go и Call of Duty Mobile от Activision. В июне 2020 года Unity представила студию смешанной и дополненной реальности (MARS), которая предоставляет разработчикам дополнительные функции для генерации приложений дополненной реальности (AR) на основе правил. Unity выпустила Unity Forma, инструмент решения для автомобильной и розничной торговли, 9 декабря 2020 года. В июне 2020 года Unity объявил, что редактор Unity будет поддерживать Apple Silicon. Первая бета-версия была выпущена в том же году. Unity 2021 принес множество новых функций, таких как Bolt, система визуального сценария Unity, новая многопользовательская библиотека для поддержки многопользовательских игр, улучшенная производительность времени выполнения Il2cpp, объемные облака для высококачественного рендеринга. Кэширование теней и глобальное освещение для HDRP. Для Universal Render Pipeline он добавил новые функции, такие как тени точечного света, отложенный рендер и общие улучшения и исправления основного двигателя. Полная поддержка Apple Silicon также была добавлена в Unity 2021.2. Поддержка Unity Hub для редакторов Apple Silicon появилась в версии 3.0 в январе 2022 года. Изменения в Unity 2022 были предназначены для повышения производительности за счет сокращения времени, необходимого для входа в режим игры и импорта файлов, а также реализации визуальных поисковых запросов и многократного выбора в менеджере пакетов. Для 2D-проектов изменения были сосредоточены на ускорении основного программного обеспечения, импорта, анимации и физики. Атлас Спрайтов был пересмотрен. В 2D PSD Importer была добавлена поддержка файлов расширения PSD и управления слоями, а также была добавлена тесселяция Delaunay для 2D-физики.
Особенности
Unity дает пользователям возможность создавать игры и опыт как в 2D, так и в 3D, а движок предлагает основной скриптовый API в C # с использованием Mono, как для редактора Unity в виде плагинов, так и для самих игр, а также для функций перетаскивания. До того, как C# стал основным языком программирования, используемым для движка, он ранее поддерживал Boo, который был удален с выпуском Unity 5, и реализацию Boo на основе JavaScript под названием UnityScript, которая была отменена в августе 2017 года после выпуска Unity 2017.1, в пользу C#. В 2D играх Unity позволяет импортировать приты и продвинутый 2D-рендерер мира. Для 3D-игр Unity позволяет задавать настройки сжатия текстуры, mipmaps и разрешения для каждой платформы, которую поддерживает игровой движок, и обеспечивает поддержку сокращения на карте, отражения на карте, параллакс на карте, окклюзии пространства экрана (SSAO), динамических теней с использованием теневых карт, рендеринга на текстуру и эффектов постпроцессирования на полном экране. Доступны два отдельных рендерных трубопровода, High Definition Render Pipeline (HDRP) и Universal Render Pipeline (URP, ранее LWRP), в дополнение к наследию, построенному в трубопроводе. Все три рендерных трубопровода несовместимы друг с другом. Unity предлагает инструмент для обновления шейдеров с использованием устаревшего рендерера до URP или HDRP. Создатели могут разрабатывать и продавать созданные пользователями активы другим разработчикам игр через Unity Asset Store. Это включает в себя 3D и 2D активов и среды для разработчиков, чтобы купить и продать. Unity Asset Store был запущен в 2010 году. К 2018 году через цифровой магазин было загружено около 40 миллионов копий.
Лицензирование
В течение первых десяти лет в качестве продукта платные версии Unity продавались напрямую; в 2016 году корпорация перешла на модель подписки. Платный вариант, Unity Pro, был необходим для разработчиков, которые имели более 200 000 долларов в год дохода, но это также могло быть предоставлено для разработчиков консолей через Лицензию предпочтительной платформы от производителя консоли. Ключи Unity Pro были бы частью другого SDK от производителя консоли, за который заплатил разработчик. В мае 2016 года Unity выпустила "Unity Plus", средний уровень между Personal и Pro, который предоставляет инструменты и преимущества, ориентированные на "первых коммерческих разработчиков". В июне 2021 года Unity изменила свои условия лицензирования, чтобы потребовать от любого разработчика, создающего игры на закрытых консольных системах (PlayStation, Nintendo Switch и Xbox), независимо от дохода, иметь лицензию Unity Pro или ключ лицензии Preferred Platform от производителей. Sony и Nintendo предоставляют это как часть SDK, но Microsoft еще не внедрила эту функциональность для своего SDK. Источник кода двигателя лицензируется "по отдельности в каждом конкретном случае посредством специальных соглашений".
Прием платы за время выполнения
12 сентября 2023 года Unity объявила, что использование двигателя станет предметом роялти (называемой "пошлиной за время эксплуатации"), начиная с января 2024 года, рассчитываемой за установку и взимаемой ежемесячно, если продукт достигнет определенного порога дохода и срока службы установки. Unity заявляет, что монетизация времени выполнения таким образом необходима, чтобы "позволить создателям сохранять текущие финансовые выгоды от участия игроков". Новые условия столкнулись с критикой со стороны разработчиков игр, которые использовали Unity в течение многих лет, особенно в отношении того, как будет рассчитываться и применяться эта плата, а также последствия для демо-игр, фримиум-игр и пакетов, распространяемых для благотворительных целей. Изменение было признано противоречивым заявлениям бывшего генерального директора Джона Риччителло в 2015 году, когда Unity первоначально объявил о своем переходе на бесплатные и подписки на основе моделей, заявив, что все пользователи будут "получить полную мощность Unity бесплатно", и что не будет роялти (в отличие от Unreal Engine, который недавно перешел на бесплатное распространение, но с роялти, выплачиваемые выше определенного порога дохода). Многие независимые разработчики, включая разработчика Among Us Innersloth и разработчика Slay the Spire Mega Crit, объявили, что перейдут на другие игровые движки. Анализ Ars Technica показал, что несколько старых версий условий обслуживания Unity позволят разработчикам продолжать выпускать свое программное обеспечение без необходимости платить новую плату, если они не обновят свой проект после 1 января 2024 года. Анализ Game Developer пришел к выводу, что изменения были предназначены для поощрения игр с большой базой установок, таких как Genshin Impact, Subway Surfers и Hearthstone, для перехода на сервисы Unity, чтобы получить снижение платы. В статье отмечалось, что подразделение Operate Solutions, занимающееся, например, услугами покупки приложений, было гораздо более прибыльным, чем подразделение Create, и добавили, что "многие независимые разработчики, которые будут оставлены на обочине дороги, являются совершенно случайными для целей Unity и не будут значительным фактором в будущем принятии решений". Игровая индустрия. biz назвал этот шаг "самовозгоранием" и назвал изменения примером "эншиттификации". В ответ на эту негативную обратную связь Unity Technologies 22 сентября 2023 года ввела пересмотренные условия платы за время работы. Они включали в себя удаление любых сборов за использование Unity Personal для проектов, финансируемых до $200,000 (увеличение по сравнению с предыдущим порогом в $100,000), сборы будут применяться только к играм, разработанным с Unity 2024 и после него без каких-либо ретроактивных сборов, и сбор будет основан на меньшем из 2,5% ежемесячного дохода или рассчитанной стоимости, основанной на ежемесячных обязательствах, оба из которых основаны только на самоотчете этих чисел.
Видеоигры
Двигатель используется в играх, включая Pokémon Go, Monument Valley, Call of Duty: Mobile, Beat Saber и Cuphead, согласно Financial Times в 2020 году. Некоторые из первых коммерческих игр 2007 года включают Splume (Flashbang Studios), Magical Flying Pink Pony Game (Starscene Software) и Global Conflicts: Palestine (Serious Games Interactive). По состоянию на 2018 год Unity использовался для создания примерно половины мобильных игр на рынке и 60% дополненной реальности и контента виртуальной реальности, включая примерно 90% на новых платформах дополненной реальности, таких как Microsoft HoloLens, и 90% контента Samsung Gear VR. Unity Machine Learning Agents - это программное обеспечение с открытым исходным кодом, посредством которого платформа Unity подключается к программам машинного обучения, включая TensorFlow от Google. Используя методы проб и ошибок в Unity Machine Learning Agents, виртуальные персонажи используют усиленное обучение для построения творческих стратегий в реалистичных виртуальных ландшафтах. Unity впервые экспериментировал в кино с Адамом, короткометражным фильмом о роботе, сбежавшем из тюрьмы. Позже Unity сотрудничал с режиссером Нилом Бломкампом, чья Oats Studios использовала инструменты движка, включая рендеринг в реальном времени и Cinemachine, для создания двух короткометражных компьютерных фильмов, Adam: The Mirror и Adam: The Prophet. Двигатель Unity также использовался Disney для создания фонов для фильма "Король Лев" 2019 года. Автопроизводители используют технологию Unity для создания полномасштабных моделей новых автомобилей в виртуальной реальности, создания виртуальных сборочных линий и обучения рабочих. Другие направления деятельности Unity Technologies включают архитектуру, инженерию и строительство.
Талисман
16 декабря 2013 года Unity Technologies Japan представила официального персонажа-маскота по имени Unity chan (ユニティちゃん), настоящее имя Кохаку Отори (大鳥 こはく) (голос Асука Какумото [ja; zh]). Сопутствующие игровые данные персонажа были выпущены в начале 2014 года. Персонаж был разработан дизайнером Unity Technologies Japan "ntny" как персонаж героини с открытым исходным кодом. Компания разрешает использование Unity chan и связанных с ним персонажей в вторичных проектах по определенным лицензиям. Например, Юнити Чан появляется в качестве игрового персонажа в "Бороте".