Всем привет. В своей статье я хочу рассказать про бесплатные юнити плагины, которые использовал для создания своих игр. Есть плагины для разработки, монетизации, аналитики, соцсетям и т.д. Вот ссылка на список в гитхабе.
![](https://habrastorage.org/r/w780q1/files/796/178/209/7961782099e040bf8cb49d644c85bd83.jpg)
1) DOTween. Отличный плагин для анимации. Логика использования похожа на actions в cocos2dx. В играх использовал для анимации обучения игрока, анимации спрайтов.
2) SmartLocalization. Хороший плагин для локализации. Позволяет без особого труда локализовать текст. Легко использовать с Label — просто добавляешь новый компонент на текст и указываешь ключ-идентификатор. К сожалению в марте 2017 автор забросил разработку но выложил плагин в свободный доступ на гитхабе. Использовал его в двух своих играх, нареканий небыло.
3) Native share plugin. Хороший инструмент для реализации кнопок шаринга (Поделиться в соцсетях) Можно отправлять скриншоты и сообщения.
4) TSTableView. Хороший плагин для работы с таблицами. Использование похоже на TableViewController в ios разработке: создаёшь префаб-ячейку и таблица заполняется ячейками динамически во время скрола.
5) Unity-QuickSheet. Плагин для работы с таблицами. Позволяет данные из xlsl, csv, гугл-таблиц перенести в ScriptableObject. Это позволяет очень удобно работать с данными для игрового баланса, настраивать уровни и характеристики игровых объектов.
![](https://habrastorage.org/r/w780q1/files/4e1/072/820/4e1072820ed24f7a8713c8cb44731dd5.jpg)
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. плагин для работы с соцсетью. Плагин предоставляет множество функций: логин, приглашение друзей, вступление в группу и т.д. Также есть аналитика от фейсбука, что полезно при трекинге установки с рекламных компаний, проводимых в соцсети.
![](https://habrastorage.org/r/w1560/files/228/d4d/fff/228d4dfff9104190a346f15897a9cb5e.png)
11) Vkontakte. Единственный платный плагин из подборки, т.к бесплатных решений я не нашёл :) Плагин позволяет логин, приглашения друзей, вступление в группу игры и т.д. Работает для платформ ios, андроид и windows phone. Разработчик плагина охотно отвечает на вопросы и правит возникшие баги.
12) Appodeal. Хороший сервис рекламной медиации. Поддержка быстро отвечает на вопросы и решает проблемы. Использовал его в двух своих играх.
13) OneSignal. Сервис для пуш-уведомлений. Позволяет слать глобальные пуш-уведомления. Простой в интеграции и использовании.
![](https://habrastorage.org/r/w780q1/files/021/ac1/50b/021ac150b2dd4c0fa4de1493f1bf6ab6.jpg)
В связи с тем что в игре использовал большое количество плагинов возникали самые разные проблемы:
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 плагине.
![](https://habrastorage.org/r/w1560/files/975/86e/ab2/97586eab24864bedb907ae02281530d4.png)
В этой статье есть ещё инструменты для ускорения разработки.
В заключение:
Юнити — хороший инструмент для разработки своих небольших игр, но иногда его функционала не хватает. Есть много бесплатных сторонних решений для разработки, монетизации, аналитики и они без проблем справляются с недостающими функциями.
Недавно вышла моя вторая игра — Space Beaver (Бобёр и Космос) на iOS и Android, в ней я тоже использовал эти плагины. Вот кстати исходники игры с примерами использования.
Всем спасибо за внимание. Если кто-нибудь ещё знает полезные плагины, сервисы, инструменты для юнити, то буду рад их добавить :)
bezarius:
UniRx — Реактивное программирование в юнити
Zenject — Dependency Injection фреймворк для юнити
echipachenko:
consulo.io форк IntelliJ IDEA с поддержкой C# и Unity
icepro:
Unity3dRider кросплатформенная .NET IDE поддержкой C# и Unity
![](https://habrastorage.org/files/796/178/209/7961782099e040bf8cb49d644c85bd83.jpg)
1) DOTween. Отличный плагин для анимации. Логика использования похожа на actions в cocos2dx. В играх использовал для анимации обучения игрока, анимации спрайтов.
2) SmartLocalization. Хороший плагин для локализации. Позволяет без особого труда локализовать текст. Легко использовать с Label — просто добавляешь новый компонент на текст и указываешь ключ-идентификатор. К сожалению в марте 2017 автор забросил разработку но выложил плагин в свободный доступ на гитхабе. Использовал его в двух своих играх, нареканий небыло.
3) Native share plugin. Хороший инструмент для реализации кнопок шаринга (Поделиться в соцсетях) Можно отправлять скриншоты и сообщения.
4) TSTableView. Хороший плагин для работы с таблицами. Использование похоже на TableViewController в ios разработке: создаёшь префаб-ячейку и таблица заполняется ячейками динамически во время скрола.
5) Unity-QuickSheet. Плагин для работы с таблицами. Позволяет данные из xlsl, csv, гугл-таблиц перенести в ScriptableObject. Это позволяет очень удобно работать с данными для игрового баланса, настраивать уровни и характеристики игровых объектов.
![](https://habrastorage.org/files/4e1/072/820/4e1072820ed24f7a8713c8cb44731dd5.jpg)
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. плагин для работы с соцсетью. Плагин предоставляет множество функций: логин, приглашение друзей, вступление в группу и т.д. Также есть аналитика от фейсбука, что полезно при трекинге установки с рекламных компаний, проводимых в соцсети.
![](https://habrastorage.org/files/228/d4d/fff/228d4dfff9104190a346f15897a9cb5e.png)
11) Vkontakte. Единственный платный плагин из подборки, т.к бесплатных решений я не нашёл :) Плагин позволяет логин, приглашения друзей, вступление в группу игры и т.д. Работает для платформ ios, андроид и windows phone. Разработчик плагина охотно отвечает на вопросы и правит возникшие баги.
12) Appodeal. Хороший сервис рекламной медиации. Поддержка быстро отвечает на вопросы и решает проблемы. Использовал его в двух своих играх.
13) OneSignal. Сервис для пуш-уведомлений. Позволяет слать глобальные пуш-уведомления. Простой в интеграции и использовании.
![](https://habrastorage.org/files/021/ac1/50b/021ac150b2dd4c0fa4de1493f1bf6ab6.jpg)
В связи с тем что в игре использовал большое количество плагинов возникали самые разные проблемы:
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 плагине.
![](https://habrastorage.org/files/975/86e/ab2/97586eab24864bedb907ae02281530d4.png)
В этой статье есть ещё инструменты для ускорения разработки.
В заключение:
Юнити — хороший инструмент для разработки своих небольших игр, но иногда его функционала не хватает. Есть много бесплатных сторонних решений для разработки, монетизации, аналитики и они без проблем справляются с недостающими функциями.
Недавно вышла моя вторая игра — Space Beaver (Бобёр и Космос) на iOS и Android, в ней я тоже использовал эти плагины. Вот кстати исходники игры с примерами использования.
Всем спасибо за внимание. Если кто-нибудь ещё знает полезные плагины, сервисы, инструменты для юнити, то буду рад их добавить :)
bezarius:
UniRx — Реактивное программирование в юнити
Zenject — Dependency Injection фреймворк для юнити
echipachenko:
consulo.io форк IntelliJ IDEA с поддержкой C# и Unity
icepro:
Unity3dRider кросплатформенная .NET IDE поддержкой C# и Unity