3.67M
Category: programmingprogramming

Лига Роботов

1.

ligarobotov.ru
Федеральная сеть
секций робототехники
«Лига Роботов»
[email protected]
8(391)272-10-40
© «Лига Роботов», Красноярск 2023

2.

Токены занятия
1.
2.
3.
4.
5.
ligarobotov.ru
Геймдизайн
Игровые художники
Звуковой дизайн
Повторение
Плавное движение камеры
© Федеральная сеть секций робототехники «Лига Роботов», Красноярск 2023

3.

Геймдизайн
ligarobotov.ru
© Федеральная сеть секций робототехники «Лига Роботов», Красноярск 2023

4.

Геймдизайн
1. Цель и задачи игры
ligarobotov.ru
2. Механики игры
3. Баланс и прогрессия
© Федеральная сеть секций робототехники «Лига Роботов», Красноярск 2023

5.

Звук в играх
Представьте себе игру без
звука и музыки.
Скукота да и только!
ligarobotov.ru
© Федеральная сеть секций робототехники «Лига Роботов», Красноярск 2023

6.

Внешний вид игры
ligarobotov.ru
© Федеральная сеть секций робототехники «Лига Роботов», Красноярск 2023

7.

Планы на семестр
1. Примерим на себя роль геймдизайнера и будем
продумывать игры
2. Станем игровыми художниками и будем сами
рисовать спрайты для наших проектов
3. Научимся работать со звуком
ligarobotov.ru
© Федеральная сеть секций робототехники «Лига Роботов», Красноярск 2023

8.

Создадим проект
1. Нажимаем «Новый
проект»
2. Выбираем
шаблон проекта
2D
ligarobotov.ru
© Федеральная сеть секций робототехники «Лига Роботов», Красноярск 2023
3. Даем название
и нажимаем
«Создать проект»

9.

4
1
3
ligarobotov.ru
© Федеральная сеть секций робототехники «Лига Роботов», Красноярск 2023
2

10.

Создадим спрайты
1. Создайте квадрат (Square)
2. Создайте круг (Circle)
3. Отмасштабируйте квадрат так, чтобы
получилась платформа
Должно выглядеть примерно так
ligarobotov.ru
© Федеральная сеть секций робототехники «Лига Роботов», Красноярск 2023

11.

Добавляем компоненты
Circle:
1. Добавляем компонент Rigidbody 2D
2. Добавляем компонент Circle Collider 2D
Square:
Добавляем компонент Box Collider 2D
Запускаем и проверяем
ligarobotov.ru
© Федеральная сеть секций робототехники «Лига Роботов», Красноярск 2023

12.

Скрипты
2
1
ligarobotov.ru
© Федеральная сеть секций робототехники «Лига Роботов», Красноярск 2023

13.

Скрипты
Библиотеки
Класс
Методы
ligarobotov.ru
© Федеральная сеть секций робототехники «Лига Роботов», Красноярск 2023
Start – выполняется при
запуске скрипта
Update – выполняется
циклично, каждый кадр
FixedUpdate –
выполнятся циклично, в
определенные
промежутки времени

14.

Fixed Timestep
ligarobotov.ru
© Федеральная сеть секций робототехники «Лига Роботов», Красноярск 2023

15.

Задание 1
Создайте скрипт и назовите его «CircleController»
На кнопу «A» движется влево, на кнопку «D» - вправо.
Создайте переменную и присвойте ей значение
Transform игрового объекта.
Используйте для этого условный оператор if, а также
Input.GetKey(), GetComponent<Transform>().
ligarobotov.ru
© Федеральная сеть секций робототехники «Лига Роботов», Красноярск 2023

16.

Ответ
Вместо Vector3.right можно
использовать transform.right.
Vector3.right – это вектор,
направленный вправо
относительно глобальной
системы координат
transform.right – это вектор,
направленный вправо
относительно локальной системы
координат
ligarobotov.ru
© Федеральная сеть секций робототехники «Лига Роботов», Красноярск 2023

17.

Задание 2
Сделать то же самое, используя Rigidbody2D.AddForce()
Также сделать прыжок на клавишу Space.
Создайте переменную
В методе Start():
Напоминание:
_rb.AddForce(Vector3.направление * скорость)
ligarobotov.ru
© Федеральная сеть секций робототехники «Лига Роботов», Красноярск 2023

18.

Ответ
Теперь добавьте возможность изменить
скорость в редакторе.
Используйте модификатор public или
[SerializeField]
ligarobotov.ru
© Федеральная сеть секций робототехники «Лига Роботов», Красноярск 2023

19.

Ответ
Скрипт:
ligarobotov.ru
Редактор:
© Федеральная сеть секций робототехники «Лига Роботов», Красноярск 2023

20.

Задание 3
1. Создайте новый слой и назовите его
«Ground»
2. Выберите платформу и поставьте на
нее этот слой
3. Создайте две переменные
4. Используя данный метод, сделайте
ограниченное количество прыжков
Замечание: Для проверки слоя, с которым сопрекоснулся круг, можно сравнить его
номер (Если User Layer 3, то его номер равен 3)
ligarobotov.ru
© Федеральная сеть секций робототехники «Лига Роботов», Красноярск 2023

21.

Ответ
ligarobotov.ru
© Федеральная сеть секций робототехники «Лига Роботов», Красноярск 2023

22.

Задание 4
Создайте скрипт CameraController.
В нем создайте метод Move, который принимает float _deltaTime (это и
есть переменная времени).
Внутри мы присваиваем значению transform.position данную формулу.
Vector3.Lerp (координаты камеры, точка наблюдения + смещение, время * сглаживание);
При этом не забудте объявить нужные переменные.
В методе FixedUpdate вызовите этот метод, передавая в него
Time.fixedDeltaTime.
ligarobotov.ru
© Федеральная сеть секций робототехники «Лига Роботов», Красноярск 2023

23.

Ответ
ligarobotov.ru
© Федеральная сеть секций робототехники «Лига Роботов», Красноярск 2023

24.

Итоги занятия
1.
2.
3.
4.
5.
ligarobotov.ru
Геймдизайн
Игровые художники
Звуковой дизайн
Повторение
Плавное движение камеры
© Федеральная сеть секций робототехники «Лига Роботов», Красноярск 2023

25.

Рефлексия
ligarobotov.ru
© Федеральная сеть секций робототехники «Лига Роботов», Красноярск 2023

26.

ligarobotov.ru
© Федеральная сеть секций робототехники «Лига Роботов», Красноярск 2023
English     Русский Rules