Найти тему

Базовые навыки для работы с Unity

Оглавление

Каждый разработчик хочет быстрее создать свою игру, но как сделать это? В этой статье рассмотрены базовые навыки, позволяющие сократить время разработки в среде Unity.

Немного о Unity

Unity предоставляет бесплатную версию игрового движка, если Ваш доход
от игр составляет меньше 100,000 $. С помощью него Вы можете делать 2D и 3D игры.

Если Вы уже достаточно опытный пользователь Unity, можете поделиться своим списком базовых навыков в комментариях.

Для поддержания порядка в проекте требуется разобраться с его структурой. Она может быть представлена в следующем виде:

1. Models - хранит все модели, используемые в проекте

2. Prefabs - хранит все шаблоны моделей

3. Textures - хранит все текстуры

4. Materials - хранит все материалы

5. Scripts - хранит все скрипты

6. Sounds - хранит все звуки

7. Animations - хранит все анимации

Если у Вас есть сложные объекты, например, персонаж, для него создается отдельная папка, где повторяется вышеописанная структура.

Структура папки персонажа
Структура папки персонажа

Другим подходом будет создание вышеописанных папок, и размещение в каждой папке частей объекта, то есть для анимации персонажа будет следующая структура.

 Структура папки анимаций
Структура папки анимаций

Для упрощения работы с наборами одинаковых объектов их можно объединять в группы, где в качестве родителя выступает пустой объект.

Это поможет легко отключить свет на всей локации или в помещении. Узнать месторасположение всех объектов.

Каждый элемент называется относительно того, что он из себя представляет, в конце добавляется префикс родительского объекта. Например, золотой слиток в пещере будет носить название "goldBar_cv1", где cv1 обозначает cave1, а дерево в лесу "tree_frt1", где frt1 обозначает forest1. Для префикса берется первая буква слова, первая буква второго слога и последняя буква слова.

Пример иерархии объектов на сцене
Пример иерархии объектов на сцене

В Unity имеется 3 основных источника света:

1. Естественный свет (Directional Light) - аналог Солнца

2. Точечный свет (Point Light) - аналог лампочки

3. Прожектор (Spotlight) - аналог фонарика

Если есть свет, значит должен быть источник света. Например, в пещере не может быть светло, если у персонажа нет факела. (для факела подойдет точечный свет)

Нужно найти объект на сцене? Кликните 2 раза по имени объекта в иерархии.

Хотите пролететь по сцене от 1 лица? Зажмите ПКМ и перемещайтесь клавишами WASD, на Shift ускорение.

Требуется посмотреть сцену с разных углов? Воспользуйтесь Гизмо (Gizmos).

Расположение Гизмо
Расположение Гизмо

Хотите добавить персонажа на сцену? Добавьте компоненты RigidBody и CapsuleCollaider. RigidBody говорит движку, что к этому объекту должна применяться физика твердого тела.

Хотите проверить столкновение персонажа с объектом? Добавьте объекту компонент MeshCollaider и в скрипте персонажа в функции OnCollisionEnter проверяйте тег (tag) объекта, с которым столкнулся персонаж.

Пример реализации проверки столкновения персонажа с объектом
Пример реализации проверки столкновения персонажа с объектом

Понравилась статья? Жмите "палец вверх", а также подписывайтесь, завтра статья еще интереснее ;)

5 ошибок начинающего программиста - Часть 1

5 ошибок начинающего программиста - Часть 2