GDScript курс для новичков

Godot 4.6.2 + GDScript

GDScript курс

Начни с установки Godot, короткого введения, переменных и операторов, а потом переходи к узлам Godot, вводу игрока и движению персонажа.

Старт

Что есть на сайте

01

База языка

Введение, первый вывод в консоль, переменные, математические операторы, сравнение и логика.

02

Практика

В каждом уроке есть маленькие задания и интерактивный блок для проверки идеи.

03

Переход к Godot

После основ языка курс будет двигаться к узлам, сценам, вводу и 3D-персонажу.

Уроки

Изучение GDscript

Урок 1

Введение

GDScript, .gd файл, Node, структура скрипта, отступы, комментарии и print().

Урок 2

Привет, мир

Первый вывод текста в консоль Godot через print().

Урок 3

Переменные и значения

Переменные, значения, const, область видимости и null.

Урок 4

Типы данных

int, float, bool, String, Array, Dictionary, Vector2, Vector3, Color, Object, Variant.

Урок 5

Типизация

Динамическая и статическая типизация, типы переменных и функций, преобразование типов.

Урок 6

Математические операторы

Сложение, вычитание, умножение, деление, остаток и скобки.

Урок 7

Операторы присваивания

Как записывать и изменять значения в переменных.

Урок 8

Операторы сравнения

Равно, не равно, больше, меньше и результат true/false.

Урок 9

Логические операторы

and, or, not и соединение условий.

Урок 10

Конкатенация

Склейка текста через + и преобразование значений через str().

Урок 11

Условия

if, elif, else, вложенные проверки, null, тернарный оператор и match.

Урок 12

Циклы

while, for, range(), перебор массива и словаря, break, continue, вложенные циклы.

Урок 13

Функции

Создание функций, аргументы, return, void, типизация и рекурсия.

Урок 14

Массивы

Создание и изменение массивов, индексы, перебор, вложенные и типизированные массивы.

Урок 15

Словари

Создание словарей, работа с ключами и значениями, перебор, вложенные и типизированные словари.

Урок 16

Классы и объекты

Скрипт как класс, class_name, .new(), поля и методы, self, _init(), внутренние классы и ссылки.

Урок 17

Наследование

extends, родительский и дочерний классы, переопределение, super и композиция.

Урок 18

Свойства

Обычные свойства, set/get, проверка в сеттере, вычисляемые свойства и приватность через _.

Урок 19

Аннотации

Основные аннотации GDScript: export-типы, onready, tool, warning_ignore и rpc.

Урок 20

Сигналы

signal, подключение/отключение, emit() и ожидание сигнала через await.

Урок 21

Await и асинхронность

await, ожидание сигнала и таймера, приостановка/продолжение функции и асинхронная логика.

Урок 22

Callable и функции как значения

Callable, передача функции как значения, call(), callv(), лямбда и анонимные функции.

Урок 23

Статические элементы

static var, static func, статические данные, статические методы и правила применения static.

Урок 24

Ошибки и проверки

Ошибки синтаксиса, типизации, отступов и null; проверки через assert/is_instance_valid и сообщения об ошибках.

Урок 25

Встроенные функции GDScript

print-группа, len/range, проверка типов, загрузка ресурсов и сериализация Variant в строку/байты.

Урок 26

Память и ссылки

Значения, ссылки, копии и жизненный цикл объекта в памяти GDScript.

Урок 27

Документирование

Комментарии, doc-комментарии ##, описание API скрипта и служебные теги документации.

Урок 28

Стиль кода

Порядок в файле, единое именование, форматирование и читаемость кода.

Урок 29

Продвинутый уровень языка

Лямбды/Callable в системах, state machine, Event Bus, компонентность и оптимизация кода.

Сайт находится в активной разработке и наполнении контента.

Тема 2

Изучение документации Godot и GDScript

Урок 1

Основы работы с Godot-сценой

Сцены, Node, дерево сцены, add_child(), queue_free(), PackedScene, instantiate(), смена и перезагрузка сцен.

Урок 2

Создание 3D-персонажа

Структура персонажа, CharacterBody3D, гравитация, прыжок, ходьба, поворот, бег, ускорение и замедление.

Урок 3

Камера от третьего лица

RPG/MMO-камера: обзор мышью, ЛКМ/ПКМ режимы, zoom, плавность и защита от прохождения камеры сквозь стены.

Урок 4

Input и управление

InputMap, действия RPG, keyboard + mouse, проверки pressed/just_pressed/just_released и разделение персонажа/камеры.

Урок 5

Анимации персонажа

Idle/Walk/Run/Jump/Attack/Death, AnimationPlayer, AnimationTree, State Machine, blend и синхронизация с движением.

Урок 6

Окружение и мир

Земля, Terrain/Terrain3D, материалы, текстуры, вода, небо, туман, дальность прорисовки и оптимизация локации.

Урок 7

Освещение и атмосфера

Directional/Omni/Spot light, WorldEnvironment, день/ночь, тени, туман, glow, tonemap и стиль RPG как в WoW.

Урок 8

Интерактивные объекты

Area3D, вход/выход игрока из зоны, “Нажмите E”, предметы, сундуки, двери, NPC, ресурсы и сигналы интерактива.

Урок 9

Простая система здоровья

HP-компонент: урон, лечение, смерть, возрождение, полосы здоровья и сигналы для игрока и врагов.

Урок 10

Простая боевая система

Мelee-атака, дальность, проверка цели, урон, крит, броня, уворот, эффекты, смерть врага, опыт и лут.