Unity 3D: Создаем игрока в игре (Урок 8)

Этот урок завершает работу над 3D-проектом, добавляя в игру основного игрока. Дополнительная информация, включая код и домашние задания, доступна на сайте it-prager.com (ссылка в описании).

Изменения в игровом мире

Внесены следующие изменения:

  • Скайбокс: Заменён на «sun set 2» из Asset Store.
  • Туман: Используется эффект «Exponential» с плотностью 0.1. Цвет и насыщенность скорректированы (настройки на вкладке Lighting).
  • Освещение: Цвет основного источника света изменён на более синий. Изменения освещения, тумана и скайбокса создают атмосферу рассвета (или заката, в зависимости от настроек).

Добавление основного игрока

Для добавления игрока используется готовый функционал из Asset Store, так как данный курс не охватывает программирование. Использование готовых решений для создания простого 3D-персонажа или персонажа от первого лица эффективнее самостоятельной разработки, за исключением случаев нестандартной механики передвижения.

Скачивание и импорт First Person Controller

В Asset Store находим пакет «first person controller». Для урока используется бесплатный вариант. Он содержит капсулу, камеру на уровне глаз и базовый функционал для передвижения, прыжков, приближения и отдаления. Пакет импортируется в Unity.

Работа с префабами

Пакет содержит два префаба:

  1. Префаб с минимальным функционалом (только передвижение).
  2. Префаб с полным набором возможностей (прыжки, вращение, проверка столкновений с землёй).

Используется второй префаб, который перетаскивается в сцену. Наличие камеры внутри префаба («First Person Camera») может вызвать проблемы с перемещением. Для работы с несколькими камерами указываем разные Target Display (например, 1 и 2). В данном случае используется одна камера (Target Display 1), вторая удаляется.

Тестирование игрока

После размещения игрока и запуска проверяем функционал: вращение камеры, передвижение, прыжки. Механика реализована с помощью скриптов на C#.

Анализ скриптов

First Person Controller использует стандартные компоненты: Capsule Collider и Rigidbody, а также три пользовательских скрипта (C#). Подробное изучение скриптов рекомендуется после прохождения курса по C# и Unity. Цель этого урока – изучение механики движка и основного функционала Unity.

В этом уроке реализован основной игрок с базовым функционалом. Хотя код не писался, главная цель – создание 3D-игры – достигнута. В игру можно добавить объекты и врагов, используя готовый функционал из Asset Store. Игра содержит карту, тени, атмосферу и другие необходимые элементы.

Что будем искать? Например,программа