Своя Tower Defense на Unity 5. Частина 1.
Створення Tower Defense на ігровому движку Unity 5.
Починаючи з цього уроку я буду розповідати вам, як створити свою гру в стилі Tower Defense на ігровому движку Unity 5.
Tower Defense - це жанр гри, в якому гравцеві необхідно розправиться з ворогами (ботами), до того як вони перетнуть певну точку на карті. Робити це необхідно за допомогою будівництва веж в певних місцях на карті.
У цьому уроці ми підготуємо ігрову сцену і реалізуємо рух ботів по певних точках (поінт).
Почнемо з підготовки сцени. Створимо новий проект в Unity і додамо кілька нових папок material. resources. scripts і scene. У цих папках ми будемо зберігати матеріали, ігрові об'єкти, скрипти і нашу ігрову сцену.

Створення поля.
Для початку нам необхідно створити ігрове поле, де будуть проходити всі основні дії.
Додамо площину на сцену з позиціями по нулях і будь-яким матеріалом, перейменуємо її в pole.

Далі, для можливості розміщення веж на ігровому полі необхідно створити платформу.
Додамо куб на сцену з розмірами 1, 0.1, 1 і відключимо у нього можливість відкидання тіней (Mesh render - Cast Shadows - off).

Перейменуємо куб в TowerPlace і збережемо його в префаб
Тепер продублюємо нашу платформу (ctr + D) так, що б вони покривали все ігрове поле

Перемістимо всі платформи в пустушку (TowerPlace) і у префаб змінимо трохи розміри для того, що б було відстань між платформами.

Видалимо деякі об'єкти для того, щоб вийшла доріжка для руху ботів

Додавання Waypoints
Створимо порожній об'єкт на сцені з позиціями по нулях і назвою WayPoint. Змінимо його іконку, що б він відображався на сцені. Піднімемо його по осі y, вісь x і z повинні залишатися зі значенням нуль.

Збережемо його в префаб і розмістимо наші вайпоінти на порожній доріжці, на краях повороту (дублювати CTR + D, переміщати з затиснутою клавішею CTR). Перенесемо все поінти в порожній об'єкт weapoints.

Створимо куб, який буде створювати ботів на сцені. Ставимо його в початок шляху ботів і прибираємо у нього box collider. назвемо його Start
Продублюємо цей куб і розмістимо його в кінці шляху ботів (можна застосувати на куби різні матеріали), назвемо його End.

Створіть сферу на сцені і застосуєте до неї будь-який матеріал. Додайте компонент rigidbody. Перемістіть сферу в префаб і видаліть зі сцени. Це буде наш противник, який буде рухатися по сцені і якого повинна буде знищити вежа.

На цьому підготовка сцени закінчена, переходимо до скриптів.
В папці Scripts створіть новий c # скрипт spawner і перемістіть його на об'єкт Start. Відкрийте скрипт і напишіть такий код:
Цей скрипт буде відповідати за появу противника на сцені, відстань між об'єктами і за кількість з'явилися об'єктів з початкової точки.
Створимо скрипт Enemy і перенесемо його на префаб противника (Enemy), відкриємо його і напишемо такий код:
Цей скрипт буде відповідати за рух противника по точкам weapoints, швидкість руху і видалення зі сцени.
На об'єкті Start вкажемо в поле spawn object наш префаб Enemy і в поле Spawn point вкажемо сам Start

Створимо ще один скрипт і назвемо його weapoints. перенесемо його відразу на об'єкт weapons на сцені (група наших поінтів). Відкриємо скрипт і напишемо код:
На цьому етапі вже можна запустити нашу сцену, не забудьте перед цим додати сцену в настройки проекту File - Built settings і зберегти сцену.



Як бачите, наші об'єкти почали рух по заданому шляху і пропадають в кінці. залишилося налаштувати поява веж і видалення противника зі сцени. Цим ми і займемося в наступних уроках. Вдалих проектів!