2D Рабочий процесс создания игры
Перед тем, как создать 2D игру, вы должны определиться с игровой перспективой и художественным стилем.
Чтобы создать игру 2D, создайте свой проект Unity и затем ознакомьтесь с соответствующими концепциями в следующем порядке:
Основы
GameObjects являются основополагающими объектами Unity которые представляют персонажей, реквизит, пейзаж, и больше. Каждый объект в вашей игре является GameObject.
GameObjects представляют предметы в вашей игре; пространство, в котором вы помещаете их, чтобы построить свой уровень, называется сцена. Сцены в Unity всегда являются 3D; когда вы создаете игру 2D в Unity, вы обычно выбираете игнорировать третье измерение (ось z), но вы также можете использовать его в особых случаях, например, при создании 2.5D игр.
Поведение GameObjects определяется блоками функциональности, называемыми компонентами. Следующие компоненты являются фундаментальными для 2D игр:
- Transform: компонент Transform определяет Положение, Вращение и Масштаб каждого GameObject в сцене. Каждый GameObject имеет компонент Transform.
- Спрайт-рендер: компонент Sprite Renderer рендирует Sprite и контролирует, как он выглядит в сцене.
- Камера: устройства, которые захватывают и отображают мир игроку. Camera как Орфографические убирает все перспективы из CameraЭто в основном полезно для создания изометрических или 2D игры.
- Collider 2D: этот компонент определяет форму 2D GameObject для целей физических столкновений. См. 2D Физика.
Компоненты являются UI представлениями классов C#; вы можете использовать скрипты для изменения и взаимодействия с компонентами или создания новых. Подробнее см. в разделе Сценарии.
Скрипт
Все игры 2D требуют сценариев. Скрипты реагируют на ввод от игрока и организуют события в игре, чтобы они происходили, когда они должны.
Подробную информацию об использовании скриптов в Unity см. в Обзор сценариев. Также см. курс Unity Learn Сценарии для начинающих.
Скрипты прикрепляются к GameObjects, и любой созданный вами скрипт наследует от MonoBehaviour class.
Спрайты
Спрайты являются 2D графическими объектами. Вы используете Спрайты для всех типов 2D игр. Например, вы можете импортировать изображение вашего главного персонажа в качестве Спрайта.
Вы также можете использовать коллекцию Sprites для создания персонажа. Это позволяет вам больше контроля над движением и анимацией ваших персонажей.
Импорт и настройка спрайтов
Импортируйте свои спрайты с рекомендуемыми настройками Unity; см. Импорт и настройка спрайтов.
Отображение спрайтов
Используйте компонент Спрайт-рендер для рендеринга Sprites. Например, вы можете использовать Sprite Renderer для изменения цвета и прозрачности Sprite.
См. Введение в рендерер спрайтов Учебник. Сортировка SpritesBy Организовывая спрайты в слои, вы можете создать иллюзию глубины. Вы можете сортировать спрайты по многим стратегиям. См. Сортировка спрайтов для полной информации. Например, вы можете сортировать спрайты вдоль оси y, так что спрайты, которые находятся выше, сортируются позади ниже расположенных спрайтов, чтобы высшие спрайты выглядели дальше, чем низшие.
Для установки порядка наложения спрайтов используйте Сортировка слоев.
Чтобы группировать GameObjects с Sprite Renderersи управлять порядком, в котором они рендируют свои Sprites, используйте Sorting Groups.
Атлас Спрайта
Вы можете использовать Атлас Спрайта Это оптимизирует вашу игру и экономит память. Например, вы можете добавить все ваши спрайты, связанные с определенным персонажем или целью, в Атлас спрайтов.
См. Введение в учебный курс Sprite Atlas Learn.
Создание игровой среды
Дизайн окружения относится к процессу создания уровней и окружений вашей игры. Вы можете комбинировать инструменты дизайна окружения в этом разделе таким образом, который имеет наибольший смысл для вашей игры; например, вы можете создать игру сверху вниз, используя только 9-слой, или вы можете создать платформер с помощью Tilemap и SpriteShape.
9-разрезная
9-разрезание — это техника 2D, которая позволяет повторно использовать изображение различных размеров без необходимости подготовки нескольких элементов. Unity может динамически растянуть и покрыть плиткой определенные части спрайта, чтобы один спрайт служил в качестве границы или фона для UI элементов многих размеров. См. 9-разрезание спрайтов.
Например, вы можете использовать 9-слитинг для растяжения спрайта в форму, когда вы строите уровень 2D.
См. Использование 9-Slicing для масштабируемых спрайтов Учебник.
Карта плиток
Компонент Карта плиток представляет собой систему, которая хранит и обрабатывает ассеты Tile для создания двумерных уровней. Для работы с Tilemap используйте пакет 2D Редактор карт (установлен по умолчанию).
Например, вы можете использовать Tilemaps для рисования уровней с помощью инструментов плитки и кисти и определять правила поведения плитки.
См. Введение в Tilemaps Учебник.
2D Tilemap Дополнительное
Чтобы добавить некоторые дополнительные ресурсы Tilemap к вашему Project, установите пакет 2D Tilemap Дополнительное. Этот пакет содержит многоразовые сценарии 2D и Tilemap Editor, которые вы можете использовать для своих собственных проектов. Вы можете настроить поведение сценариев для создания новых кистей, которые подходят для различных сценариев.
Изометрические карты
Для игр с изометрической перспективой вы можете создать Изометрические карты.
SpriteShape
Аналогично инструменту векторного рисования, SpriteShape обеспечивает более гибкий способ создания более крупных спрайтов, таких как органически выглядящие пейзажи и пути. См. Sprite Shape Profile.
См. урок Работа с SpriteShape.
Анимация персонажа
Существует три различных способа, которыми вы можете анимировать персонажей 2D:
| 2D тип анимации | Используется для |
|---|---|
| Кадр за кадром | Художественные причины, если вы хотите, чтобы ваша игра имела классический стиль анимации. Покадровая анимация относительно ресурсоемка, как для создания, так и для запуска. |
| Вырезка | Гладкая скелетная анимация, когда персонажи не требуют реалистичной артикуляции. |
| Скелет | Гладкая скелетная анимация, где спрайты изгибаются в соответствии с костной структурой. Используйте это, когда персонажи нуждаются в более органическом ощущении. |
Кадр за кадром
Анимация кадр за кадром основана на традиционной технике cel-анимации рисования каждого момента анимации как отдельных изображений, которые воспроизводятся в быстрой последовательности, как переворачивание страниц в флипбуке.
Для получения информации, см. Sprite Swap в руководстве по пакету 2D Animation.
См. Введение в анимации Sprite Учебник.
Вырезка
В анимации вырезки, несколько Sprites составляют тело персонажа, и каждая часть движется, чтобы дать визуальный эффект движения всего персонажа. Этот стиль анимации похож на скелетную анимацию (см. ниже), за исключением того, что Sprites не изгибаются.
Скелет
С помощью скелетной анимации вы отображаете спрайта или группу спрайтов на скелет анимации. Вы можете создать и определить анимационные кости для персонажей и объектов, которые определяют, как они должны изгибаться и двигаться. Этот подход позволяет костям изгибать и деформировать спрайты, для более естественного стиля движения. Чтобы использовать скелетную анимацию, вам нужно использовать пакет 2D Animation (установленный по умолчанию).
Для рабочего процесса 2D Animation, включая руководство по работе с редактором Bone, см. документацию 2D Animation.
Графика
В этом разделе описываются графические возможности 2D URP, доступные при использовании Universal Render Pipeline (URP).
Освещение
Потому что вы используете URP с 2D Рендерер, вы можете использовать Свет 2D компонент для применения оптимизированы 2D освещения к спрайтам. Для подробностей см. Введение в свет 2D.
См. Освещение в URP Учебник.
Тени
Чтобы определить форму и свойства, которые использует Свет для определения теней, которые он бросает, используйте компонент Shadow Caster 2D.
Улучшенный вид и ощущение
Системы частиц и последующая обработка являются дополнительными инструментами, которые вы можете использовать, чтобы добавить полировки к вашей игре.
Системы частиц
Вы можете использовать системы частиц для создания динамических объектов, таких как огонь, дым или жидкости, в качестве альтернативы использованию Sprite. Sprites больше подходят для физических объектов. См. Системы частиц.
Последующая обработка
Вы можете использовать эффекты последующей обработки и эффекты полноэкранного режима для значительного улучшения внешнего вида вашей игры. Например, вы можете использовать эти эффекты для имитации физических свойств камеры или пленки или для создания стилизованных визуальных эффектов.
URP имеет собственную реализацию пост-обработки. См. Post-processing в Universal Render Pipeline.
Физика 2D
Настройки Физики 2D определяют пределы точности физических моделей в вашей 2D игре. См. 2D Физика.
Это видео содержит обзор 2D физические особенности в Unity 2020.1.
Чтобы узнать, как использовать движок двухмерной физики Unity, ознакомьтесь с учебным руководством 2D Physics Learn.
Следующие 2D инструменты физики полезны для 2D игр.
Rigidbody 2D
Компонент Rigidbody 2D помещает GameObject под управление физики. См. Rigidbody 2D.
Collider 2D
Компоненты Collider 2D определяют форму 2D GameObject для целей физических столкновений. Вы также можете использовать компоненты Collider 2D для обнаружения ввода. Например, в мобильных играх вы можете использовать их, чтобы сделать Спрайты выбираемыми.
Типы Collider 2D, которые можно использовать с Rigidbody 2D:
- Круг Collider 2D
- Коробка Collider 2D
- Полигон Collider 2D
- Край Collider 2D
- Капсула Collider 2D
- Композитный Collider 2D
Триггеры
Когда вы установите Collider 2D в качестве Триггера (включая его Это триггер свойство), он больше не ведет себя как физический объект, и может пересекать другие коллайдеры, не вызывая столкновения. Вместо этого, когда Collider входит в свое пространство, Unity вызывает OnTriggerEnter функция на триггере GameObjectСценарии.
2D Соединения
Соединения соединяют GameObjects вместе. Вы можете присоединять только соединения 2D к GameObjects, к которому прикреплен компонент Rigidbody 2D, или к фиксированной позиции в мировом пространстве. См. 2D Соединения.
2D Эффекторы
Используйте Эффектор 2D компоненты с Collider 2D компонентами для направления сил физики в вашей сцене, когда GameObject Коллайдеры вступают в контакт друг с другом. См. 2D Эффекторы.
Аудио
Вы можете добавить фоновую музыку и звуковые эффекты к вашей игре в Unity; см. Аудио обзор. Используйте стороннее программное обеспечение для создания аудио и импортировать его в Unity с рекомендуемыми настройками.
Пользовательский интерфейс
Если вы хотите добавить меню или справку к вашей игре, вам нужно настроить пользовательский интерфейс. Чтобы настроить пользовательский интерфейс, используйте Unity UI.
Доступность
Охватите более широкую аудиторию игроков, сделав свою игру доступной для людей всех способностей. См. Доступность для руководства.
Профилирование, оптимизация и тестирование сборки
Профилирование
Профилирование позволяет вам увидеть, насколько ресурсоемки различные части вашей игры. Вы всегда должны профилировать свою игру на платформе, на которой она будет выпущена; см. Профилирование приложения.
Испытания
Проверьте свою игру и код с помощью Unity Test Framework; см. Unity Испытательная база.
Издательство
Когда вы закончите свою игру, вы готовы опубликовать ее. См. Публикация сборок.