Розробка ігор для пристроїв з Android OS вимагає підходу, схожого з розробкою під iOS. З іншого боку, апаратне забезпечення Android-пристроїв не підпорядковується чітким стандартам, що змушує вирішувати питання, які відсутні при роботі з iOS. Також присутні відмінності між версіями Unity для Android і iOS.
Підготовка середовища розробки для Android
Перш ніж ви зможете протестувати свої ігри на пристрої, вам потрібно буде підготувати середовище розробки. Зокрема - завантажити і встановити Android SDK потрібної платформи і додати ваш пристрій в систему (цей процес відрізняється для Windows і Mac). Про це докладно написано на сайті Android-розробників, а також додаткову інформацію може надавати виробник вашого пристрою. Так як це досить складний процес, ми приготували невелику інструкцію яка допоможе вам підготувати все необхідне для розробки. Якщо вам знадобиться більше інформації, ви зможете отримати її на порталі Android-розробників.
Доступ до функцій Android
Unity надає API для доступу до засобів введення і налаштувань Android. Доступні класи задокументовані на сторінці Написання коду для Android збірок.
Прив'язка C, C ++ або Java коду до скриптів
Unity дозволяє викликати функції, написані на C / C ++, безпосередньо з скриптів (Java-функції можуть бути викликані непрямим способом). Щоб дізнатися як з Unity отримувати доступ до функцій з нативного коду, відвідайте сторінку про збірку плагінів для Android.
Occlusion Culling (відсікання невидимої геометрії)
Unity надає підтримку occlusion culling, що дуже корисно при оптимізації для мобільних платформ. Більше інформації можна знайти на сторінці Occlusion culling.
Налаштування початкової заставки
Заставка, яка відображається при запуску гри, може бути налаштована - см. Цю сторінку для додаткової інформації.
Рішення проблем і повідомлення про помилки
Існує безліч причин, через які ваше додаток вилітає або не працює належним чином. Наше керівництво за рішенням специфічних для Android проблем допоможе вам розібратися з причинами помилок в найкоротші терміни. Якщо після прочитання керівництва ви припускаєте, що проблема саме в Unity - вам слід скласти повідомлення про помилку. Зверніться до цієї сторінки за інструкціями.
Як Unity для Android відрізняється від версії для настільних комп'ютерів
Хоч Unity Android і підтримує DXT / PVRTC / ATC текстури, Unity розпакує текстури в формат RGB (A) при виконанні, якщо ці методи стиснення на підтримуються на конкретному пристрої. Це може серйозно вплинути на продуктивність GPU відтворення, тому рекомендується використовувати формат ETC. Він є фактичним стандартом для Android, і повинен підтримуватися всіма сучасними пристроями. З іншого боку, ETC не підтримує альфа-канал, і іноді 16-бітові RGBA текстури будуть кращим вибором за критеріями якості, розміру і швидкості рендеринга там, де потрібен альфа-канал.
Також можливо створити кілька дистрибутивів гри (apk-файлів) з різними форматами текстур, щоб Android Market сам надавав для кожного пристрою найбільш вподобаний з дистрибутивів. За подробицями зверніться до цієї сторінки.