Слайд 2
![НАСТРОЙКА ПРОТИВНИКА Переходим на сайт Mixamo, и скачиваем несколько моделей](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-1.jpg)
НАСТРОЙКА ПРОТИВНИКА
Переходим на сайт Mixamo, и скачиваем несколько моделей противников. Лучше
всего брать зомби, он более менее адаптирован для работы с нашим проектом. На нем мы потренируемся
Слайд 3
![НАСТРОЙКА ПРОТИВНИКА Как только залогинимся, нам сразу же предстанет окно выбора](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-2.jpg)
НАСТРОЙКА ПРОТИВНИКА
Как только залогинимся, нам сразу же предстанет окно выбора
Слайд 4
![НАСТРОЙКА ПРОТИВНИКА](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-3.jpg)
Слайд 5
![НАСТРОЙКА ПРОТИВНИКА](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-4.jpg)
Слайд 6
![НАСТРОЙКА ПРОТИВНИКА](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-5.jpg)
Слайд 7
![НАСТРОЙКА ПРОТИВНИКА](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-6.jpg)
Слайд 8
![НАСТРОЙКА ПРОТИВНИКА](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-7.jpg)
Слайд 9
![НАСТРОЙКА ПРОТИВНИКА](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-8.jpg)
Слайд 10
![НАСТРОЙКА ПРОТИВНИКА](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-9.jpg)
Слайд 11
![НАСТРОЙКА ПРОТИВНИКА](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-10.jpg)
Слайд 12
![НАСТРОЙКА ПРОТИВНИКА](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-11.jpg)
Слайд 13
![НАСТРОЙКА ПРОТИВНИКА Переносим все, что скачали, в папку Prefabs. На появившееся сообщение нажимаем Fix Now](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-12.jpg)
НАСТРОЙКА ПРОТИВНИКА
Переносим все, что скачали, в папку Prefabs. На появившееся сообщение
нажимаем Fix Now
Слайд 14
![НАСТРОЙКА ПРОТИВНИКА Далее создаем папку Animation, заходим в prefabs, куда](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-13.jpg)
НАСТРОЙКА ПРОТИВНИКА
Далее создаем папку Animation, заходим в prefabs, куда закидывали наши
анимации, выделяем через CTRL нужные анимации (idle, running, attack) и нажимаем CTRL + D. Все остальное из оставшегося - удаляем
Слайд 15
![НАСТРОЙКА ПРОТИВНИКА](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-14.jpg)
Слайд 16
![С ПРОШЛОГО ЗАНЯТИЯ – ОСТАНОВИЛИСЬ НА АНИМАЦИИ](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-15.jpg)
С ПРОШЛОГО ЗАНЯТИЯ – ОСТАНОВИЛИСЬ НА АНИМАЦИИ
Слайд 17
![С ПРОШЛОГО ЗАНЯТИЯ – ОСТАНОВИЛИСЬ НА АНИМАЦИИ](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-16.jpg)
С ПРОШЛОГО ЗАНЯТИЯ – ОСТАНОВИЛИСЬ НА АНИМАЦИИ
Слайд 18
![НАСТРОЙКА ПРОТИВНИКА Не забываем параметр Contrains настраивать по часовой и против часовой стрелки](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-17.jpg)
НАСТРОЙКА ПРОТИВНИКА
Не забываем параметр Contrains настраивать по часовой и против часовой
стрелки
Слайд 19
![С ПРОШЛОГО ЗАНЯТИЯ – ОСТАНОВИЛИСЬ НА АНИМАЦИИ](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-18.jpg)
С ПРОШЛОГО ЗАНЯТИЯ – ОСТАНОВИЛИСЬ НА АНИМАЦИИ
Слайд 20
![С ПРОШЛОГО ЗАНЯТИЯ – ОСТАНОВИЛИСЬ НА АНИМАЦИИ](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-19.jpg)
С ПРОШЛОГО ЗАНЯТИЯ – ОСТАНОВИЛИСЬ НА АНИМАЦИИ
Слайд 21
![С ПРОШЛОГО ЗАНЯТИЯ – ОСТАНОВИЛИСЬ НА АНИМАЦИИ](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-20.jpg)
С ПРОШЛОГО ЗАНЯТИЯ – ОСТАНОВИЛИСЬ НА АНИМАЦИИ
Слайд 22
![С ПРОШЛОГО ЗАНЯТИЯ – ОСТАНОВИЛИСЬ НА АНИМАЦИИ](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-21.jpg)
С ПРОШЛОГО ЗАНЯТИЯ – ОСТАНОВИЛИСЬ НА АНИМАЦИИ
Слайд 23
![С ПРОШЛОГО ЗАНЯТИЯ – ОСТАНОВИЛИСЬ НА АНИМАЦИИ](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-22.jpg)
С ПРОШЛОГО ЗАНЯТИЯ – ОСТАНОВИЛИСЬ НА АНИМАЦИИ
Слайд 24
![С ПРОШЛОГО ЗАНЯТИЯ – ОСТАНОВИЛИСЬ НА АНИМАЦИИ](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-23.jpg)
С ПРОШЛОГО ЗАНЯТИЯ – ОСТАНОВИЛИСЬ НА АНИМАЦИИ
Слайд 25
![НАСТРОЙКА ПРОТИВНИКА Убираем галку Has Exit Time – для прерывания анимации в любое время](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-24.jpg)
НАСТРОЙКА ПРОТИВНИКА
Убираем галку Has Exit Time – для прерывания анимации в
любое время
Слайд 26
![КОД ДЛЯ АНИМАЦИИ ВРАГА Создаем новый скрипт, вешаем на врага и открываем в вижуал студио](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-25.jpg)
КОД ДЛЯ АНИМАЦИИ ВРАГА
Создаем новый скрипт, вешаем на врага и открываем
в вижуал студио
Слайд 27
![](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-26.jpg)
Слайд 28
![](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-27.jpg)
Слайд 29
![КОД ДЛЯ АНИМАЦИИ ВРАГА Не забываем настроить Loop Time в каждой из анимаций!](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-28.jpg)
КОД ДЛЯ АНИМАЦИИ ВРАГА
Не забываем настроить Loop Time в каждой из
анимаций!
Слайд 30
![СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ После того, как мы с вами](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-29.jpg)
СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ
После того, как мы с вами создали анимацию,
необходимо будет заскриптовать врага на отъём жизни, а также создать возможность нанести ответный урон
Слайд 31
![СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ Вначале создадим полосу жизни самому врагу,](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-30.jpg)
СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ
Вначале создадим полосу жизни самому врагу, поскольку нам
будет необходимо отнимать жизни в обе стороны.
Слайд 32
![СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-31.jpg)
СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ
Слайд 33
![СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-32.jpg)
СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ
Слайд 34
![СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ Уменьшаем примерно до вот такого размера](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-33.jpg)
СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ
Уменьшаем примерно до вот такого размера
Слайд 35
![СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ Mesh фильтр и mesh renderer куба сразу же удалим](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-34.jpg)
СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ
Mesh фильтр и mesh renderer куба сразу же
удалим
Слайд 36
![СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ Ставим галочку «IsTrigger» нашему BoxCollider, выберем иконку кубу и выключим данный объект](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-35.jpg)
СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ
Ставим галочку «IsTrigger» нашему BoxCollider, выберем иконку кубу
и выключим данный объект
Слайд 37
![СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-36.jpg)
СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ
Слайд 38
![СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-37.jpg)
СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ
Слайд 39
![СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-38.jpg)
СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ
Слайд 40
![СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-39.jpg)
СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ
Слайд 41
![СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-40.jpg)
СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ
Слайд 42
![СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-41.jpg)
СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ
Слайд 43
![СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-42.jpg)
СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ
Слайд 44
![СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-43.jpg)
СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ
Слайд 45
![СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-44.jpg)
СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ
Слайд 46
![СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-45.jpg)
СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ
Слайд 47
![СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ Переходим на слайдер и выбиваем максимальное](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-46.jpg)
СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ
Переходим на слайдер и выбиваем максимальное значение в
блоке slider в инспекторе. Сразу поменяется полоска жизни.
Слайд 48
![СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-47.jpg)
СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ
Слайд 49
![СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ 1 2 3 4](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-48.jpg)
СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ
1
2
3
4
Слайд 50
![СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ Создаем скрипт LevelHealth, именно так, с](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-49.jpg)
СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ
Создаем скрипт LevelHealth, именно так, с большой буквы,
иначе будут сложности, синтаксис C# он такой. И открываем его в VisualStudio
Слайд 51
![СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-50.jpg)
СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ
Слайд 52
![СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ После чего поставим следующие блоки в настройки скрипта](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-51.jpg)
СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ
После чего поставим следующие блоки в настройки скрипта
Слайд 53
![СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ Создаем новый скрипт в папке Scripts,](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-52.jpg)
СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ
Создаем новый скрипт в папке Scripts, называем Damage
(урон) и переходим в Visual Studio. Как вы понимаете, будем использовать максимально простой метод – OnTriggerEnter, через теги.
Слайд 54
![СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-53.jpg)
СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ
Слайд 55
![СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ Перетягиваем на наш куб, называем его](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-54.jpg)
СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ
Перетягиваем на наш куб, называем его Damage. Проверяем.
Если все верно – урон получает враг.
Безусловно, тут не очень с логикой. Ведь при ударе урон должны получать мы. Однако все дело в том, что у нас уже есть своя система получения урона, поэтому предлагаю немного уравновесить шансы. Открываем для правки скрипт HPBar. И допишем в нем строчку для получения урона при соприкосновении с врагом.
Слайд 56
![СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-55.jpg)
СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ
Слайд 57
![СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-56.jpg)
СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ
Слайд 58
![СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-57.jpg)
СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ
Слайд 59
![СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-58.jpg)
СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ
Слайд 60
![СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-59.jpg)
СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ
Слайд 61
![СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ Теперь выгребаем и мы и персонаж.](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-60.jpg)
СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ
Теперь выгребаем и мы и персонаж. Однако мы
с вами просто касаемся персонажа, а я предлагаю вам добавить ещё и оружия, которое мы с вами настроим уже на следующем занятии.
Слайд 62
![СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/81232/slide-61.jpg)
СКРИПТИНГ ПОСЛЕ СОЗДАНИЯ АНИМАЦИИ