Это первая из новой серии статей для блога, в которой мы расскажем, что Unity делает для всех разработчиков игр сейчас и какие у нас планы на следующий год и будущее.
Меня зовут Ральф. Я работаю в Unity уже более 11 лет и сейчас руковожу разработкой нашего игрового движка, редактора Unity и всего, что связано с играми. Я начинал свою карьеру в Unity как разработчик движка и редактора, когда компания Unity все еще была небольшим стартапом со скромным офисом в Дании. Однако у нас была амбициозная цель — сделать разработку игр более демократичной, чтобы каждый мог создавать игры.
Сегодня с помощью решений Unity миллионы разработчиков создают удивительные и разнообразные игры на множестве платформ.
За эти годы все больше и больше людей в разных несвязанных с играми отраслях использовали Unity, чтобы создавать интерактивный контент в реальном времени. Многие беспокоятся о том, что эти новые области применения и новые клиенты смещают наш основной фокус. Я хочу развеять эти опасение: игры всегда были и останутся нашим главным приоритетом.
Наша цель и миссия весьма просты:
Unity позволяет создавать разнообразные невероятные игры и охватывать игроков на любых платформах.
Мне нравится следующее видео, поскольку оно рассказывает о тех удивительных играх, которые вы создаете с помощью Unity, — именно так мы видим наш успех.
Эта статья — начало новой серии, в которой мы рассказываем о разработке инструментов, необходимых для создания игр в Unity. Руководители и команды разработчиков из нашей компании расскажут о том, над чем они работают, чего от нас ожидать и что изменится для вас и ваших проектов.
Мы стремимся вносить в каждый выпуск существенные улучшения, которые:
Мы определяем свои приоритеты на основе ваших самых популярных запросов и отзывов. Таким образом мы определили следующие приоритеты для разработки и рассмотрения в этой серии статей:
Для начала рассмотрим подробнее первую тему.
Хотя это довольно объемная тема (мягко говоря!), мы рассмотрим три разные области функций, чтобы отметить, что изменилось с выпуска Unity 2021 LTS в апреле 2022 г. Сначала мы рассмотрим Universal Render Pipeline (URP), затем обсудим написание и выполнение кода и наконец поговорим немного о дизайне интерфейсов.
В этом разделе мы рассмотрим улучшения URP. Около 30 % проектов Unity теперь используют URP, в том числе такие игры как As Dusk Falls и Lost in Random. Я считаю, что обе эти игры — невероятные достижения, каждая со своим уникальным стилем и повествованием. Мы хотим, чтобы URP был предпочитаемым вариантом не 30, а 100 % разработчиков, и продолжаем работать над этим.
Мы постепенно улучшаем наши решения благодаря вашим просьбам и отзывам. Со времени выпуска Unity 2021 LTS в апреле только в URP мы внесли более 50 улучшений. Вот некоторые из них:
Одно из больших улучшений, над которым мы будем работать в 2023 году, — это возможность легко создавать текстовые шейдеры, о чем нас часто просило сообщество. Блоковые шейдеры — это новый оптимизированный рабочий процесс, который обеспечивает поддержку поверхностных шейдеров для Scriptable Render Pipeline.
Мы знаем, что управлять игрой и масштабировать ее на архитектурах на основе графических процессоров разной мощности непросто. Один из наших приоритетов на 2023 год — обеспечить единые рабочие процессы и настройки для всех процессов рендеринга по умолчанию, начиная с возможности использовать URP и HDRP в одном проекте.
Мы работаем над решением, которое снизит стоимость создания контента для разных архитектур и платформ, позволив разрабатывать контент с одним набором свойств.
Наша конечная цель — сделать URP наиболее производительным рендерером на всех поддерживаемых нами платформах, сохранив все функции встроенного процесса рендеринга и обеспечив URP детальной документацией. Не пропустите статью о графике из этой серии, в которой мы расскажем подробнее о наших планах относительно рендеринга. Кроме того, подробную информацию всегда можно найти на нашей странице планов по развитию продукта URP.
Сообщество всегда просит нас создавать больше технического контента для опытных разработчиков. За последний год мы подготовили подборку бесплатных образовательных электронных книг для опытных пользователей, в том числе две по рендерингу:
Написание кода, отлаживание, профилирование и итерация занимают много времени и должны происходить как можно слаженнее. Мы работаем над тем, чтобы сэкономить время, которое вы тратите на переключение между редактором и IDE, окном Game View и режимом игры.
Итак, что мы для этого делаем? Во-первых, с выпуском 2021 LTS мы начали оптимизировать импорт ассетов и ускорили его в 3–4 раза, тогда как импорт проектов стал быстрее на 8,7 % по сравнению с 2020 LTS.
Мы улучшили время сборки IL2CPP на 20 % по сравнению с последним выпуском LTS и на 40 % — по сравнению с версией 2019.4. Наши инструменты профилирования, которые мы постоянно улучшаем, помогают вам выявлять узкие места производительности более эффективно и с большими подробностями. Наш Memory Profiler, который скоро будет готов к коммерческому использованию, предоставляет детальное профилирование кода пользователя и движка и позволяет быстрее определять, какой участок кода использует память.
В 2023 и 2024 годах мы планируем перенести редактор и среду выполнения на CoreCLR от Microsoft, чтобы вы могли максимально удобно работать с .NET и использовать все новые функции C# 10.0 Кроме того, вы получите доступ к JIT-компилятору, сборщику мусора для сервера, более гибкой отладке и привычным инструментам для тестирования, профилирования и диагностики с экосистемы .NET.
Не пропустите нашу статью о производительности, которую мы опубликуем в блоге в ближайшее время, или перейдите на страницу планов по развитию редактора, чтобы узнать о предстоящих разработках.
Мы постоянно работаем над тем, чтобы делиться с вами дополнительными рекомендациями, основанными на реальных примерах. В этом нам помогает Unity Professional Services — команда, анализирует код и ассеты проектов больших студий, использующих Unity, чтобы выявить возможности для оптимизации. Ниже приведены три электронные книги, наполненные практическими советами для опытных разработчиков, которые помогут вам повысить эффективность разработки игр.
UI Toolkit содержит функции, ресурсы и инструменты для разработки расширений редактора и адаптивных пользовательских интерфейсов для различных игровых приложений. С того времени, как был представлен UI Builder и добавлена поддержки UI Toolkit в приложениях в Unity 2021.2, мы выпустили 30 исправлений и улучшений производительности благодаря вашим отзывам. Вот некоторые из них:
В 2022 году мы выпустим решение UI Toolkit как готовое к коммерческому использованию для разработки элементов интерфейса редактора. Таким образом, мы будем рекомендовать его вместо IMGUI для создания расширений редактора Unity.
В 2023 году мы сосредоточимся на фундаментальных улучшениях, которые ускорят разработку интерфейса, сделав его более расширяемым и отзывчивым. Мне особенно не терпится увидеть наши новые рабочие процессы связывания данных, которые будут лучше приспособлены для дизайнеров и позволяет связывать данные с интерфейсом визуально. Подробную информацию о UI Toolkit и не только можно найти на нашей странице планов по развитию продукта для разработки геймплея и интерфейса.
В каждой статье серии разработчики Unity описывают отдельные инициативы в своей области специализации и рассказывают, что мы успели сделать, чего ожидать от цикла выпуска 2022 LTS и какие у нас планы на ближайшие годы.
В следующей статье серии Games Focus Али Мохебали (Ali Mohebali), Матью Мюллер (Matthieu Muller) и Алеша Демельмейстер (Aljosha Demeulemeester) с команды по работе с графикой отметят основные улучшения и планы для процессов рендеринга в Unity на ближайшее будущее.
Ваши отзывы помогают нам создавать все описанное выше, поэтому мы будем рады, если вы поделитесь своими впечатлениями о статье на наших форумах. Подробную информацию о наших планах по разработке этих функций и не только можно найти на наших страницах планов по развитию платформы.
Примечание редактора (12 сентября 2022 г.). В ответ на комментарии сообщества наша команда хочет уточнить это предложение выше: «Мы хотим, чтобы URP был предпочитаемым вариантом не 30, а 100 % разработчиков, и продолжаем работать над этим». Мы не имели в виду, что хотим отказаться от других решений Scriptable Render Pipeline, разрабатывая HDRP, URP и другие наши процессы рендеринга. Мы хотим, чтобы вы могли доверять URP в 100 % случаев, если решите его использовать.