Геймдев и графика

Учебник Разработка игр на Unity для начинающих

22 урока · 6 разделов · бесплатно, без регистрации

Полный практический курс по Unity — самому популярному игровому движку для новичков и инди-разработчиков. Ты пройдёшь путь от пустой сцены до собранной игры: разберёшься в редакторе, поймёшь систему GameObject + компоненты, научишься писать скрипты на C# через MonoBehaviour, освоишь физику и коллизии, новый Input System, UI и звук, а в финале соберёшь билд под Windows, Web и Android.

Курс собран на актуальной Unity 6 (2023 LTS+) с новым Input System и URP. Игровая логика (движение, коллизии, здоровье, состояние врага) дублируется запускаемыми примерами на Python прямо в браузере — чтобы ты понимал суть, а не зубрил синтаксис.

Курс «Разработка игр на Unity» состоит из 6 разделов и 22 уроков: Знакомство с Unity и редактором, GameObject и компоненты, Скрипты на C# и MonoBehaviour, Физика и коллизии, Ввод, UI и звук и Собираем игру и сборка. Уроки идут по порядку — от основ к более сложным темам, в каждом есть объяснение с примерами, а в конце — вопросы для самопроверки. К урокам привязаны задачи с автоматической проверкой: прочитали тему — сразу закрепили её кодом.

Программа курса

  1. 1 Знакомство с Unity и редактором

    1. Что такое игровой движок и зачем нужен Unity

      Игровой движок как набор готовых систем: графика, физика, звук, ввод. Почему Unity — лучший старт для новичка в геймдеве.

    2. Установка Unity Hub и создание первого проекта

      Unity Hub, выбор LTS-версии движка, шаблоны 2D/3D, URP. Как создать проект и не утонуть в настройках.

    3. Окна редактора: Scene, Game, Hierarchy, Inspector

      Главные окна Unity: Scene View, Game View, Hierarchy, Project, Inspector, Console. Что где находится и зачем.

    4. Сцена, камера и первый объект на экране

      Что такое сцена в Unity, роль камеры, мировые координаты, создание первого 2D-объекта (спрайта) и запуск игры.

  2. 2 GameObject и компоненты

    1. GameObject как контейнер, компоненты как кубики

      Композиция вместо наследования: GameObject — пустой контейнер, компоненты добавляют ему поведение. Архитектура Entity-Component.

    2. Transform: позиция, поворот, масштаб и иерархия

      Компонент Transform: position, rotation, scale, локальные и мировые координаты, родитель-ребёнок, как наследуется трансформация.

    3. Префабы: переиспользуемые шаблоны объектов

      Префаб (Prefab) как шаблон GameObject, инстансы, изменение префаба и распространение правок, вложенные префабы и варианты.

    4. Теги, слои и поиск объектов

      Теги (Tag) для пометки объектов, слои (Layer) для физики и рендера, поиск объектов: FindWithTag, ссылки через Inspector.

  3. 3 Скрипты на C# и MonoBehaviour

    1. Первый скрипт: MonoBehaviour как компонент

      Создание C#-скрипта, класс наследует MonoBehaviour, скрипт как компонент на объекте, Debug.Log, связь файла и класса.

    2. Жизненный цикл: Awake, Start, Update, FixedUpdate

      Жизненный цикл MonoBehaviour: Awake, OnEnable, Start, Update, FixedUpdate, LateUpdate. Порядок вызовов и для чего каждый метод.

    3. Поля в Inspector и публичные переменные

      public и SerializeField, настройка переменных через Inspector без перекомпиляции, [Header], [Range], ссылки на компоненты.

    4. Движение объекта через код и Time.deltaTime

      Перемещение объекта через transform.Translate и position, зачем Time.deltaTime, нормализация направления, вектор движения.

  4. 4 Физика и коллизии

    1. Rigidbody2D: гравитация и движение по физике

      Rigidbody2D, типы тел Dynamic/Kinematic/Static, gravityScale, velocity, AddForce, почему физику двигают в FixedUpdate.

    2. Коллайдеры и форма столкновений

      Collider2D: BoxCollider2D, CircleCollider2D, PolygonCollider2D, форма столкновения, AABB, почему коллайдер не обязан совпадать со спрайтом.

    3. Столкновения и триггеры: OnCollision и OnTrigger

      Разница между столкновением и триггером, IsTrigger, OnCollisionEnter2D, OnTriggerEnter2D, обработка событий, монеты и урон.

  5. 5 Ввод, UI и звук

    1. Новый Input System: чтение управления

      Новый Input System Unity 6 vs старый Input Manager, Input Actions, чтение клавиатуры и геймпада, привязки, абстракция ввода.

    2. UI: Canvas, текст, кнопки и счёт на экране

      UI в Unity: Canvas, RectTransform, Text/TextMeshPro, Button, привязка счёта и здоровья, обновление интерфейса из скрипта.

    3. Звук: AudioSource, AudioClip и музыка

      Звук в Unity: AudioSource и AudioClip, PlayOneShot для эффектов, фоновая музыка с loop, громкость, 2D vs 3D звук.

  6. 6 Собираем игру и сборка

    1. Поведение врага: конечный автомат (FSM)

      Конечный автомат состояний для ИИ врага: Idle, Patrol, Chase, Attack, переходы по условиям, паттерн state machine в Unity.

    2. Здоровье, урон и инвентарь

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

    3. Менеджеры, сцены и переходы между уровнями

      GameManager и синглтон, хранение счёта и состояния игры, загрузка сцен SceneManager.LoadScene, переходы между уровнями, DontDestroyOnLoad.

    4. Сборка билда: Windows, WebGL и Android

      Сборка игры в Unity: Build Settings, выбор платформы Windows/WebGL/Android, Player Settings, иконка и имя, оптимизация и публикация билда.