В прошлом уроке я рассказал про логические операции и передвижение объектов. Сегодня будет урок про коллизии.
Коллизии в играх - это столкновение объектов. Например, когда вы не можете пройти сквозь стену или погибаете, когда вас бьет враг, это работа коллизий.
Понимать принцип работы коллизий в Godot очень важно. В этом уроке будет только вводная информация по этой теме.
У нас уже есть один объект со своим спрайтом. Для того чтобы работать с коллизиями необходимо добавить этому объекту узел CollisionShape2D.
Далее в инспекторе выбираем форму.
И регулируем ее размер.
Это позволит нам работать с коллизиями. Должно быть несложно, теперь мы должны разобраться со слоями и масками.
Выбираем KinematicBody2D и открываем вкладку Collision в CollisionObject2D.
Layer - слой (или несколько слоев), к которому относится объект.
Mask - слой (или несколько слоев), с которыми взаимодействует объект.
Когда у вас на сцене несколько разных объектов, настраивать коллизии, ориентируясь на номера слоев, очень сложно. Открываем Настройки проекта >> Основное >> Layer Names >> 2D Physics. Здесь можно присвоить каждому слою имя, это значительно облегчает работу.
Понимания форм коллизий и слоев хватит, для того чтобы реализовать простые столкновения в своей игре, дальше все зависит от ваших целей. Возможно в будущем я соберусь и напишу полноценную статью о всех случаях столкновений. В будущем. Когда-нибудь.
Не понравилась статья? Поделись своими эмоциями в комментариях и будущие статьи будут чуть лучше!