5.92M

Урок_9_Проект_«Motocross_2D»_Сборка_мотоцикла_Easy

1.

2023
Тема занятия
Проект «Motocross 2D»:
Сборка мотоцикла
Разработчик игр Unity

2.

Разработчик игр Unity
2023
План
занятия
Введение
Теория
Gravity Defied
Теория
SVG в Unity
Практика
Импорт через плагин AVG
Практика
Сборка мотоцикла
Теория
Компоненты подвески
Домашнее задание
Итоги
Изображение от Storyset на Freepik.com

3.

Разработчик игр Unity
2023
Проверяем
домашнее задание
1.
Какие трудности возникли
при выполнении задания?
3.
2.
Как можно было бы
избежать трудностей?
4.
Какой информации не хватило
для выполнения задания?
Что больше всего
понравилось/не понравилось
в процессе выполнения задания?
Изображение от Storyset на Freepik.com

4.

2023
Разработчик игр Unity
Введение
Сегодня мы начнем работать над нашим
новым проектом, в котором мы поближе
познакомимся с 2D механизмами в Unity,
узнаем некоторые особенности работы
физического движка, а также научимся
работать с векторной графикой в Unity!
Мы создадим аналог игры Gravity Defied!
Скорее всего, ты ничего не знаешь о данной
игре, но точно не раз видел множество игр,
которые она породила.

5.

2023
Введение
Сейчас ты можешь создать новый 2D-проект
и выдать ему собственное название.
А пока идет загрузка — ознакомимся с нашим
будущим проектом!
Разработчик игр Unity

6.

2023
Теория
Gravity Defied
Разработчик игр Unity

7.

2023
Теория
Игра, которая была создана в мае 2004 года
в Швеции для студенческого соревнования
по программированию Excitera Mobile Award.
Игра представляла собой симулятор
мототриала, и после предварительной оценки
комиссия допустила её к главному соревнованию,
где она заслуженно заняла первое место, обойдя
полтора десятка других приложений.
Разработчик игр Unity

8.

2023
Теория
На протяжении последующего года была основана
студия Codebrew Software, которая дорабатывала
технодемку до состояния полноценной игры.
По ходу разработки демо уже самой Gravity Defied
скачали более 5000 раз.
Разработчик игр Unity

9.

2023
Теория
Аналогичных мобильных игр, которые бы делали
такой упор в физику, а не графику, на тот момент
просто не было.
И игра заслуженно получила статус «культовой».
Это повлекло за собой появления множества
клонов и аналогов, количество которых сложно
представить.
Разработчик игр Unity

10.

2023
Теория
Одним из ярких представителей является игра Hill
Climb Racing, которая не только смогла взять
от старой игры лучшее, но привнесла в жанр много
нового.
Разработчик игр Unity

11.

2023
Теория
Увы, права на Gravity Defied были утеряны,
поэтому оригинальное продолжение мы никогда
уже не увидим.
Однако, разработчики держат хвост трубой
и активно занимаются другими проектами в
данном жанре!
Но это уже совсем другая история…
Разработчик игр Unity

12.

2023
Теория
SVG в Unity
Разработчик игр Unity

13.

2023
Разработчик игр Unity
Теория
Часть нашего проекта будет построена
на векторной графике.
Скорее всего, ты уже знаешь об основных плюсах
и минусах работы с векторной графикой.
Однако, как она работает в Unity?
Давай разберемся подробнее!
Изображение от Storyset на Freepik.com

14.

2023
Теория
Векторная графика хранится в формате SVG.
Поговорим сначала о плюсах работы с данным
форматом в Unity.
Разработчик игр Unity

15.

2023
Теория
Возможность оптимизации
и тонкой настройки графики!
Разработчик игр Unity

16.

2023
Теория
Возможность переводить изображение
в растровый формат!
Разработчик игр Unity

17.

2023
Разработчик игр Unity
Теория
Это самые существенные плюсы работы с данным
видом графики.
А теперь поговорим о минусах.
К сожалению, Unity пока не умеет использовать
данный формат во всех своих инструментах,
но об этом чуть позже.
Изображение от Storyset на Freepik.com

18.

2023
Теория
Из больших минусов можно выделить только один.
Векторные спрайты нельзя использовать
в формате «Multiple».
Т. е. изображение нельзя нарезать на несколько
спрайтов, используя атлас.
Разработчик игр Unity

19.

2023
Теория
В связи с этим, каждое изображение необходимо
хранить в отдельном файле и настраивать
по отдельности.
Разработчик игр Unity

20.

2023
Разработчик игр Unity
Практика
Импорт через плагин AVG
Приступим к работе!

21.

2023
Практика
Для импорта SVG файлов в Unity необходимо
установить официальный плагин AVG от Unity.
[Window] → [Package Manager] →
Разработчик игр Unity

22.

2023
Практика
→ нажимаем [+] → [Add package from git URL] →
вводим следующую ссылку в поисковую строку:
com.unity.vectorgraphics (без пробелов
и лишних знаков).
Разработчик игр Unity

23.

2023
Разработчик игр Unity
Практика
У нас должна запуститься установка плагина AVG.
После чего в нашем списке появится плагин
Vector Graphics.

24.

2023
Практика
Не будем уходить далеко и сразу установим
плагин «Cinemachine»
(раздел «Unity Registry»).
Напомню, он поможет нам в управлении камерой.
Разработчик игр Unity

25.

2023
Практика
Теперь мы можем импортировать все svg файлы
в проект, и они автоматически определятся как
спрайты!
Найти векторную графику не так просто, поэтому
ее необходимо создать самостоятельно
или использовать готовую графику, которая была
подготовлена командой школы Rebotica!
Если у тебя ее нет, то взять ее можно здесь:
КЛИК!
Разработчик игр Unity

26.

Разработчик игр Unity
2023
Настройка векторных спрайтов отличается
от растровых.
Нас могут интересовать следующие параметры:
Pixels Per Unit — изначальный размер
спрайта.
Target Resolution — желаемое качество
спрайта.
Zoom Factor — множитель качества.
Generated Factor — выбор формата
изображения (например, для перевода
в растровый формат).
Остальные параметры сейчас не сыграют важной
роли, и их настройка требует тонких знаний
работы с графикой.

27.

2023
Практика
Сборка мотоцикла
Разработчик игр Unity

28.

2023
Практика
Размести на сцене спрайт мотоцикла, колес
и создай кубик, который будет служить в качестве
маятника.
Маятником называют заднюю часть подвески
мотоцикла.
Разработчик игр Unity

29.

Разработчик игр Unity
2023
Практика
После чего необходимо соединить все механизмы
мотоцикла.
Давай посмотрим, как это делается!
Смотреть
Попробуем сразу повторить результат.
Изображение от Storyset на Freepik.com

30.

2023
Практика
При запуске подвеска должна работать примерно
так:
Однако, если мотоцикл переворачивается,
разваливается, не пружинит и происходят другие
аномалии — требуется корректировка.
Разработчик игр Unity

31.

2023
Разработчик игр Unity
Практика
Это может быть связано с настройками
компонентов и расположением объектов.
Но что же это за компоненты такие?
Давай изучим их подробнее!
Изображение от Storyset на Freepik.com

32.

2023
Теория
Компоненты подвески
Разработчик игр Unity

33.

2023
Теория
Компоненты с окончанием Joint соединяют один
Rigidbody с другим, используя фиксированную
точку в пространстве.
Дословно их можно перевести как «соединитель».
Они наделяют твердые тела особыми
физическими свойствами, превращая их в
специальные механизмы, такие как
«шарниры», «суставы», «фиксаторы», «пружины»
и др.
Разработчик игр Unity

34.

2023
Теория
C Rigidbody 2D мы уже знакомы.
Массу мотоцикла выставляем на 2,
а массу колес — на 1.
Да, это не реалистично, но на первых
этапах это облегчит нам работу с физикой
игры.
Разработчик игр Unity

35.

2023
Теория
Polygon Collider 2D — особый вид
коллайдеров, которые позволяют создать
уникальную физическую форму объекта.
Для удаления граней нужно зажать клавишу [Ctrl].
Разработчик игр Unity

36.

2023
Теория
Spring Joint 2D — пружинный механизм.
Создает невидимую пружину между двумя
физическими объектами.
Разработчик игр Unity

37.

2023
Теория
Hinge Joint 2D — рычажный механизм
или же петля.
Заставляет объект вращаться по оси соединения.
Ее движение можно ограничить при помощи
параметра «Use Limits» и настройки нижнего
(Lower) и верхнего (Upper) лимита.
Центральная полоска показывает текущий уровень
поворота объекта.
Разработчик игр Unity

38.

2023
Теория
Ну и, пожалуй, самый сложный из всех — Wheel
Joint 2D.
Это механизм подвески.
Да-да, несмотря на название, это именно
механизм подвески, а значит, что он крепится не
на колесо!
Разработчик игр Unity

39.

2023
Теория
Для его корректной работы требуется подобрать
правильный угол движения пружины подвески
(Suspension → Angle).
Он показан зеленой линией.
Большинство этих механизмов имеют
повторяющиеся настройки, которые отвечают
за одну и ту же функцию.
Разработчик игр Unity

40.

Разработчик игр Unity
2023
Теория
Enable Collision — включить столкновение
между соединяемыми объектами.
Connected Rigid Body — физический
объект, к которому крепиться механизм;
Anchor — положение механизма;
Connected Anchor — точка крепления к
объекту;
Damping Ratio — коэффициент
демпфирования (сложный параметр, который
можно устанавливать на 0.5);
Frequency — частота отработки механизма
(она же сила работы);
Break Force — порог силы, который
требуется приложить на удар, чтобы сломать
механизм (измеряется в ньютонах);
Break Torque — порог силы, которую
требуется приложить на вращение, чтобы
сломать механизм.

41.

2023
Теория
Поскольку у задней подвески демпфирование идет
через маятник и пружинный механизм, мы
повысили ему прочность в 2 раза (3000).
В то время как на передней подвеске прочность
равна 1500, т. к. она имеет прямую амортизацию
от ударов.
Также мы завысили частоту отработки (силу
пружины) задней подвески до 30, чтобы заднее
колесо не болталось в месте крепления.
В то время как у передней подвески частота
отработки (сила пружины) равна 5.
Разработчик игр Unity

42.

2023
Разработчик игр Unity
Теория
Обрати внимание:
При увеличении массы одного из объектов хотя
бы на килограмм — поведение всех механизмов
подвески существенно изменится.
Поэтому настройка массы повлечет за собой
изменение параметров всех механизмов.
Изображение от Storyset на Freepik.com

43.

2023
Разработчик игр Unity
Теория
На сегодня это все!
Можешь сохранить мотоцикл как Prefab.
Изображение от Storyset на Freepik.com

44.

Разработчик игр Unity
2023
Домашнее
задание
1
Создай папку для хранения игровых
локаций.
2
Используя примитивы, создай первую
локацию для будущей игры.
3
Определи место для старта и финиша
на уровне.

45.

Разработчик игр Unity
2023
Итоги
1
4
Для чего используются параметры Lower
Angle и Upper Angle у Hinge Joint 2D?
5
На что влияет настройка параметра
Frequency у Spring Joint 2D?
2
Какие преимущества и недостатки есть
в работе с векторными спрайтами
в Unity?
6
Какое задание было сложным,
на твой взгляд?
3
Верно ли следующее утверждение: Wheel
Joint 2D крепится на само колесо?
7
Как ты думаешь, где еще ты бы мог
применить эти знания?
Что нового сегодня было на занятии?
English     Русский Правила