Рабочая программа «Разработка компьютерных игр на движке Godot Engine» Проект "Arkanoid" Часть 2
2. Создание тележки (игрок)Игра у нас будет двухмерной, потому сразу перейдем в 2D. В качестве ракетки у нас будет тележка, которая будет двигаться вперед или назад, в зависимости от игрока. Мы используем текущую сцену для создание тележки игрока. Так как нам нужно динамическое тело, а не статическое, ты мы первым узлом выберем «Другой узел» из представленных наших узлов. Выберем узел «KinematicBody2D», как мы помним это кинематическое тело может взаимодействовать с физическими телами. ![]() Переименуйте его в «Player». Прошлый раз для ракетки в проекте «Понг» мы использовали узел спрайта «Sprite», но на этот раз мы воспользуемся другим узлом, который позволит нам анимировать нашу тележку. Давайте прикрепим наш новый узел, начните набирать такие слова «Anim…». Нам понадобиться узел под названием «AnimatedSprite» ![]() AnimatedSprite похож на узел Sprite, за исключением того, что он содержит несколько текстур в виде кадров анимации. Анимации создаются с использованием ресурса SpriteFrames, который позволяет импортировать файлы изображений (или папку, содержащую указанные файлы), чтобы предоставить кадры анимации для спрайта. В инспекторе мы создадим новый ресурс под названием «SpriteFrames», что позволит использовать кадры спрайта. ![]() Кликните по созданному «SpriteFrames» еще раз. И вы попадете в спрайт кадры, окошка с настройками будущих кадров анимации. ![]() В окне «Анимации» есть по умолчанию (default) анимация. Здесь так же можно создавать и другие анимации, кликая по значку бумаги с плюсиком. В окне кадры анимации будут отображаться будущие кадры спрайтов. Так же мы можем задавать скорость проигрывание анимации. Что же давайте добавим спрайт анимации тележки. У нас есть спрайт лист из двух кадров тележки под названием «sp_paddle_strip2.png», расположенный в нашем наборе в папке «paddle». Вот его и возьмем. ![]() Нажмем на кнопку похожий на решетку в «кадре анимации» ![]() Далее мы попадем в корневую папку нашего проекта, переходим в Assets/paddle/ и находим наш файл «sp_paddle_strip2.png». Открываем его. ![]() Далее нам открывается еще одно окошко, здесь мы должны разбить по кадрам наш будущую анимацию. ![]() Если картинка выглядит слишком мелкой, вы можете увеличить её нажимая на плюсик. Так как кадры у нас идут по горизонтали, и их только два кадра, то в опции по горизонтали выставим двоечку, а по вертикали всего единицу. Тем самым мы разрезали кадры в нужных пропорциях. ![]() Далее нам нужно будет выбрать эти кадры, кликните по ним. ![]() И нажмите кнопку «Добавить кадров: 2» ![]() Наш спрайт выглядит размазано, это потому что мы импортировали без пиксель пресета (особая настройка для загрузки пиксель стилей спрайты). Исправим это. Перейдите к файловой системе, раскройте набор спрайтов, найдите файл нашей тележки «sp_paddle_strip2.png», кликните по нему один раз и после в дереве сцен перейдите в вкладку «Импорт». ![]() Во вкладке «Пресет» выберете «2D Pixel» ![]() После переимпортируйте спрайт и вас сразу увидите изменения нашей пиксельной тележки ![]() Вернемся к нашей сцене с узлом «AnimatedSprite». В инспекторе есть опция, которая позволит запустить нашу анимацию тележки, кликните по опции «Playing» ![]() И вы увидите анимацию нашей тележки, также заметите как сменяются индексация кадров в опции «Frame». Как вы могли заметить отчет анимации идет не с единицы, а с нуля, а второй кадр — это единица. Вы можете подкорректировать скорость анимации тележки если захотите. Я поставлю скорость 7 кадров в секунду. ![]() Далее давайте сохраним нашу сцену игрока. Нажмите «Сцена» - «Сохранить сцену как» ![]() Создайте в папку «Player» и сохраните сцену там как вам подсказывает Годот. ![]() Как вы можете заметить у узла «Player» справа в дереве сцен есть восклицательный знак в желтом треугольники, а так как мы используем физическое тело узла «KinematicBody2D», то мы должны придать форму столкновений. С предыдущего проекта вспоминаем, за форму столкновения в 2D-направления существует два узла «CollisionShape2D» и «CollisionPolygon2D». Первый узел придает форму из готовых геометрических фигур, второй узле придает форму столкновению по вашему желанию, как вы выстроите. ![]() Но мы воспользуемся готовыми вариантами, прикрепим к нашему игроку форму столкновения узел «CollisionShape2D» ![]() И мы снова видим восклицательный знак только теперь у нашей формы столкновения, Godot подсказывает нам выбрать форму в опции «Shape» в инспекторе. Обычно для формы мы брали прямоугольник или круг, но на этот раз мы возьмем овал, он же «CapsuleShape2D». ![]() Все что теперь нам нужно сделать это настроить наш овал столкновения используя красные точки, или же можно точно настроить в инспекторе, кликнув еще раз по форме, по овалу (откроются параметры формы). ![]() Давайте повернем нашу фигуру на 90 градусов в опции «Transform» - «Rotation Degrees». А радиус будет 8 единицам, высота сделаем 20. И сместим вверх на -1 по оси Y. ![]() | |
| |
Просмотров: 18 | |
Всего комментариев: 0 | |
| |