Всем привет. В своей статье я хочу рассказать про бесплатные юнити плагины, которые использовал для создания своих игр. Есть плагины для разработки, монетизации, аналитики, соцсетям и т.д. Вот ссылка на список в гитхабе.
1) DOTween. Отличный плагин для анимации. Логика использования похожа на actions в cocos2dx. В играх использовал для анимации обучения игрока, анимации спрайтов.
2) SmartLocalization. Хороший плагин для локализации. Позволяет без особого труда локализовать текст. Легко использовать с Label — просто добавляешь новый компонент на текст и указываешь ключ-идентификатор. К сожалению в марте 2017 автор забросил разработку но выложил плагин в свободный доступ на гитхабе. Использовал его в двух своих играх, нареканий небыло.
3) Native share plugin. Хороший инструмент для реализации кнопок шаринга (Поделиться в соцсетях) Можно отправлять скриншоты и сообщения.
4) TSTableView. Хороший плагин для работы с таблицами. Использование похоже на TableViewController в ios разработке: создаёшь префаб-ячейку и таблица заполняется ячейками динамически во время скрола.
5) Unity-QuickSheet. Плагин для работы с таблицами. Позволяет данные из xlsl, csv, гугл-таблиц перенести в ScriptableObject. Это позволяет очень удобно работать с данными для игрового баланса, настраивать уровни и характеристики игровых объектов.
6) Google Play Games plugin. Плагин для лидербордов на андроид и ios. В юнити есть интерфейс Social. Он для ios реализован в самом юнити, а вот на андроид нет. Вот и понадобился этот плагин. Правда иногда возникало несколько проблем совместимости с другими андроид плагинами, они решались удалением дубликатов aar и jar файлов, реимпортом папки Unity Jar Resolver, нажатием кнопки Resolve clien jars, понижением версии android build tools.
7) Gamesparks. Хороший бэкенд для игр. Использовал его в первой своей игре, когда надо было сделать глобальный лидерборд для десктопной версии игры и для windows phone.
8) Fabric. Хорошая платформа для отслеживания багов. Также там есть инструмент для аналитики приложения. Присутствует также аналитика в реальном времени.
9) Firebase. бекенд. Пока использовал только для дополнительной аналитики в игре. Также полезная вещь при настройке ad words кампаний для продвижения. На основе вызовов firebase трекается установка игры.
10) Facebook. плагин для работы с соцсетью. Плагин предоставляет множество функций: логин, приглашение друзей, вступление в группу и т.д. Также есть аналитика от фейсбука, что полезно при трекинге установки с рекламных компаний, проводимых в соцсети.
11) Vkontakte. Единственный платный плагин из подборки, т.к бесплатных решений я не нашёл :) Плагин позволяет логин, приглашения друзей, вступление в группу игры и т.д. Работает для платформ ios, андроид и windows phone. Разработчик плагина охотно отвечает на вопросы и правит возникшие баги.
12) Appodeal. Хороший сервис рекламной медиации. Поддержка быстро отвечает на вопросы и решает проблемы. Использовал его в двух своих играх.
13) OneSignal. Сервис для пуш-уведомлений. Позволяет слать глобальные пуш-уведомления. Простой в интеграции и использовании.
В связи с тем что в игре использовал большое количество плагинов возникали самые разные проблемы:
1) При сборке на ios выставлял флаг NO_GPGS но всё равно в Xcode проект попадались файлы с Google Play Games плагина. Приходилось вручную удалять файлы и папки в Xcode проекте: Libraries->Plugins->Android, также удалил файлы GPGSController в папке Libraries->Plugins->iOS
2) Иногда из-за проблем совместимости плагинов, приходилось по несколько раз папку Unity Jar Resolver из плагина Google Play Games.
3) Иногда последняя версия Google Play Games не совместима c юнити, поэтому приходилось понижать версию android build tools.
4) Была проблема при сборке на андроид >65k methods. Решил с помощью понижения версий google play services. Например play-services-ads-10.2.1 понизил до версии 9.6.0. И так со всеми aar файлами от гугл, главное чтобы они были одной версии. Также убирал ненужные рекламные сети в Appodeal плагине.
В этой статье есть ещё инструменты для ускорения разработки.
В заключение:
Юнити — хороший инструмент для разработки своих небольших игр, но иногда его функционала не хватает. Есть много бесплатных сторонних решений для разработки, монетизации, аналитики и они без проблем справляются с недостающими функциями.
Недавно вышла моя вторая игра — Space Beaver (Бобёр и Космос) на iOS и Android, в ней я тоже использовал эти плагины. Вот кстати исходники игры с примерами использования.
Всем спасибо за внимание. Если кто-нибудь ещё знает полезные плагины, сервисы, инструменты для юнити, то буду рад их добавить :)
bezarius:
UniRx — Реактивное программирование в юнити
Zenject — Dependency Injection фреймворк для юнити
echipachenko:
consulo.io форк IntelliJ IDEA с поддержкой C# и Unity
icepro:
Unity3dRider кросплатформенная .NET IDE поддержкой C# и Unity
1) DOTween. Отличный плагин для анимации. Логика использования похожа на actions в cocos2dx. В играх использовал для анимации обучения игрока, анимации спрайтов.
2) SmartLocalization. Хороший плагин для локализации. Позволяет без особого труда локализовать текст. Легко использовать с Label — просто добавляешь новый компонент на текст и указываешь ключ-идентификатор. К сожалению в марте 2017 автор забросил разработку но выложил плагин в свободный доступ на гитхабе. Использовал его в двух своих играх, нареканий небыло.
3) Native share plugin. Хороший инструмент для реализации кнопок шаринга (Поделиться в соцсетях) Можно отправлять скриншоты и сообщения.
4) TSTableView. Хороший плагин для работы с таблицами. Использование похоже на TableViewController в ios разработке: создаёшь префаб-ячейку и таблица заполняется ячейками динамически во время скрола.
5) Unity-QuickSheet. Плагин для работы с таблицами. Позволяет данные из xlsl, csv, гугл-таблиц перенести в ScriptableObject. Это позволяет очень удобно работать с данными для игрового баланса, настраивать уровни и характеристики игровых объектов.
6) Google Play Games plugin. Плагин для лидербордов на андроид и ios. В юнити есть интерфейс Social. Он для ios реализован в самом юнити, а вот на андроид нет. Вот и понадобился этот плагин. Правда иногда возникало несколько проблем совместимости с другими андроид плагинами, они решались удалением дубликатов aar и jar файлов, реимпортом папки Unity Jar Resolver, нажатием кнопки Resolve clien jars, понижением версии android build tools.
7) Gamesparks. Хороший бэкенд для игр. Использовал его в первой своей игре, когда надо было сделать глобальный лидерборд для десктопной версии игры и для windows phone.
8) Fabric. Хорошая платформа для отслеживания багов. Также там есть инструмент для аналитики приложения. Присутствует также аналитика в реальном времени.
9) Firebase. бекенд. Пока использовал только для дополнительной аналитики в игре. Также полезная вещь при настройке ad words кампаний для продвижения. На основе вызовов firebase трекается установка игры.
10) Facebook. плагин для работы с соцсетью. Плагин предоставляет множество функций: логин, приглашение друзей, вступление в группу и т.д. Также есть аналитика от фейсбука, что полезно при трекинге установки с рекламных компаний, проводимых в соцсети.
11) Vkontakte. Единственный платный плагин из подборки, т.к бесплатных решений я не нашёл :) Плагин позволяет логин, приглашения друзей, вступление в группу игры и т.д. Работает для платформ ios, андроид и windows phone. Разработчик плагина охотно отвечает на вопросы и правит возникшие баги.
12) Appodeal. Хороший сервис рекламной медиации. Поддержка быстро отвечает на вопросы и решает проблемы. Использовал его в двух своих играх.
13) OneSignal. Сервис для пуш-уведомлений. Позволяет слать глобальные пуш-уведомления. Простой в интеграции и использовании.
В связи с тем что в игре использовал большое количество плагинов возникали самые разные проблемы:
1) При сборке на ios выставлял флаг NO_GPGS но всё равно в Xcode проект попадались файлы с Google Play Games плагина. Приходилось вручную удалять файлы и папки в Xcode проекте: Libraries->Plugins->Android, также удалил файлы GPGSController в папке Libraries->Plugins->iOS
2) Иногда из-за проблем совместимости плагинов, приходилось по несколько раз папку Unity Jar Resolver из плагина Google Play Games.
3) Иногда последняя версия Google Play Games не совместима c юнити, поэтому приходилось понижать версию android build tools.
4) Была проблема при сборке на андроид >65k methods. Решил с помощью понижения версий google play services. Например play-services-ads-10.2.1 понизил до версии 9.6.0. И так со всеми aar файлами от гугл, главное чтобы они были одной версии. Также убирал ненужные рекламные сети в Appodeal плагине.
В этой статье есть ещё инструменты для ускорения разработки.
В заключение:
Юнити — хороший инструмент для разработки своих небольших игр, но иногда его функционала не хватает. Есть много бесплатных сторонних решений для разработки, монетизации, аналитики и они без проблем справляются с недостающими функциями.
Недавно вышла моя вторая игра — Space Beaver (Бобёр и Космос) на iOS и Android, в ней я тоже использовал эти плагины. Вот кстати исходники игры с примерами использования.
Всем спасибо за внимание. Если кто-нибудь ещё знает полезные плагины, сервисы, инструменты для юнити, то буду рад их добавить :)
bezarius:
UniRx — Реактивное программирование в юнити
Zenject — Dependency Injection фреймворк для юнити
echipachenko:
consulo.io форк IntelliJ IDEA с поддержкой C# и Unity
icepro:
Unity3dRider кросплатформенная .NET IDE поддержкой C# и Unity
Поделиться с друзьями
Комментарии (15)
mad_pam
04.05.2017 21:03-2Что за нелепое оформление.
darkwinddev
04.05.2017 21:11+1Я подумал что много текста читать будет неудобно и решил разбавить его картинками. + это ведь геймдев :)
Charoplet
04.05.2017 21:43+1Приходилось вручную удалять файлы и папки в Xcode проекте
Такое можно автоматизировать пост-билд скриптом
echipachenko
05.05.2017 12:09+1Забыли о https://consulo.io/ написать.
Это форк IntelliJ IDEA с поддержкой C# и Unity.
Desu0x
06.05.2017 21:31приходилось по несколько раз папку Unity Jar Resolver из плагина Google Play Games.
Что приходилось?
Для таких случаев полезно делать экспорт в Android Project и уже более понятней станет причина проблемы.
Ruddymetor
10.05.2017 18:11Тоже подумал, что тут про привычные игры, а не мобильные. Но и мобильные тоже есть неплохие. Если есть возможность сделать что-то дрбротное, то почему нет?
T-362
Тут скорее «для разработки мобильной игры на юнити».