4 преимущества Unity3D, а также полезный инструмент для ускорения процесса разработки приложений

в 9:12, , рубрики: game development, unity3d, разработка приложений, ускорение разработки, метки:

Мы продолжаем серию интервью с нашими специалистами. В этот раз на вопросы отвечал Андрей Рылач – Senior Unity3D-разработчик XIMAD, Inc. Андрей рассказал о преимуществах Unity и раскрыл способ ускорения процесса разработки мобильных приложений.

4 преимущества Unity3D, а также полезный инструмент для ускорения процесса разработки приложений - 1

Ты работаешь разработчиком игр. Расскажи, какие игровые движки наиболее популярны сегодня?

А.Р.: Все зависит от того, для каких целей выбирать игровой движок. Наиболее популярными движками для разработки мобильных игр сегодня являются Unity3D, UE4, Marmalade и Cocos2D. У каждого из них есть свои преимущества. Но поскольку мы фокусируемся в основном на разработке кроссплатформенных игр, то на первом месте, до недавних пор, находился Unity, потому что он дает возможность создания игры на различные платформы с минимальными временными затратами. Сейчас для Unity появился реальный конкурент в лице UE4.

Как произошло твое знакомство с Unity?

А.Р.: В свою бытность программировал на C# и пришел в компанию, где была вакансия game-разработчика. Так и познакомился с Unity, работать с которым оказалось очень легко.

Для разработки каких игр используется Unity чаще всего?

А.Р.: Unity можно использовать для реализации как крупных AAA проектов, так и для небольших 2D игр под мобильные платформы. Поддержка 2D в Unity появилась относительно недавно, до этого приходилось использовать различные плагины (Toolkit 2D, например). Последние же версии игрового движка позволяют комфортно создавать игры для широкой палитры различных устройств. Благодаря ему мы создаем кроссплатформенные мобильные игры с хорошей графикой, но в то же время не выставляющие жестких требований к мобильным устройствам.

Можешь выделить конкурентные преимущества Unity перед другими движками?

А.Р.: Первое преимущество, на мой взгляд – сам язык C#. Данный язык высокоуровневый и позволяет программисту легко войти в разработку игры. Это важный момент, потому что в отличие от других движков, где используется язык C++, в C# есть много элементов и приемов, которые уже реализованы, и программисту нужно только воспользоваться ими.

Второе преимущество – кроссплатформенность, т.е. один и тот же код, написанный на движке Unity, с минимальными изменениями может быть перенесен на различные платформы (PC, Mac, Android, iOS, Web, игровые консоли). Это огромный плюс, который сокращает время на разработку игры в несколько раз.

Третье преимущество — хорошее Community. Это означает, что у различных функций движка есть четкое описание с примерами на сайте разработчика, обратиться к которому можно в любой момент. Если что-то все же осталось непонятным, служба поддержки обязательно ответит на возникший вопрос.

И четвертым преимуществом является Asset Store, где имеется огромное количество различных плагинов и ресурсов для создания игры. Разумеется, какие-то из них бесплатные, какие-то платные, но все они собраны в одном месте с удобным поиском и возможностью загрузить, интегрировать и получить сразу рабочий функционал.

Плюсы Unity теперь известны, а существуют ли недостатки?

А.Р.: Пожалуй, единственным минусом является стоимость Pro-версии. Для рядового или начинающего фрилансера 4500$ за лицензию (Pro-лицензия Unity + iOS Pro + Android Pro) для того, чтобы можно было воспользоваться всеми «плюшками» Pro-версии и публиковаться в iOS- и Android-маркетах, довольно дорого. Но недавно на GDC в Сан-Франциско был релиз Unity 5, который является совершенно бесплатным без каких-либо отчислений с полученного дохода. В версии Personal Edition недоступны только дополнительные сервисы, такие как Unity Analytics Pro, Unity Cloud Build Pro и некоторые другие. Данная версия больше всего подойдет начинающим разработчикам и некрупным компаниям. Если все-таки есть необходимость покупки Pro-версии, то Unity предлагает ее за 75 $ в месяц.

Присутствуют ли какие-нибудь нюансы работы с Unity?

А.Р.: Нюансы есть при работе на любом игровом движке, как и в любом ином деле. Можно привести типичные, на мой взгляд, ошибки начинающих Unity разработчиков, которые допускал я и, которые допускали знакомые мне новички. Первая – это использование небольшого количества скриптов, отчего код одного скрипта разрастается до нечитабельных размеров. Вторая – использование большого количества флагов вместо использования системы событий и колбэков. Третья – отсутствие оптимизации текстур и количества материалов на игровой сцене. В целом, у Unity имеется очень хороший Community, который позволяет очень быстро освоиться в игровом движке.

Ты упомянул, что Unity помогает сократить время разработки игры или приложения в несколько раз. Есть ли какие-то наработки, которые позволяют упростить и ускорить процесс создания игры?

А.Р.: Да, у нас имеется Multiplatform Solutions Framework (MSF) — инструмент, который упрощает многие аспекты создания игры в плане хранения файлов на сервере, получения файлов с сервера, хранения профиля игрока, статистики, интеграции с социальными сетями и пр. Функционал реализован на стороне сервера, а для Unity разработчика написан плагин, который можно использовать в любом проекте, что является значительным плюсом.

Расскажи подробнее о Multiplatform Solutions Framework.

А.Р.: В первую очередь MSF помогает использовать один и тот же профиль игрока на различных устройствах. В кроссплатформенную игру пользователь может играть на Android, на iOS, в Web и его прогресс сохранится везде: профиль будет единым для всех платформ. Это первое.

Второе — это хранение и получение файлов. Часто игра требует хранения какого-то контента на сервере: если игра клиент-серверная или у игры есть настраиваемая конфигурация (например, возможность менять уровни после выпуска игры), значит, нужен механизм обновления конфигурации для игры. И MSF позволяет делать это путем хранения файлов и предоставления простого IP к получению данных файлов: файлы можно закачать на сервер со стороны редактора, а на стороне клиента реализованный функционал работы с MSF позволит получить обновленные файлы и изменить игровой процесс.

И третье – уже реализованный на стороне MSF-сервера функционал по интеграции с социальными сетями. Например, приглашение друзей в игру, отправка подарков, начисление бонусов игрокам и push notification.

Какие преимущества использование Multiplatform Solutions Framework дает компании, разработчикам и игрокам?

А.Р.: Самым главным преимуществом является сокращение сроков выполнения проектов. MSF – единый понятный всем сервер, который используется в различных играх, и нет необходимости писать его для каждой игры. Мы просто адаптируем MSF для каждого проекта.

Кроме того MSF является удобным инструментом для настройки игрового контента, и активно применяется нами во всех играх. Для меня, как для разработчика, могу выделить следующие преимущества:

  • экономия времени благодаря использованию уже готовых модулей
  • возможность быстрого и легкого обновления игрового контента, который настраивается для каждой целевой группы пользователей.

Кроме того, в MSF имеется и аналитический модуль, помогающий нам лучше узнать нашу целевую аудиторию:

  • какие покупки совершают игроки
  • как долго они играют
  • какие уровни для пользователей являются наиболее сложными
  • когда игроки покидают игру и пр.

Также MSF помогает собрать нам данные пользователей из социальных сетей.
В свою очередь, игроки свободно заходят в игру с разных устройств под одним и тем же профилем, имеют возможность восстановить удаленный профиль со всеми совершенными покупками, получают уведомления, которые держат их в курсе всех событий и обновлений игры.

Если у Вас есть вопросы – задавайте. С радостью ответим на них!

Автор: Marina_Serozhenko

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js