Уроки Godot Engine

#2 – Создание 2D платформера в Godot

#2 – Создание 2D платформера в Godot

В ходе большой лекции мы с вами разработаем полноценные 2Д проект. Мы создадим игру платформер. В игре будет главный игрок, платформы и механика для прыжков и передвижения.

Видеоурок

Полезные ссылки:


Разработка 2Д игры на Godot

Для игры вам потребуется всего пару картинок. Вы можете их скачать ниже:




Скачивание и установка

Скачивание и установка движка – проста и удобна. Вам необходимо зайти на официальный сайт, перейти на вкладку «Download» и далее скачать «Standart Verison» под вашу операционную систему. После скачивания нажмите на скачанный файл и далее вы сможете мгновенно очутиться на главном экране движка.

Чтобы создать новый проект вы можете нажать на соответствующую кнопку или же можете создать проект на основе одного из готовых шаблонов.

Материалы для курса

Чтобы скачивать материалы к видеокурсам необходимо оформить подписку на сайт

Исходный код

Передвижение игрока
extends KinematicBody2D

var speed = 15
var jumpForce = 400
var gravity = 400

var vel = Vector2()

onready var imagePlayer = get_node("player")

func _physics_process(delta):
	if Input.is_action_pressed("player_left"):
		vel.x -= speed
	elif Input.is_action_pressed("player_right"):
		vel.x += speed
	
	vel.y += gravity * delta
	
	if Input.is_action_pressed("player_jump") and is_on_floor():
		vel.y -= jumpForce
		
	vel = move_and_slide(vel, Vector2.UP)
	
	if vel.x < 0:
		imagePlayer.flip_h = true
	elif vel.x > 0:
		imagePlayer.flip_h = false

Задание к уроку

Необходимо оформить подписку на проект, чтобы получить доступ ко всем домашним заданиям

Также стоит посмотреть

Разработка Android программы. Создание чата
6 уроков
MERN Stack / Разработка веб-приложения
9 уроков
Изучение C# и создание Windows программ
Уроки Node JS и Express для начинающих
13 уроков
Нейронные сети / Изучение Python OpenCV
9 уроков
Уроки Qt Creator | Графический интерфейс на С++
13 уроков
Комментарии (3)
Добавить комментарий

P1YT 17 ноября 2023 в 12:08

if Input.is_action_pressed("player_left"):
vel.x -= speed
elif Input.is_action_pressed("player_right"):
vel.x += speed

Выше написанный код некорректный от слова совсем!!! ВЫ ОБУЧАЕТЕ НОВИЧКОВ!!!
Код получше:

var input_dir := Vector2.ZERO
input_dir.x = int(Input.is_action_pressed("player_right")) - int(Input.is_action_pressed("player_left")))

vel.x = input_dir.x * speed_move
Ответить

Виктр 29 октября 2023 в 18:58

vel = move_and_slide(vel, Vector2.UP)

if vel.x < 0:
imagePlayer.flip_h = true
elif vel.x > 0:
imagePlayer.flip_h = false

Эти строки выдают красный и не дают запустить
Ответить

крыс 18 августа 2023 в 16:59

спасибо за это, очень мило, что вы делаете эти бесплатные уроки
Ответить