При перемещении KinematicBody вы используете методы move_and_collide() или move_and_slide(). Эти методы перемещают тело вдоль заданного вектора и мгновенно останавливаются, если обнаружено столкновение с другим телом. После столкновения KinematicBody любая реакция на столкновение должна быть закодирована вручную. Примечание: кинематическое движение тела должно быть сделано только в _physics_process() ,хотя я описывал движение кинематического тела. move_and_collide Этот метод принимает один параметр: Vector, указывающий на относительное движение тела...
В прошлый раз мы рассмотрели механику бега и выносливости в нашей 3D-игре на движке Godot Engine. В этой статье мы погрузимся в механику приседания, а так же рассмотрим один возможный баг с коллизией. Сначала нам нужно добавить клавишу для приседания в Input Map: Теперь перейдем в наш главный скрипт "Player Controller" и объявим там несколько переменных: isCrouching, crouch_speed, height_normal и height_crouch: Теперь давайте создадим функцию crouch(), в которой будет содержаться основная...