Безкоштовні плагіни, інструменти та сервіси для розробки гри на юніті

Всім привіт. У своїй статті я хочу розповісти про безкоштовні юніті плагіни, які використовував для створення своїх ігор. Є плагіни для розробки, монетизації, аналітики, соцмережам тощо. Ось посилання на список у гітхабі.


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 не сумісна з юніті, тому доводилося знижувати версію 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