Мобільна ігрова індустрія приносить доходи, порівнянні з прибутком від продажу відеоігор на ПК і консолі. Геймінг на телефонах визнаний кампаніями, що випускають ААА проекти (високобюджетні гри). Саме тому на мобільній платформі з’являються порти консольних і комп’ютерних відеоігор. Крім того, маленькі незалежні студії регулярно намагаються здобути популярність серед власників смартфонів і планшетів. Заробляти на створенні додатків набагато легше, оскільки трудовитрати і витрати на створення проекту менше, ніж на ПК. При цьому при успіху розробник отримує солідний прибуток, порівнянну з игроделами.
Методи створення
Перевага платформи Android полягає у широких можливостях. Робити проекти на Android-смартфони можуть, як малі незалежні студії, так і великі кампанії.
Для пересічних або початківців розробників існує три типи інструментів для створення гри на Андроїд:
- Онлайн сервіси дозволяють займатися розробкою прямо в браузері. Пропонують користувачам готові і робочі шаблони для роботи з різноманітними ігровими жанрами. Вимагають мінімальної кількості навичок у програмуванні.
- Програми мають більш докладним функціоналам. Аналогічно з онлайн сервісами пропонують набір готових шаблонів і скриптів. Вимагають певних знань у програмуванні, оскільки знадобиться писати код для кожної дії.
- Середовище розробки – складний інструмент, вимагає навичок у програмуванні. Тут необхідно знати конкурентний мова програмування, на якому буде писатися гра. Без спеціальних курсів і знань написати ігри, наприклад, на мові Java неможливо. Для самоуків придумані спеціалізовані форуми. Найбільш популярний – GeekBrains.
Ідея і сценарій
Якщо автор-початківець думає, що ідея та сценарій – це атрибути тільки великих ААА проектів, то він глибоко помиляється. Розглянемо твердження на прикладі Subway Surfer:
- Сюжет: хлопець, який малював на поїзді був помічений поліцейським і тепер намагається втекти від нього.
- Мета: втекти від поліцейського.
Щоб зробити гру на Андроїд необхідно, щоб ігровий процес відповідав на питання:
- Сторони конфлікту: приклад Angry Birds – птиці і свині.
- Як вирішується це конфлікт – птахи летять у свиней на рогатці.
- Де розгортаються основні події?
Приклад сценарію для ранера на Android: головний герой – білка, яка готується до зимової сплячки. Її завдання, назбирати якомога більше припасів на зиму. В якості перешкод виступають дерева та інші лісові мешканці. Зрозуміло, чим складніша гра, тим більше питань ставить для її створення. Але питання «навіщо», «чому» і «як» застосовуються для будь-якого проекту.
Об’єктна модель і специфікації
Захоплюючий геймплей і яскрава графіка – це не єдині фактори успішного застосування. Важливими є такі пункти, як об’єктна модель і специфікації. Представлені параметри виконують дві найважливіші функції:
- Довідник основних атрибутів. Даний довідник зможе побачити будь-який член команди без опрацювання всієї дизайн-документації або просунутого пошуку (наприклад, за алфавітом).
- Структура взаємодії характеристик. Являє собою просунуту дизайн-документацію, яка формує архітектуру майбутньої гри.
Приклад об’єктної моделі ігрової сутності:
- Основний розділ – предмети:
- Спеціальна класифікація – зброя:
- Вид № 1 – меч;
- Вид № 2 – цибулю.
- Спеціальна класифікація – зброя:
Контент і інтерфейс
Контент і інтерфейс – це параметри, з якими гравець познайомиться до початку ігрового процесу. Інтерфейс – командне меню, за допомогою якого гравець взаємодіє з навколишнім середовищем. Щоб створити успішний інтерфейс для своєї гри необхідно:
- Використовувати інтуїтивно зрозумілі значки (меню налаштувань – шестерні).
- Застосовувати мінімалістські об’єкти, які не будуть відволікати від гри.
- Структурувати інформацію.
Контент – це аспект, який наповнює відеогру. Під контентом розуміють предмети, які гравець може отримати під час ігрового процесу ігрову або реальну валюту. Розрізняють три типи контенту:
- Платний контент – це те, що можна купити за реальні гроші (допомагає підвищити прибутковість).
- Безкоштовний контент – гравцеві дається при виконанні певних умов. Наприклад, при щоденному вході в гру.
- Ігровий контент – це обмін ігрової валюти на різні фішки: поліпшення, нові персонажі і т. п.
Дуже важливо наповнювати гру достатньою кількістю контенту, щоб у геймера з’явився стимул проходити гру далі. Наприклад, в Subway Surfer за золоті монети можна придбати нових персонажів або тимчасові бонуси, які допоможуть побити рекорд.
Вибір движка
Ігровий движок – це набір інструментів, що спрощують розробку ігор. Головна перевага движка – автоматизація найбільш використовуваних функцій гри. Зрозуміло, написати ігровий движок можна самостійно, але цей процес дуже трудомісткий і витратний за часом. Кожен ігровий движок підходить для реалізації тих чи інших цілей.
Кожен движок здатний виконувати ті чи інші завдання і застосовується для різних жанрів. Розглянемо на прикладах різних движків:
- Mages Engine – орієнтований на міні-ігри багатокористувацькі ММОРПГ і покрокові стратегії. Реалізація проектів здійснюється за допомогою GUI і потужного API.
- Catcake – спеціалізується на локальному мультіплеере, де присутня функція поділу екрана. Підтримує відображення тривимірних об’єктів. Підходить для проектів будь-якого жанру.
- Unreal Engine – ще один популярний движок, регулярно використовується Epic Games (творці Unreal Tournament 2016, Gears of War 3, Fortnite та інших). Основний напрямок – консольні та комп’ютерні відеоігри. Одна з головних фішок Unreal Engine – якісна графіка. Однак і на мобільних платформах вже випущені успішні програми: Fortnite і PUBG.
- AndEngine – безкоштовний движок, орієнтований на 2D. Володіє відкритим вихідним кодом. Поширюється вільно. Як і інші популярні платформи використовує OpenGL для рендеринга і Box2D для фізики.
- Phaser — це фреймворк для розробки HTML5. Базується на бібліотеці PIXI.js. Підтримує рендеринг в Canvas і WebGL, анімовані спрайт, і т. п.
Що таке буфер обміну на Андроїд і де його знайти
Винятком з правил є фірмові пакети розробників. Наприклад, компанія Rockstar (творці серії GTA Red Dead Redemption) використовують власний движок, що знаходиться в закритому доступі.
Процес створення гри
Якщо підходити до створення гри предметно, то можна виділяти декілька етапів, які об’єднують цей процес. Всі схеми мають узагальнений характер, тому в деяких іграх можуть бути проміжні етапи.
В якості конструктора використовуємо Game Maker – це один із кращих інструментів для новачків. У першому прикладі розглянемо розробку простий аркади:
- Створюємо основний фон – локацію, де відбуватимуться основні події.
- Робимо головного персонажа: малюємо самостійно або завантажуємо готовий шаблон.
- Проектуємо предмети для взаємодії: монетки, пастки, вороги і т. п.
- Програмуємо подія, що трапиться при взаємодії з предметом: настав на пастку – гра закінчена, підібрав монетку – шлях триває.
Для того, щоб показати відмінність між ігровими жанрами розглянемо більш складний приклад. Тепер використовуємо конструктор Unity 3D, а ігровий жанр міняємо на ККІ:
- Перший пункт залишається незмінним – створення фону для майбутнього проекту.
- Місце головного персонажа займають карти, їх набагато більше, тому робота понад час витратна.
- Проектуємо логічні взаємодії між картами (самий складний етап).
- Визначаємо кількість гравців.
- Конвертуємо ігрове меню з тривимірного вимірювання у двовимірний простір.
- Визначаємо умови, при яких матч буде вважатися завершеним.
Кращі конструктори
Construct 2 і 3
Construct 2 – інструмент, що дозволяє робити відеоігри на телефони без знань програмування. З його допомогою можна створити відеогру не не написавши жодного рядка коду. Якщо думаєте, що працювати з таким інструментом програшний варіант, то подивитеся на додаток Floppy Bird, яке написано на Construct 2.
Існує дві версії движка: «звичайна», створена для ознайомлювальних цілей. І бізнес ревізія, що володіє повним набором функцій для створення комерційного продукту.
Construct 3 – покращений движок, який поступово витісняє Construct 2. Розширення звичних опцій і надання нових функції – переваги оновленої версії. Однак у цій ревізії відсутня безкоштовна підписка. Зате є зворотна сумісність з попередньою версією утиліти.
Clickteam Fusion
Clickteam Fusion – поширюється в трьох варіантах: «безкоштовна версія», «звичайна варіація», і «професійна ревізія». Зрозуміло, що чим різноманітніше функціонал версії, тим вище її ціна.
Clickteam Fusion – це мультиплатформовий движок, що дозволяє створювати ігри для різних платформ, а також займатися їх портированием. Основна спеціалізація – 2D. Однак існує можливість писати і в 3D. Саме на цьому движку був написаний Five nights at freddy’s (П’ять ночей з Фредді).
Stencyl
Движок Stencyl – це ще один представник конструкторів, пред’являють мінімальні вимоги до знань програмування. Презентований движок – мультиплатформовий інструмент, що дозволяє писати гри, як мобільні, так і на старші платформи. Має інтерфейс Drag & Drop.
Інтерфейс програми – його головна фішка, оскільки меню управління імітує панель Photoshop, що виявляється досить зручним для геймдизайнинга. На цьому движку пишуться програми таких студій як: ArmorGames, Kongregate, Newground і інших більш дрібних кампаній.
Game Maker
GameMaker – движок, який спеціалізується на створенні двомірних проектів, які є популярними на мобільних платформах. Движок орієнтований на початківців розробників, що володіють базовим набором знань. За допомогою GameMaker розроблявся Hotline Miami та інші 2D шедеври. З очевидних плюсів движка виділяють:
- інтеграцію з сервісом Steam;
- зручний і інтуїтивно зрозумілу робоче середовище;
- наявність власного спрощеного мови Game Maker Language.
Unity 3D
Unity – найбільш популярний движок серед розробників. Представлений движок – найбільш гнучка система в сьогоднішньому списку. Тут зручно працювати з 2D і 3D проектами. На цій платформі розроблялися відеоігри для різних систем:
- PS 3 – Cuphead, Escape from Tarkov, Life Is Strange: Before the Storm.
- Android і IOs – Angry Birds 2, Hitman Go, Heartstone.
- PC – Pillars of Eternity, Ori and the Blind Forest.
З плюсів Unity хочеться відзначити широкий набір платних і безкоштовних інструментів: готові моделі, текстури, робочі анімації і т. п. Окремої уваги заслуговують плагіни для внутрішньоігрових покупок. В якості платних додатків є готові плагіни Playmaker, що звільняють користувачів від написання коду.
Тепер наочно порівняємо вищеперелічені конструктори.
Конструктор | Ціна | Переваги |
---|---|---|
Construct 2 і 3 | Безкоштовна/199 $ | Мультиплатформа, оперативність обробки даних, простий внутрішній мову. |
Clickteam Fusio | 148 $ | Створення прототипів, мінімальні вимоги до програмування, створення повноцінного комерційного продукту. |
Stencyl | Безкоштовно/99 $/199 $ | Інтерфейс Drag & Drop, орієнтованість на 2D ігри, імітація панелі управління Photoshop. |
Game Make | Безкоштовно | Мультиплатформа, регулярні оновлення, активне кероване спільнота, проста панель управління. |
Unity 3D | Безкоштовно | Мультиплатформа, варіативність ігрових налаштувань, готові шаблони для створення ігор, популярність серед розробників, відкрита система |
Насправді ігрових движків величезна кількість, тому розробник повинен сам вибрати його виходячи з наступних критеріїв:
- наявність мультиплеєра;
- власні пізнання в програмуванні;
- складність проекту: двомірна чи тривимірна гри;
- ступінь сумісності з іншими ігровими платформами;
- фінансові можливості (вартість платних інструментів).
Онлайн сервіс AppsGeyser
AppsGeyser – це сервіс, безкоштовний конструктор, що дозволяє робити відеоігри і програми з нуля прямо з браузера. Примітно, що від користувача не потрібно ніяких знань програмування. Досить просто зайти на сайт і слідувати інструкції.
Розбираємося, як самому створити прошивку Android на комп’ютері
Розберемо створення гри в якості прикладу:
- Зайдіть на сайт AppsGeyser і натисніть на кнопку «Створити».
- Відкриється вікно жанрів. Виберіть найбільш підходящий жанр.
- Далі піде короткий опис обраного жанру (в нашому випадку ранер).
- Наступний крок – завантаження зображень і анімації. Можна створити їх самостійно або завантажити шаблон з інтернету.
- Створення ворогів – ще один крок. Потрібно вказати їх кількість, параметри здоров’я і завантажити зображення недруга.
- Тепер перейдемо у вікно створення фону. Тут є заготовлені шаблони. Якщо вони не сподобаються, то фон можна створити самостійно.
- Музичний супровід – ще один фактор успішної відеоігри. Розробники утиліти пропонують список музики, шрифтів, не захищених авторських правом. Весь контент абсолютно безкоштовний.
- Всі інші пункт стосуються візуального оформлення – іконки, описи, тощо
Зверніть увагу, що завантажувати і зберігати проекти можна тільки після проходження реєстрації в AppsGeyser. Пройшовши реєстрацію, розробники зможуть публікувати результати робіт в Google Play Market. Однак ця процедура буде коштувати 25 доларів за публікацію.
Кращі програми
Початківцям игроделам підійдуть програми, що дозволяють розробляти нехитрі аркади на смартфони і планшети, що працюють під управлінням ОС Android. Примітно, що навіть в таких простих програмах є плагіни для встановлення реклами і внутрішніх покупок. Розглянемо найбільш цікаві додатки для створення ігор.
Draw Your Game
Цікавий додаток, яке надає можливість написати мальовану відеогру. Примітно, що для реалізації ідеї буде потрібно виконати кілька простих дій:
- Намалювати рівень за допомогою чотирьох кольорів.
- Відкрити утиліту на смартфоні і сфотографувати зображення.
- Почекати, поки програма обробить інформацію.
- Вибрати персонажа, який пробіжиться по створеним локаціях.
- Готово! При бажанні «шедевром» можна поділитися з друзями.
Геймплей, створений за допомогою Draw Your Game, являє аркаду, де героєві необхідно знайти вихід з кімнати. При цьому всі намальовані об’єкти будуть динамічними і доступними для взаємодії.
Apper
Apper – це невелика програма для створення програм. Дозволяє в кілька кроків створити зручний софт для мобільного телефону або планшета. Представлений проект відрізняється інтуїтивно зрозумілим інтерфейсом і щодо гнучкою системою налаштувань.
AIDE – IDE for Android Java, C++
Надає користувачам інтегровану середу розробки, за допомогою якої відкривається можливість робити програми для Андроїд прямо із смартфона. Для ознайомлення з утилітою AIDE – IDE for Android Java, C++ потрібні ази програмування або перегляд відео уроків.
Createrria 2 craft your games
Конструктор відеоігор всередині аркади. Творці пропонують цікавий інструмент, з допомогою якого кожен охочий зможе робити гри за кілька хвилин. Отриманим результатом можна буде поділитися з друзями. Основні особливості Createrria 2 craft your games:
- Ключова фішка – можливість малювати рівні самостійно.
- П’ять вбудованих тем для реалізації ідей.
- Варіативна механіка при створенні.
- Колоритне растрові оформлення.
- Офіційні спільноти в соц. мережах.
Sketch Nation Create
Sketch Nation Create – це повноцінна платформа для початківців игроделов. Головна фішка проекту полягає у зорієнтованості на багатокористувацькі відеоігри. За допомогою утиліти користувачі зможуть робити невеликі онлайн проекти в режимі реального часу. Презентована утиліта має широкий інструментарій, що дозволяє робити іграшки різної складності.
Приклад створення гри
В якості прикладу розглянемо гоночний симулятор в сучасній обробці. Зверніть увагу, що цей приклад створений для початківців розробників. Для розробки гри використовується Unity.
Геймплей
Геймплей побудований на тому, щоб подолати на машині максимально можливу дистанцію. Функцію «перешкод» виконують динамічні перешкоди, що з’являються на дорозі. Якщо врізатися в одну з перепон, то гра закінчиться. Для ускладнення геймплея вводимо запас палива, який витрачається при заїзді. Щоб поповнити бензобак потрібно збирати баки з бензином.
Початок розробки
«Гоночний тетріс» складається з двох простих сцен: головне меню та вікно геймплея. Першим ділом займемося меню. Для нього необхідно використовувати елемент керування GUI – стандартний інструмент платформи.
Для фону використовуємо спрайт під назвою «background». У прикладі застосовується сірий колір. При бажанні колірна палітра змінюється.
Другий крок – створення сценарію «menu.cs». Шлях команди: Правою кнопкою миші на рядку скрипта – «Create» – «C# Script». Не забудьте повісити його на «background». Вміст скрипта виглядає наступним чином:
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization.Formatters.Binary;
using System.IO;
public class menu : MonoBehaviour {
public GUIStyle mystyle; //оголошується для того щоб змінювати накреслення GUI компонентів(шрифт, розмір і. т. п.)
string score; //змінна для зберігання пройденої дистанції
void Start ()
{
StreamReader scoredata = new StreamReader (Application.persistentDataPath + “/score.gd”); //створення файлової змінної
score = scoredata.ReadLine (); //читання рядка
scoredata.Close (); //закриття файлової змінної
}
void Update () {
}
void OnGUI(){
GUI.Box (new Rect (Screen.width*0.15 f, Screen.height*0.8 f, Screen.width*0.7 f, Screen.height*0.1 f), “MAX DISTANCE:”+score,mystyle); //створюємо невелике віконце для показу пройденої відстані
if (GUI.Button (new Rect (Screen.width*0.15 f, Screen.height*0.25 f, Screen.width*0.7 f, Screen.height*0.1 f), “Start game”,mystyle)) //створюємо кнопку для запуску ігрової сцени
{
Application.LoadLevel(1);//Завантаження ігрової сцени
}
if (GUI.Button (new Rect (Screen.width*0.15 f, Screen.height*0.4 f, Screen.width*0.7 f, Screen.height*0.1 f), “Exit”,mystyle)) //створюємо кнопку для виходу з гри
{
Application.Quit();//Вихід з гри
}
}
}
У кінцевому підсумку на екрані повинно отримати приблизне таке вікно:
Способи зміни IMEI на Андроїді
Не забувайте, що у програмі є функція редагування текстових елементів за допомогою MyStyle.
Ігрове вікно
Перед початком роботи необхідно визначити ключові елементи, які розташовані на цьому малюнку.
В їх число входять:
- автомобіль;
- бензобак;
- дорога.
Розглянемо створення кожного елемента окремо.
Дорога
Представлена гра – нескінченна гонка, тому з технічної точки зору траса, є рухомою. Приймаючи той факт, що гравець має можливість переміщатися тільки вліво або вправо, саме дорога створить ілюзію руху.
Приступимо:
- Завантажуємо спрайт з трасою на сцену з гейплеем, підганяючи її за розмірами камери.
- Далі додаємо в якості дочірніх об’єкта всередині дороги чотири блоки з перешкодами і іконку бензобака.
- Не забудьте додати до них Box Collider 2D. Додатково потрібно відзначити іконку Is Triger, щоб об’єкти перетиналися з машиною.
- Створіть скрипт під назвою «moveroad.cs» і повісьте його на трасу. Далі прописуємо код:
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization.Formatters.Binary;
using System.IO;
public class moveroad : MonoBehaviour {
public GUIStyle mystyle;//створення стилю
int f,fuelst;
float score=0,speed=-0.2 f,data,fuelpos;// змінні для зберігання відстані, швидкості та рекорду
public GameObject block;// ігровий об’єкт для розміщення блоку
public GameObject block1;
public GameObject block2;
public GameObject block3;
public GameObject fuel;
bool turbotriger=false;
void Start ()
{
StreamReader scoredata = new StreamReader (Application.persistentDataPath + “/score.gd”);
data = float.Parse(scoredata.ReadLine ());//читання з файлу інформації про рекорд
scoredata.Close ();
}
void Update ()
{
transform.Translate (new Vector3 (0f,speed,0f));//рух дороги із заданою швидкістю вище
score = score + (speed*-10);// підрахунок відстані
if (transform.position.y < -19f) // якщо дорога йде за межі камери то вона “тілі портируется” вгору
{
transform.position=new Vector3(0f,33.4 f,0f);//нова позиція дороги
block.transform.position=new Vector3(10.15 f,block.transform.position.y,block.transform.position.z);
block1.transform.position=new Vector3(8.42 f,block1.transform.position.y,block1.transform.position.z);
block2.transform.position=new Vector3(6.62 f,block2.transform.position.y,block2.transform.position.z);
block3.transform.position=new Vector3(4.95 f,block3.transform.position.y,block3.transform.position.z);
fuel.transform.position=new Vector3(11.86 f,fuel.transform.position.y fuel.transform.position.z);
//приховування за межі камери всіх перешкод(блоків)
f = Random.Range (0, 5);//випадкова поява на дорозі 1-го з 4-х блоків або каністри з бензином
switch (f)
{
case 0:block.transform.position=new Vector3(2.40 f,block.transform.position.y,block.transform.position.z); break;
case 1:block1.transform.position=new Vector3(0.90 f,block1.transform.position.y,block1.transform.position.z); break;
case 2:block2.transform.position=new Vector3(-0.80 f,block2.transform.position.y,block2.transform.position.z); break;
case 3:block3.transform.position=new Vector3(-2.35 f,block3.transform.position.y,block3.transform.position.z); break;
case 4:
fuelst=Random.Range(0,4);
if(fuelst==0){fuelpos=2.40 f;}
if(fuelst==1){fuelpos=0.90 f;}
if(fuelst==2){fuelpos=-0.80 f;}
if(fuelst==3){fuelpos=-2.35 f;}
fuel.transform.position=new Vector3(fuelpos,fuel.transform.position.y fuel.transform.position.z);
break;
}
if (score>data)// якщо поточне пройдену відстань перевищує те що записано в файлі рекорду то йде оновлення даних
{
StreamWriter scoredata=new StreamWriter(Application.persistentDataPath + “/score.gd”);//створюємо файлову змінну для зберігання пройденої відстані
scoredata.WriteLine(score);//записуємо нове значення в файл
scoredata.Close();//закриваємо файлову змінну
}
}
}
void OnGUI(){
GUI.Box (new Rect (0, 0, Screen.width, Screen.height*0.05 f), “Distance(m):” + score,mystyle);//створюємо вікно для підрахунку відстані
}
}
У результаті повинна вийти рухомі дорога, яка буде автоматично продовжуватися після досягнення «контрольної точки». По суті, виходить нескінченна траса. Проте без змін розробник отримає проблему, коли після проходу «точки» залишиться порожній простір. Щоб виправити цю ситуацію потрібно створити копію готової траси і трохи відредагувати скрипт.
Іншими словами, необхідно створити дві однакові дороги. Ця дія має виправити проблему з розривами.
Автомобіль
Киньте спрайт машини на сцену.
Виберіть авто в будь-яке місце на трасі. Скрипт створіть carcontroller.cs і повести його на машину. Нижче знаходиться вміст скрипта:
using UnityEngine;
using System.Collections;
using UnityStandardAssets.CrossPlatformInput;
public class carconroller : MonoBehaviour
{
void Start ()
{
}
public void Update ()
{
if (transform.rotation.z !=0) //перевірка зіткнення коллайдера автомобіля і перешкоди, при зіткненні відбувається завантаження меню
{
Application.LoadLevel (0);
}
}
}
public void OnGUI()
{
if (GUI.RepeatButton (new Rect (Screen.width*0.1 f, Screen.height*0.9 f, Screen.width*0.2 f, Screen.height*0.08 f), “L”)) //створюємо кнопку для руху вліво
{
if (transform.position.x > -2.4 f)
{
transform.Translate (new Vector3 (-0.05 f, 0f, 0f));
}
}
if (GUI.RepeatButton (new Rect (Screen.width*0.7 f, Screen.height*0.9 f, Screen.width*0.2 f, Screen.height*0.08 f), “R”)) //створюємо кнопку для руху праворуч
{
if (transform.position.x < 2.4 f)
{
transform.Translate (new Vector3 (0.05 f, 0f, 0f));
}
}
}
}
За допомогою скрипта автомобіль отримає можливість переміщатися.
Бензобак
Для створення показника наповнюваності бензобака необхідно використовувати однакові спрайт різних кольорів.
Зробіть зелений спрайт дочірнім. Наступний аналогічний з попередніми пунктами: створити скрипт (fuelscript.cs) і повісити його на бензобак (fuel) з таким змістом:
using UnityEngine;
using System.Collections;
public class fuelscript : MonoBehaviour {
public GameObject fuelall;
float mytimer=100f;// завдання плаваючого числа
// Use this for initialization
void Start ()
{
}
void Update ()
{
mytimer = 100f;
mytimer -= Time.deltaTime;//зміни числа з плином часу
if (mytimer/mytimer==1f) //перевірка на період часу в 1 секунду
{
fuelall.transform.position=new Vector3(fuelall.transform.position.x-0.0011 f,fuelall.transform.position.y,fuelall.transform.position.z);
fuelall.transform.localScale = new Vector3(fuelall.transform.localScale.x-0.001 f, 1, 1);
//вище йде зрушення вліво і зменшення по ширині зеленої смуги для імітації шкали
}
if (fuelall.transform.localScale.x < 0) //якщо шкала зникла то завантаження триває завантаження головного меню
{
Application.LoadLevel(0);
}
}
}
Траса в нашому меню називається road183, а її копія – road183(1). В дочірній об’єкт fueltrack додайте скрипт, який відповідає за заповнення бензобака при його контакті з автомобілем. Наступним кроком буде створення скрипта triger.cs. Повісьте його на fueltrack в кожній трасі. І позначте об’єкт, як Is Triger з таким кодом:
using UnityEngine;
using System.Collections;
public class triger : MonoBehaviour {
public GameObject fuel;//додаємо сюди greenfuel
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
}
void OnTriggerEnter2D(Collider2D col)
{
if (col.gameObject.name == “playercar”) //перевірка перетину автомобіля і об’єкта fuel
{
fuel.transform.position=new Vector3(0,fuel.transform.position.y fuel.transform.position.z);
fuel.transform.localScale = new Vector3(1, 1, 1);
//відновлення об’єкта fuel стандартних значень
}
}
}
Підсумковий результат – нехитра аркадная гонка, яку можна зараховувати до «вбивць часу» на Android.