Система частиц
Компонент Particle System имитирует жидкие субстанции наподобие разных жидкостей, облаков и чего-нибудь связанного с огнём путём генерации и анимации в сцене большого количества небольших 2D изображений. Для более подробного введения в системы частиц и того как их можно использовать, ознакомьтесь со страницей документации.
Свойства
Компонент Particle System имеет множество настроек и для удобства, инспектор упорядочивает их в сворачиваемые секции или “модули” описываемые ниже. Каждая секция может быть развёрнута и свёрнута при нажатии на заголовок. С левой стороны расположены чекбоксы, которые можно отмечать для включения или отключения тех или иных настроек. Например, если вы не хотите менять размер частиц во время их излучения, вы можете просто снять галочку с параметра Size over lifetime.
Помимо модулей, в инспекторе есть ещё несколько других элементов управления. Кнопка Open Editor отображает опции в отдельном окне редактора, которое также позволяет вам редактировать одновременно несколько систем. А чекбокс Resimulate отвечает за то, будут или не будут тут же применяться изменения свойств к только что созданным системой частицам (в качестве альтернативы существующие частицы будут исчезать, так как они будут единственными новыми частицами, свойства которых были изменены). Кнопка Wireframe отображает контуры меш объектов, чтобы показать находящиеся за ними частицы.
Visual Effect Graph
Узловая архитектура и адаптивные функции Visual Effect Graph дают возможность создавать красивые визуальные эффекты в реальном времени: от голограмм в научно-фантастических вселенных до огнедышащих драконов или капель дождя на стеклах.
Real-time VFX
This visual node-based solution enables you to design visual effects, from simple common particle behaviors to complex simulations running on the GPU.
Create procedural effects without code
Inspired by leading film tools, VFX Graph combines blocks, nodes, and sequencers to help you author more powerful visual effects.
- Visual authoring
- Simulate millions of particles
- Advanced rendering
- Powerful particle shaders
- Dynamic and interactive particles
- Optimized performance
- A powerful toolchain
- Production-proven tools
Visual authoring
VFX Graph uses a mix of flow- (vertical) and node- (horizontal) based authoring. Flow authoring assembles building blocks for spawning, initialization, update, and rendering stages on which a combination of nodes can be plugged to create advanced procedural effects. Node Search, Sticky Notes, and Subgraphs allow you to build and organize your effects efficiently. With the Blackboard VFX Graphs utility panel, you can expose properties so other users like artists or game designers can customize effects to their needs.
Author particle shaders using Unity’s node-based tool Shader Graph, and sequence multiple effects together or events within an effect using VFX Graph integration with Timeline.
V Rising by Stunlock Studios
Simulate millions of particles
Leverage GPU power to emit and simulate millions of particles in real-time.
Emit particles from points (for example fireworks), shapes (dust in a room), 2D or 3D textures, surfaces like static and skinned meshes, or signed distance fields (a character turning into sand), point caches, camera buffers (a dissolving world), or structured buffers to sample custom data like statistics or your own simulation.
Each spawner can control time, loop, and delay to spawn particles a set number of times with predetermined intervals and durations, and be updated using various forces or turbulence systems to generate lifelike systems.
Система частиц в Unity для факела
Частицы также придают достоверность игровым сценам. Они могут стать основой ревущего костра или световых эффектов заклинаний волшебника. Кроие того, они могут быть использованы для создания дыма, пыли, взрывов и даже радуги!
По существу, частицы представляют собой небольшие, простые картинки или меши, которые испускаются, а затем манипулируются системой частиц в течение их жизни.
Unity позволяет легко создавать системы частиц. Unity использует мощную модулярную встроенную систему частиц под названием Shuriken, , которую нетрудно выучить, и которая позволяет создавать сложные эффекты.
В этом уроке вы узнаете следующее:
- Как добавить новую систему частиц в Unity.
- Что делают наиболее часто используемые модули систем частиц, а также то, как их использовать.
Начало работы с частицами в Unity
Скачайте стартовый проект и распакуйте в удобном месте. Вы будете использовать его в качестве отправной точки.
Этот учебник состоит из двух основных частей; в первой, вы будете создавать пламя для факела, а во второй — эффект взрыва бомбы.
Откройте Starter Project в Unity с рассортированными внутри по следующим папкам ассетами:
Materials Содержит материал огня. Models Содержит модели факела и бомбы и их материалы. Prefabs префаб бомбы. Scenes Содержит сцены с факелом и бомбой. Scripts Содержит скрипты. Textures Содержит текстуру для огня.
Добавление системы частиц
Система частиц излучает частицы в случайным образом в пределах заранее определенного пространства, которое может иметь форму шара или конуса. Система определяет срок службы самой частицы и, по истечении этого времени жизни, разрушает частицу. Приятной особенностью систем частиц является то, что они являются компонентами, которые можно добавить к любому игровому объекту (GameObject) в сцене.
Откройте сцену Torch а окне Project и запустите сцену:
Мы видим фонарь, висящий на стене, но никакого огня нет. Для начала нам нужно добавить систему частиц. Выберите TorchFireParticles в Иерархии. Внутри Инспектора нажмите на кнопку Add Component, найдите Particle System и нажмите кнопку, чтобы добавить ее:
Возможно, вы заметили, что мы не не добавили систему частиц непосредственно к игровому объекту факела. Это происходит потому, что частицы будут излучается из середины факела, а не из топливного контейнера в верхней части.
Запустите сцену и вы увидите, что у вас есть излучающиеся частицы:
Правда, то, что мы сейчас видим, не похоже огонь, но мы исправим это в ближайшее время. Пока что вам необходимо понять текущее состояние системы частиц и как изменить его.
При выборе игрового объекта (GameObject) с прикрепленной системой частиц, вы увидите черное диалоговое окно в правом нижнем углу окна Сцены (Scene view). Этот диалоговое окно дает возможность моделировать или остановить систему частиц. Щелчок на кнопке Simulate (Смоделировать) активизирует вашу систему частиц и изменит кнопку на кнопку Pause (Пауза). Чтобы остановить моделирование, нажмите на кнопку Stop (Стоп).
Этот диалог полезен для проектирования систем частиц, которые работают на фиксированной временной шкале, например, взрывы.
Пристальный взгляд на систему частиц
Взгляните на вкладку Инспектор и Вы заметите, что в ней появился компонент системы частиц, который имеет несколько подразделов:
Каждый из этих подразделов называется Модулем. Эти модули содержат параметры для системы частиц. Модуль, открывающийся по умолчанию – модуль Main module:
Главный модуль — основа любой системы частиц в Unity. Наиболее распространенные параметры частиц:
Duration Продолжительность времени, в течении которого будет работать система. Оставьте значение по умолчанию, равное 5.00 . Looping
Если включена, система начнет свою работу в месте завершения своего duration цикла и начнет всё заново.
Огонь должен гореть непрерывно, поэтому оставим включенной.
Prewarm Если включена, система будет инициализирована так, будто она уже прошла через весь цикл своей работы. Работает только когда Looping также включено.
Для нашего пламени оставим его выключенным, чтобы факел выглядел только что зажженным.
Start Delay Задержка в секундах до запуска системы излучения частиц после ее включения. Оставьте значение по умолчанию, равное 0 . Start Lifetime
Начальная продолжительность жизни частиц.
Установите продолжительность равной 1.2 секунд, чтобы пламя не было слишком высоким.
Начальная скорость каждой частицы в соответствующем ей направлении. Чем больше скорость частиц, тем больше распространение они получат.
Установите скорость равной 0.75 . Это сделает пламя более плотным.
При изменении параметров системы частиц, вы увидите предварительный просмотр в окне игры. Поэкспериментируйте со значениями по своему усмотрению, чтобы узнать о том, как каждая настройка влияет на вашу систему.
Получившийся спецэффект выглядит довольно круто, но напоминает скорее пар, дым, но никак не огонь. Уже сейчас вы можете порадоваться своим успехам, но приготовьтесь к следующей партии настроек основного модуля! :]
Дополнительные свойства основного модуля
Вы настроили факел, но эффект огня по-прежнему оставляет желать лучшего. К счастью, главный модуль имеет дополнительные возможности для дальнейшей коррекции формы и поведения вашего факела.
Выберите игровой объект TorchFireParticles в Иерархии и прокрутите вниз до системы частиц, если она еще не открыта. Взглянитена следующие свойства под Main Module (Главный модуль):
Начальный размер каждой частицы.
Установите размер частицы 0.25 ; это управляемый размер, который позволяет увидеть отдельные частицы более четко.
Начальный угол поворота каждой частицы.
Сделайте начальный угол поворота равным 0° , поскольку нашу частицы имеют круглую форму, так что вы вряд ли заметите разницу.
Начальный цвет каждой частицы. Оставьте текущий белый цвет, поскольку вы будете окрашивать огонь с помощью текстуры.
Масштабирование значения гравитации в менеджере физики (physics manager). Значение равное 0 приведет к отключению гравитации.
Изображение выше взято из системы со значением Модификатора Гравитации, равным 1 , благодаря которому частицы летят вниз как вода в водопаде. Оставим этот параметр на 0 ; частицы будут двигаться вверх со скоростью, заданной в Start Speed.
Запускает частицы с той же самой скоростью velocity что и система частиц. Работает только тогда, когда к системе частиц добавлен Rigidbody.
Оставьте Inherit Velocity равной 0 , поскольку для создания эффекта огня она нам не понадобится.
Указывает относительно какой из систем координат (с.к.) должны начать свое движение частицы? Локальной (и как следствие двигаться вместе с самими объектом) или мировой?
Выберите Local Space (Локальная система координат). Эффект будет заметен только приперемещении системы частиц.
Play On Awake Начинает ли система свою работу автоматически в момент создания объекта? Max Particles
Максимальное количество частиц одновременно находящихся в системе. Старые частицы будут удалены, когда будет достигнут предел их жизненного цикла. Этот параметр используется в основном для повышения производительности. Значение по умолчанию, равное 1000 , — более чем достаточно в нашем случае.
Это был довольно внушительный список, но в результате вы узнали, как добавить систему частиц к сцене и как настроить ее по своему вкусу. Запустите сцену еще раз, чтобы увидеть эффект от внесенных изменений:
Выглядит все больше и больше похоже на огонь, правда? Нужно добавить больше частиц, а для этого надо редактировать модуль emission of the system.
Введение в модуль Emission (Emission Module)
Модуль Emission является одним из наиболее важных модулей в системах частиц Unity. Он обрабатывает число и время излучения частиц в системе, чтобы создать непрерывный поток или внезапный выброс частиц в зависимости от ваших потребностей. Находясь в Инспекторе Системы частиц, щелкните по заголовку Emission:
Вкладка модуля раскроется и даст нам возможность задать значения:
Rate представляет собой количество частиц излученных за единицу времени (Time), или пройденного пути (Distance). Вы можете переключаться между этими двумя режимами, щелкнув на поле со списком и выбрая нужный режим:
Оставьте настройки в Time и измените Rate на 50 . Запустите сцену снова:
Мы по-прежнему видим нечто похожее на дым. Но, без паники, нам на помощь приходят пользовательские текстуры!
Добавление пользовательских текстур
Все частицы имеют материал и текстуру, которые определяют их вид. Есть много вариантов, что можно сделать со стандартной текстурой. Измененяя текстуры, вы можете создавать такие эффекты, как волшебные звезды, дым и, конечно же, огонь.
Изменять текстуру частиц довольно легко. До сих пор, частицы были нарисованы на экране с помощью материала Default-Particle который является материалом частиц с круговой градиентной текстурой:
Чтобы изменить материал, выберите игровой объект TorchFireParticles внутри Иерарархии. Затем найдите компонент системы частиц в Инспекторе, и откройте модуль Renderer системы частиц.
Откройте папку Materials в окне проекта и перетащите FireMaterial Material в свойство Material:
Теперь запустите сцену, чтобы увидеть вашу пользовательскую текстуру в действии:
Уже теплее, хотя, на мой взгляд, пламя слишком широкое. Чтобы исправить это, нам придется изменить форму системы частиц.
Изменение формы системы частиц
Модуль Shape, как следует из названия, управляет формой и поведением частиц в этой форме. Вы можете выбрать одну из нескольких различных форм, каждая из которой имеет свои собственные специфические настройки. Это позволяет создать частицы в «ящике», сфере или вообще в чем угодно другом.!
Разверните модуль Shape в Инспекторе:
Форма shape вашей системы частиц установлена как конусообразная (cone), что означает, что частицы появляются у основания (base) и двигаются с заданным углом (angle).
В приведенном выше примере, основание окрашено в синий цвет, угол – зеленый, а частицы – красные. Обратите также внимание на то, что пока у вас открыт модуль форм (Shape Module), вам доступен удобный предпросмотр создаваемого конуса:
Изменение угла Angle изменяет и размер конуса, делая его шире или уже. Установите его значение равным 10 и вы получите хороший плотный огонь, который слегка расширяется по мере роста частицы.
Изменение радиуса Radius изменяет размер основания; чем выше значение, тем больше частицы будут разбрасываться с появлением. Установите это значение в 0.2 ; это обеспечит то, что огонь будет исходить из нужного места на факеле.
Запустите вашу сцену и посмотрите, как изменилась форма пламени:
Это уже больше похоже на настоящий огонь! Завершающим штрихом является изменение размера частиц в течение их жизни.
Изменение размера со временем
С помощью модуля Size over Lifetime вы можете создавать частицы, которые уменьшаются или увеличиваются в течение их жизни, или даже пульсируют как светлячки в лесу.
Найдите Size over Lifetime в списке модулей систем частиц. В отличие от предыдущих модулей, он по умолчанию отключен. Нажмите на флажок рядом с именем модуля, чтобы включить его:
Откройте модуль Size over Lifetime, кликнув по его названию. Откроется темно-серое окошко с плоской линией наверху:
Кликните на темно-серый фон, чтобы открыть редактор кривых в нижней части инспектора. На горизонтальной оси показана жизнь частицы, в то время как вертикальная ось отображает ее размеры:
Вы можете перемещать ключи на обоих концах красной линии для редактирования кривой. Вы также можете добавить дополнительные ключи, дважды щелкнув в любом месте на кривой. Чтобы удалить ключи, щелкните правой кнопкой мыши на ключ, чтобы удалить и выберите Delete Key.
Вы можете также выбрать одну из предустановленных кривых в нижней части:
Чтобы сделать огонь более похожим на настоящий, выберите третью справа преднастройку, чтобы создать линию, идущую вниз:
Запустите сцену, чтобы увидеть свой эффект во всей своей огненной славе!
Если вы работали в основной форме с Animations, давайте теперь посмотрим, как можно создать реалистичные дрожащие тени! Как создать дрожащие тени? Очень просто:
- Отключите Directional Light (Направленный свет) в Иерархии.
- Добавьте Point Light (Точечный свет) к центру частиц пламени (0, 0, 4) .
- Сделайте Color (Цвет) слегка оранжевым (HEX-значение FFC68AFF).
- Установите Range (Диапазон) в 50 .
- Установите Intensity (Интенсивность) в 3 .
- Добавьте Animation и сохраните ее где-нибудь в папке Assets.
- Присвойте анимацию Animation, которую вы только что создали, к Point Light.
- Откройте Animation Window.
- Выберите Point Light (Точечный свет).
- Установите Shadow Type в Hard Shadows .
- Установите Samples в 50 .
- Через каждые несколько кадров добавляйте ключевой кадр keyframe и слегка двигайте Point Light (точечный свет) по осям X и Y. Нет никаких стандартов и норм, просто попытайтесь подобрать максимально реалистичные параметры.
- Запустите сцену.
Вот, что примерно должно получиться:
Мои поздравления! Вы узнали как создать новую систему частиц и подчинили ее своей воле, делавв красивый эффект пылающего огня в факеле. Сделайте перерыв, а затем вернитесь, чтобы научиться создавать эффекты взрыва в Unity!
Создание 2D-игры
Прежде чем создавать 2D-игру, необходимо определиться с перспективой игры и художественным стилем.
Чтобы создать 2D-игру, настройте свой проект Unity, а затем ознакомьтесь с соответствующими понятиями в следующем порядке:
- Основы
- Сценарии
- Спрайты Двумерные графические объекты. Если вы привыкли работать в 3D, спрайты — это, по сути, просто стандартные текстуры, но есть специальные приемы комбинирования текстур спрайтов и управления ими для повышения эффективности и удобства во время разработки. Подробнее
См. в Словарь - Создание игровой среды
- Анимация персонажей
- Графика
- Физика 2D
- Аудио
- Пользовательский интерфейс
- Профилирование, оптимизация и тестирование
- Публикация
Основы
Игровые объекты Фундаментальный объект в сценах Unity, который может представлять персонажей, реквизит , пейзажи, камеры, путевые точки и многое другое. Функциональность GameObject определяется прикрепленными к нему компонентами. Подробнее
См. в Словарь — это основные объекты в Unity, представляющие персонажей, реквизит, декорации, и более. Каждый объект в вашей игре является GameObject.
GameObjects представляют элементы в вашей игре; пространство, в котором вы размещаете их для создания уровня, называется сценой Сцена содержит окружение и меню вашей игры. Думайте о каждом уникальном файле сцены как об уникальном уровне. В каждой сцене вы размещаете свое окружение, препятствия и декорации, по сути проектируя и создавая свою игру по частям. Подробнее
См. в Словарь . Сцены в Unity всегда 3D; когда вы создаете 2D-игру в Unity, вы обычно предпочитаете игнорировать третье измерение (ось Z), но вы также можете использовать его в особых случаях, например при создании 2,5D-игр.
Поведение GameObjects определяется функциональными блоками, называемыми компонентами. Следующие компоненты имеют основополагающее значение для 2D-игр:
- Transform: компонент Transform компонент Transform определяет положение, вращение и масштаб каждого объекта в сцене. Каждый GameObject имеет Transform. Подробнее
См. в Словарь определяет положение, вращение и масштаб каждого игрового объекта в сцена. У каждого GameObject есть компонент Transform. - Визуализатор спрайтов Компонент, позволяющий отображать изображения как спрайты для использования как в 2D, так и в 3D сценах. Подробнее
См. в Словаре : компонент Sprite Renderer визуализирует Sprite и управляет его внешним видом. в сцене. - Камеры Компонент, создающий изображение конкретная точка зрения в вашей сцене. Вывод либо рисуется на экране, либо фиксируется в виде текстуры. Подробнее
См. в Словарь : устройства, которые захватывают и отображают мир для игрока. Пометка камеры как ортогональная удаляет всю перспективу из вида камеры. В основном это полезно для создания изометрических или 2D-игр. - 2D-коллайдер: этот компонент определяет форму 2D-игрового объекта для физических столкновений. Столкновение происходит, когда физический движок обнаруживает, что коллайдеры двух игровых объектов соприкасаются или перекрываются, когда хотя бы один из них имеет компонент Rigidbody и находится в движении. Подробнее
См. в Словарь . См. раздел 2D-физика.
Компоненты представляют собой UI (пользовательский интерфейс). Позволяет пользователю взаимодействовать с вашим приложением. В настоящее время Unity поддерживает три системы пользовательского интерфейса. Подробнее
Смотреть в Словарь представления классов C#; вы можете использовать сценарии для изменения и взаимодействия с компонентами или для создания новых. Дополнительную информацию см. в разделе Сценарии.
Сценарий
Все 2D-игры нуждаются в скриптах фрагменте кода, позволяющем создавать ваши собственные Компоненты, запускайте игровые события, изменяйте свойства Компонентов с течением времени и реагируйте на ввод данных пользователем любым удобным для вас способом. Подробнее
См. в Словарь . Скрипты реагируют на действия игрока и организуют события в игровом процессе, когда они должны происходить.
Подробнее об использовании сценариев в Unity см. Обзор сценариев. Также см. курс Unity Learn Скрипты для начинающих.
Сценарии присоединяются к GameObjects, и любой создаваемый вами сценарий наследуется от класса MonoBehaviour.
Спрайты
Спрайты – это двухмерные графические объекты. Вы используете спрайты для всех типов 2D-игр. Например, вы можете импортировать изображение своего главного героя в виде спрайта.
Вы также можете использовать набор спрайтов для создания персонажа. Это позволяет вам лучше контролировать движение и анимацию ваших персонажей.
Importing and setting up Sprites
Импортируйте свои спрайты с рекомендуемыми настройками Unity; см. Импорт и настройка спрайтов.
Визуализация спрайтов
Используйте компонент Sprite Renderer для визуализации спрайтов. Например, вы можете использовать средство визуализации спрайтов, чтобы изменить цвет и прозрачность спрайта.
См. руководство по изучению Sprite Renderer. . Сортировка спрайтов. Организуя спрайты слоями, вы можете создать иллюзию глубины. Вы можете сортировать спрайты по множеству стратегий. Подробнее см. в разделе Сортировка спрайтов. Например, вы можете отсортировать спрайты по оси Y, чтобы спрайты, находящиеся выше, сортировались позади спрайтов, находящихся ниже, чтобы спрайты, находящиеся выше, отображались дальше, чем спрайты, находящиеся ниже.
Чтобы задать порядок наложения спрайтов, используйте Слои сортировки.
Чтобы группировать игровые объекты с помощью модулей визуализации спрайтов и управлять порядком, в котором они отображают свои спрайты, используйте группы сортировки.
Атлас спрайтов
Вы можете использовать Атлас спрайтов текстуру, состоящую из несколько небольших текстур. Также называется атласом текстуры, спрайтом изображения, листом спрайта или упакованной текстурой. Подробнее
См. в Словарь объединение нескольких текстур в одну комбинированную текстуру. Это оптимизирует вашу игру и экономит память. Например, вы можете добавить все свои спрайты, связанные с определенным персонажем или целью, в атлас спрайтов.
Создание игрового окружения
Дизайн окружения — это процесс создания игровых уровней и окружения. Вы можете комбинировать инструменты дизайна окружения в этом разделе так, как это лучше всего подходит для вашей игры; например, вы можете создать игру с видом сверху, используя только 9 фрагментов, или вы можете создать сайд-платформер с помощью Tilemap и SpriteShape.
9-нарезка
9-slicing – это двухмерная технология, позволяющая повторно использовать изображение разных размеров без необходимости подготовки нескольких ресурсов. Unity может динамически растягивать и размещать определенные части спрайта, чтобы один спрайт мог служить границей или фоном для элементов пользовательского интерфейса разных размеров. См. спрайты, разделенные на 9 частей.
Например, вы можете использовать 9-срезы, чтобы растянуть спрайт до нужной формы при создании 2D-уровня.
Карта листов
Игровой объект Tilemap GameObject, позволяющий быстро создавать двухмерные уровни с использованием тайлов и наложения сетки. Подробнее
Компонент See in Словарь представляет собой систему, которая хранит и обрабатывает активы Tile для создания 2D уровни. Используйте пакет 2D Tilemap Editor (устанавливается по умолчанию), чтобы использовать Tilemaps.
Например, карты листов можно использовать для рисования уровней с помощью плиток и инструментов кисти, а также для определения правил поведения плиток.
Дополнительные возможности 2D-карты листов
Чтобы добавить в проект дополнительные ресурсы Tilemap, установите 2D Tilemap Extras. Этот пакет содержит повторно используемые сценарии 2D и Tilemap Editor, которые вы можете использовать для своих собственных проектов. Вы можете настроить поведение скриптов для создания новых кистей, подходящих для разных сценариев.
Изометрические тайловые карты
Для игр с изометрической перспективой можно создавать изометрические карты листов.
Форма спрайта
Подобно инструменту векторного рисования, SpriteShape обеспечивает более гибкий способ создания более крупных спрайтов, таких как ландшафты и дорожки, выглядящие органично. См. профиль формы спрайта.
Анимация персонажей
Существует три различных способа анимации 2D-персонажей:
Тип 2D-анимации | Используется для |
---|---|
Frame-by-frame | Художественные причины, если вы хотите, чтобы ваша игра имела классический анимационный стиль. Покадровая анимация относительно ресурсоемка как для создания, так и для запуска. |
Cutout | Плавная скелетная анимация, когда персонажи не требуют реалистичной артикуляции. |
Skeletal | Плавная скелетная анимация, где спрайты изгибаются в соответствии со структурой костей. Используйте это, когда персонажи нуждаются в более органичном ощущении. |
Покадрово
Покадровая анимация основана на традиционной технике целл-анимации, при которой каждый момент анимации прорисовывается как отдельные изображения, которые воспроизводятся в быстрой последовательности, как перелистывание страниц в флипбуке.
Чтобы выполнить покадровую анимацию, следуйте Рабочий процесс покадровой анимации.
Вырез
В вырезной анимации несколько спрайтов составляют тело персонажа, и каждая часть движется, создавая визуальный эффект движения всего персонажа. Этот стиль анимации похож на скелетную анимацию (см. ниже), за исключением того, что спрайты не изгибаются.
Скелет
С помощью скелетной анимации вы сопоставляете спрайт или группу спрайтов со скелетом анимации. Вы можете создавать и определять кости анимации для персонажей и объектов, которые определяют, как они должны изгибаться и двигаться. Такой подход позволяет костям сгибаться и деформировать спрайты для более естественного стиля движения. Чтобы использовать скелетную анимацию, вам необходимо использовать пакет 2D Animation (установлен по умолчанию).
Для рабочего процесса 2D-анимации, включая руководство по работе с редактором костей, см. Документация по 2D-анимации.
Графика
В этом разделе описываются параметры графики при использовании универсального конвейера рендеринга серии операций, которые берут содержимое сцены и отображает их на экране. Unity позволяет вам выбирать из готовых конвейеров рендеринга или писать свои собственные. Подробнее
См. в Словарь (URP).
Освещение
Поскольку вы используете URP с 2D-рендерером, вы можете использовать компонент Light 2D для применения оптимизированного 2D-освещения к спрайтам. Подробнее см. в Введение в источники света. 2D.
Чтобы настроить освещение:
- Подготовьте спрайты к освещению. Подробнее см. в разделе Подготовка спрайтов к освещению .
- Настройка карты нормалей Тип текстуры карты рельефа, который позволяет добавлять детали поверхности, такие как неровности, канавки и царапины на модели, которые отражают свет, как если бы они были представлены реальной геометрией.
Смотрите в Словарь и маскируйте текстуры. 2D Lights может взаимодействовать с картой нормалей и маскировать текстуры, связанные со спрайтами, для создания расширенных эффектов освещения, таких как наложение нормалей . См. раздел Настройка карты нормалей и текстур маски . - Создать игровой объект 2D Light; см. Свойства 2D-освещения.
- Настройте ресурс данных 2D-рендерера; см. Настройка объекта 2D-рендерера.
- (необязательно), если вы хотите применить эффекты 2D-освещения к пикселю наименьшей единице компьютерного изображения. Размер пикселя зависит от разрешения вашего экрана. Пиксельное освещение рассчитывается для каждого пикселя экрана. Подробнее
См. в Словарь арт-игре, см. 2D Pixel Perfect.
Тени
Чтобы определить форму и свойства, которые источник света использует для определения отбрасываемых им теней, используйте 2D-компонент Shadow Caster. Увеличьте интенсивность тени источника света выше нуля.
Улучшенный внешний вид
Системы частиц и постобработка Процесс, улучшающий внешний вид продукта за счет применения фильтров и эффектов до того, как изображение появится на экране. Вы можете использовать эффекты постобработки для имитации физических свойств камеры и пленки, например Bloom и Depth of Field. Дополнительная информация
См. в Словарь дополнительные инструменты, которые можно использовать для придания блеска ваша игра.
Системы частиц
Вы можете использовать системы частиц для создания динамических объектов, таких как огонь, дым или жидкости, в качестве альтернативы использованию спрайтов. Спрайты больше подходят для физических объектов. См. раздел Системы частиц Компонент, моделирующий текучие объекты, такие как жидкости, облака и пламя, с помощью создание и анимация большого количества небольших 2D-изображений в сцене. Подробнее
См. в Словарь .
Постобработка
Вы можете использовать эффекты постобработки и полноэкранные эффекты, чтобы значительно улучшить внешний вид вашей игры. Например, вы можете использовать эти эффекты для имитации физических свойств камеры или пленки или для создания стилизованных визуальных эффектов.
Физика 2D
Настройки Physics 2D определяют пределы точности физической симуляции в вашей 2D-игре. См. раздел 2D-физика.
В этом видео представлен обзор функций 2D-физики в Unity 2020.1. .
Чтобы узнать, как использовать двухмерный физический движок Unity систему, которая имитирует аспекты физических систем, чтобы объекты могли правильно ускоряться и подвергаться воздействию столкновений, гравитации и других сил. Подробнее
См. в Словарь , см. Учебное пособие по физике 2D.
Следующие инструменты 2D-физики полезны для 2D-игр.
Жесткое тело 2D
Жесткое тело Компонент, позволяющий воздействовать на игровой объект смоделированной гравитацией и другими силами. Подробнее
См. в Словарь 2D-компонент помещает GameObject под контроль физического движка. См. раздел Rigidbody 2D.
2D-коллайдер
Компоненты 2D-коллайдера определяют форму 2D-игрового объекта для физических столкновений. Вы также можете использовать Collider невидимую форму, которая используется для обработки физических столкновений объекта. Коллайдер не обязательно должен быть точно такой же формы, как сетка объекта — грубое приближение часто бывает более эффективным и неразличимым в игровом процессе. Подробнее
См. в Словарь 2D-компоненты для обнаружения ввода. Например, в мобильных играх вы можете использовать их для выбора спрайтов.
Типы Collider 2D, которые можно использовать с Rigidbody 2D:
- Circle Collider 2D
- Box Collider 2D
- Polygon Collider 2D
- Edge Collider 2D
- Capsule Collider 2D
- Composite Collider 2D
Triggers
Когда вы устанавливаете 2D-коллайдер в качестве триггера (включив его свойство Is Trigger), он больше не ведет себя как физический объект и может пересекаться с другими коллайдерами, не вызывая столкновения. Вместо этого, когда коллайдер входит в свое пространство, Unity вызывает функцию OnTriggerEnter в скриптах Trigger GameObject.
2D Joints
Соединения соединяют игровые объекты вместе. Вы можете присоединять только двухмерные соединения Физический компонент, обеспечивающий динамическое соединение между компонентами Rigidbody, обычно допускающий некоторую степень движения, например шарнир . Подробнее
См. в Словарь игровые объекты, к которым прикреплен 2D-компонент Rigidbody, или к фиксированное положение в мировом пространстве. См. раздел 2D-соединения.
2D Effectors
Использовать двухмерные компоненты функциональную часть GameObject. GameObject может содержать любое количество компонентов. В Unity есть много встроенных компонентов, и вы можете создавать свои собственные, написав сценарии, которые наследуются от MonoBehaviour. Подробнее
См. в Словарь с помощью Collider 2D для управления силами физики в вашей сцене, когда коллайдеры GameObject соприкасаются друг с другом. См. раздел 2D-эффекторы.
Audio
Вы можете добавить в игру фоновую музыку и звуковые эффекты в Unity; см. Обзор аудио. Используйте стороннее программное обеспечение для создания своего аудио и импортируйте его в Unity с рекомендуемыми настройками.
User interface
Если вы хотите добавить в игру меню или справку, вам необходимо настроить пользовательский интерфейс. Чтобы настроить пользовательский интерфейс, используйте Unity UI.
Profiling, optimizing and testing a build
Profiling
Профилирование позволяет увидеть, насколько ресурсоемкими являются различные части вашей игры. Вы всегда должны профилировать свою игру на целевой платформе выпуска; см. Профилирование вашего приложения.
Оптимизация
После профилирования вы можете использовать результаты для повышения производительности и оптимизации. См. Понимание оптимизации в Unity.
Testing
Протестируйте свою игру и свой код с помощью Unity Test Framework; см. Среда тестирования Unity.
Publishing
Когда вы закончите свою игру, вы будете готовы ее опубликовать. См. раздел Публикация сборок.