Как сделать дым в unity3d

2D игра на Unity. Подробное руководство. Часть 5

Игры с частицами в Unity

Префаб взрыва

Взрыв, как правило, состоит из двух составляющих: огонь и дым.

Создаем частицы дыма в Unity

Взглянув на свою систему частиц в увеличенном масштабе, вы увидите сплошной поток искр, испускаемых объектом частиц:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Обратите внимание на новое окно (с кнопками «Пауза» и «Стоп») в виде «Сцена» зрения, или в панели Инспектор (Inspector). Да, теперь она заполнена десятками полей, относящихся к системе частиц.

Когда вы выбираете систему частиц в «Hierarchy»,она начинает симулировать систему. Если вы снимите галочку, симуляция остановится. Очень полезно понаблюдать, как работает созданная вами система (а она запускается мгновенно).

Мы будем использовать этот спрайт для частиц дыма (сохраните его на жестком диске):

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Скопируйте изображение в папке «Текстуры» (Textures). Измените «Тип текстуры» (Texture Type) на «Texture» и установите галочку рядом с «Альфа-прозрачность» (Alpha Is Transparent). У вас должно быть:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Мы используем свойство Unity 3D, а не 2D. Вообще-то это не имеет значения. Используя 2D инструменты, вы используете только подклассы Unity. Но полный потенциал Unity все еще остается незатронутым.

Назначьте текстуру частицы:

Чтобы создать идеальные частицы дыма, мы должны изменить многие параметры в системе частиц на вкладке «Инспектор». Рекомендую попробовать:

КатегорияПараметрЗначение
GeneralDuration
(продолжительность)
1
GeneralMax Particles
(макс. число частиц)
15
GeneralStart Lifetime
(время рождения)
1
GeneralStart Color
(начальный цвет)
Gray
(серый)
GeneralStart Speed
(начальная скорость)
3
GeneralStart Size
(начальный размер)
2
EmissionBursts
(всплески)
0 : 15
Shape
(форма)
Shape
(форма)
Sphere
(сфера)
Color Over Lifetime
(цвет в течении всей жизни)
Color
(цвет)
See below (N°1)
Size Over Lifetime
(размер в течении всей жизни)
Size
(размер)
See below (N°2)

N°1 — цвет в течении всей жизни

Настройте эффект выцветания для свойства «Альфа-прозрачность»:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

N°2 — размер в течении всей жизни

Выберите убывающую кривую:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Вот, что у вас должно быть:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Не стесняйтесь настраивать систему. Поиграйте с редактором, чтобы увидеть, как это работает. Это ваша игра в конце концов. 🙂 Когда вы будете удовлетворены, снимите флажок «Цикл» (Looping).

Обратите внимание на результат:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Это явно не идеально, но обратите внимание, как просто было создать этот эффект. Добавление частиц может превратить скучную игру в ту, на которую приятно смотреть.

Сохраните облако как префаб: создайте папку «Prefabs/Particles» и назовите его «SmokeEffect».

Частицы огня

Здесь все тоже самое:

Мы рекомендуем использовать:

КатегорияПараметрЗначение
GeneralLoopingfalse
GeneralDuration
(Продолжительность)
1
GeneralMax Particles
(Макс. число частиц)
10
GeneralStart Lifetime
(Время появления)
1
GeneralStart Speed
(Начальная скорость)
0.5
GeneralStart Size
(начальный размер)
2
EmissionBursts
(всплески)
0 : 10
ShapeShapeBox
Color Over Lifetime
(цвет в течение всей жизни)
Color
(цвет)
See below (N°1)

N°1 — цвет в течение всей жизни

Создаем красивый градиент от желтого до оранжевого, с затуханием в конце:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Вы должны получить:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Поскольку у нас может быть несколько частиц в сцене в одно и то же время, мы вынуждены каждый раз создавать новый префаб. Если бы мы были уверены, что в сцене не может использоваться более одной системы одновременно, мы бы создали ссылку и использовали бы ее каждый раз.

Синглтон – это паттерн, благодаря которому объект не инстанцируется более одного раза. Мы немного отклонились от классического варианта кода, но суть осталась неизменной.

Настало время вызвать наш скрипт.

Into the OnTriggerEnter() method of the «HealthScript»:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Не плохо, не так ли? Хотя, не исключено, что есть способ и получше. Теперь, когда вы знаете, как работают частицы, вы сможете создавать действительно зрелищные взрывы.;)

Что дальше

Мы узнали, как создать частицы, используя встроенный движок Unity. И, как вы увидели как это просто. Кроме того, частицы добавляют лоска и оживляют вашу игру. Однако, будьте осторожны! Всем нам больше нравится заниматься эффектами, чем писать скучный код для игрового счета – главное не слишком увлекаться! Беритесь за частицы в самом конце, иначе быстро потеряете интерес к остальным задачам.

Есть еще один способ сделать игру более привлекательной, помимо частиц – звуки! Именно на этом мы подробно остановимся в следующей главе.

Источник

Unity: системы частиц

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Системы частиц похожи на соль: даже небольшое количество может добавить готовящемуся «блюду» стиля. Современные игры, в которых не используются системы частиц, выглядят довольно бледно.

В прошлом нам приходилось каждую струйку дыма программировать самостоятельно. К счастью, благодаря встроенной модульной системе частиц Unity Shuriken делает создание частиц достаточно простой задачей. Эта система частиц проста в изучении и позволяет создавать сложные эффекты.

В этом туториале вы научитесь следующему:

Примечание: в этом туториале подразумевается, что вы знакомы с основами работы в Unity. Если вы новичок в Unity или вам нужно освежить свои знания, то для начала изучите наш туториал Introduction to Unity.

Приступаем к работе с системами частиц

Скачайте заготовку проекта для этого туториала и распакуйте её в удобное для вас место. Учтите, что для работы с туториалом вам понадобится как минимум Unity 2017.2.

Откройте Starter Project в Unity. Ассеты внутри него распределены по нескольким папкам:

Добавление системы частиц

В общем случае система частиц испускает частицы в случайных точках в пределах заранее определённого пространства, которое может иметь форму, например, сферы или конуса. Система определяет время жизни самой частицы, и когда оно заканчивается, система уничтожает частицу.

В системах частиц удобно то, что они являются компонентами, которые можно добавлять к любому GameObject в сцене. Хотите, чтобы из глаз акул вырывались лазерные лучи? Просто добавьте к GameObject глаза акулы систему частиц!

Откройте сцену Torch в окне Project Window и запустите сцену:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Пока здесь не происходит ничего интересного. Факел висит на стене, но на нём не видно огня. Для начала нам нужно добавить систему частиц.

Остановите выполнение сцены и выберите TorchFireParticles в Hierarchy. В Inspector нажмите на кнопку Add Component. Найдите Particle System и нажмите, чтобы добавить её:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Примечание: вы могли заметить, что я не добавил систему частиц непосредственно к GameObject MedievalTorch. Я сделал так, чтобы частицы испускались из ёмкости с топливом в верхней части, а не из середины факела.

Запустите сцену, и вы увидите, что частицы уже испускаются:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Примечание: вы можете видеть вместо белых розовые частицы. Похоже, это баг Unity с заданием текстуры по умолчанию. Если у вас произошло такое, то не волнуйтесь, скоро мы зададим правильную текстуру пламени. Если вы хотите исправить этот баг уже сейчас, то нажмите на раздел Renderer системы частиц, нажмите на точку рядом с полем Material и в открывшемся окне дважды щёлкните Default-Particle.

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

При выборе GameObject с присоединённой к нему системой частиц вы заметите в правом нижнем углу окна сцены чёрное диалоговое окно. Это диалоговое окно позволяет симулировать или останавливать систему частиц. Нажатие на кнопку Simulate активирует систему частиц и заменяет её на кнопку “Pause”. Чтобы остановить симуляцию, нужно нажать на кнопку “Stop”.

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Это диалоговое окно полезно при создании систем частиц, выполняемых в течение ограниченного периода времени, например, для взрывов.

Рассмотрим систему частиц внимательнее

Взгляните на Inspector. Вы заметите, что добавленный нами компонент системы частиц имеет несколько подразделов:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Каждый из этих подразделов называется модулем (Module). В этих модулях содержатся параметры системы частиц. Развёрнутый по умолчанию модуль называется модулем Main:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Модуль Main — фундамент любой системы частиц в Unity. Здесь находятся самые основные параметры частиц:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d
Сверху: 8 секунд. Внизу: 3 секунды

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d
Сверху: 2. Снизу: 10

Задайте значение скорости 0.75; так эффект пламени будет медленнее и плотнее.

Примечание: изменяя параметры системы частиц, вы будете видеть её предварительный обзор в окне Game. В процессе выполнения туториала посматривайте на этот предварительный обзор.

Запустите сцену, чтобы посмотреть, как повлияли внесённые изменения:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Мы настроили факел, но эффект огня пока оставляет желать лучшего. К счастью, в модуле Main есть дополнительные опции, позволяющие усовершенствовать форму и поведение факела.

Другие свойства модуля Main

Выберите в иерархии GameObject TorchFireParticles и прокрутите вниз, к системе частиц. В модуле Main Module посмотрите на следующие свойства:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d
Сверху: 0.2. Внизу: 1.

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d
Сверху: 0°. Внизу: 45°

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d
Сверху: local space. Внизу: world space

Снова запустите сцену, чтобы увидеть, как на неё повлияли изменения:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

С каждым разом становится всё больше похожим на пламя, правда?

Однако нам нужно больше частиц. Для этого нам нужно изменить emission системы.

Знакомство с модулем Emission

Модуль Emission управляет количеством и временем испускаемых частиц в системе и позволяет создавать любые эффекты, от постоянного потока до резкого взрыва частиц.

Находясь в Inspector системы частиц, нажмите на заголовок модуля Emission:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

При этом откроется модуль Emission:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Rate over Time представляет количество частиц, испускаемых за секунду. Задайте для Rate over Time значение 15.

Запустите сцену снова; теперь система частиц будет больше походить на горящее пламя.

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Но заметно, что она всё ещё больше похожа на дым. И здесь мы внесём самое большое изменение на текущем этапе туториала: собственную текстуру!

Добавление собственной текстуры

У всех частиц есть материал частиц и текстура, задающая их внешний вид. С текстурой по умолчанию мы можем сделать только это. Заменив текстуру, мы можем создавать эффекты наподобие волшебных звёздочек, дыма и, разумеется, огня.

Заменить текстуру частиц достаточно просто. До этого момента частицы отрисовывались на экране с помощью материала Default-Particle, который является материалом частиц с круговой градиентной текстурой:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Чтобы заменить этот материал, выберите в иерархии GameObject TorchFireParticles. Затем найдите в инспекторе компонент системы частиц и откройте модуль Renderer системы частиц.

Откройте папку Materials в окне Project View и перетащите на FireMaterial Material на свойство Material:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Затем запустите сцену, чтобы увидеть, как применяется наша выбранная текстура:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Чувствуете жар? Однако пламя слишком широкое; Чтобы исправить это, нам нужно изменить форму системы частиц.

Изменение формы системы частиц

Модуль Shape, как можно понять из названия, управляет формой и поведением частиц в этой форме. Можно выбрать одну из нескольких различных форм; каждая имеет свои собственные параметры. Это позволяет создавать частицы в параллелепипеде, в сфере или даже в собственном меше!

Разверните модуль Shape в инспекторе:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

В качестве формы (shape) системы частиц выбран конус (cone), то есть частицы испускаются из основания base и движутся наружу под углом (angle):

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

В показанном выше примере основание окрашено синим, угол зелёным, а частицы — красным. Также стоит заметить, что при развёрнутом модуле Shape мы видим в окне Scene удобный предварительный обзор конуса:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Меняя Angle, можно изменять размер конуса, делая его шире или уже. Укажите значение 7; так мы получим удобную узкую границу, которая немного расширяется, когда частицы поднимаются вверх.

Меняя Radius, мы можем менять размер основания. Чем больше значение, тем больше будут рассеиваться частицы при испускании. Выберите значение 0.2; так мы обеспечим создание пламени внутри ёмкости для топлива факела.

Запустите сцену и посмотрите, как изменилась форма пламени:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Оно начинает походить на настоящее пламя! Последнее, что можно сделать — изменять размер частиц с течением времени их жизни.

Изменение размера с течением времени жизни

С помощью модуля Size over Lifetime можно создавать частицы, увеличивающиеся или уменьшающиеся с течением их жизни, или даже пульсирующие, как светлячки в лесу.

Найдите в списке модулей системы частиц раздел Size over Lifetime. По умолчанию от выключен, поэтому поставьте флажок рядом с названием модуля:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Разверните модуль Size over Lifetime, нажав на его название. Так вы откроете тёмно-серый фон с плоской кривой (Curve) в верхней части:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Нажмите на тёмно-серый фон, чтобы открыть редактор кривых в нижней части инспектора. Горизонтальная ось отображает время жизни частицы, а вертикальная ось — её размер:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Для редактирования кривой можно перемещать ключевые точки с обоих сторон красной линии; добавлять новые ключи можно двойным нажатием на любое место кривой. Для удаления ключевых точек нажмите правой клавишей мыши на точку и выберите Delete Key. Также можно выбрать одну из заранее созданных кривых в нижней части окна:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Вспомните, как ведут себя языки пламени в реальном мире: они уменьшаются при поднятии частиц вверх. Чтобы имитировать такое поведение, мы выберем третью готовую кривую справа для создания плавно опускающейся кривой:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Запустите сцену, чтобы увидеть эффект во всей его полноте!

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Поздравляю! Вы узнали, как настраивать новую систему частиц и изменять её по своему усмотрению для создания красивого эффекта огня.

В следующем разделе мы разбудим в себе внутреннего Майкла Бэя, чтобы научиться создавать эффекты взрывов!

Создание эффекта бомбы

Создать эффект взрыва в Unity довольно просто. Как только вы разберётесь, как создавать экземпляры частиц по своему усмотрению, вы сможете использовать этот эффект для таких вещей, как колёса автомобиля, выбрасывающие искры при трении о землю, или воздушные шары, которые взрываются и выбрасывают из себя конфетти.

Откройте Bomb scene в Project Window и запустите сцену:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

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

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Запустите сцену снова, чтобы увидеть, как появляются бомбы:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Откройте скрипт Bomb в папке Scripts окна Project Window.

Добавьте в Start() следующий код:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Теперь бомбы при падении красиво вращаются. Но я обещал вам взрывы!

В иерархии нажмите на кнопку Create и выберите Create Empty. Нажмите на созданный GameObject и назовите его ExplosionParticles. Далее добавьте к этому GameObject новую систему частиц. Если вы забыли, как создавать систему частиц, то посмотрите первый раздел туториала.

Создав систему частиц, перетащите GameObject ExplosionParticles из иерархии в папку Prefabs в Project Browser. После этого удалите GameObject ExplosionParticles из Project Hierarchy.

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Затем выберите префаб Bomb в папке Prefabs и перетащите префаб ExplosionParticles в слот Explosion Particles Prefab Bomb следующим образом:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Как и в случае с факелом, мы будем использовать для системы частиц материал Fire.

Выберите префаб ExplosionParticles в окне Project Window, а затем разверните в инспекторе модуль Renderer. Перетащите FireMaterial из папки Materials из окна Project Window в слот Material, как показано ниже:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Чтобы завершить эффект, нам нужно изменить следующие параметры в модуле Main:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Создание взрыва

Если вы решили, что это модуль Emission, то вы молодец!

Разверните Emission Module. Rate — это количество частиц, создаваемых за секунду. Для взрыва нам нужен не постоянный поток частиц, а резкая вспышка.

Задайте Rate over Time значение 0. Теперь перейдите к Rate over Distance и вы увидите список Bursts, который по умолчанию пуст:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Burst — это набор частиц, испускаемых одновременно в определённый момент времени.

Нажмите на кнопку + в нижнем правом углу, чтобы добавить новый Burst. Вы увидите два поля: Time и Count:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Оставьте Time равным 0, и задайте Count значение 150. Такие параметры заставят систему частиц одновременно испускать 150 частиц в начале системы.

Запустите сцену. Как всё выглядит теперь?

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Для начала развернём модуль Shape:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Мы уже использовали этот модуль для формы пламени факела, но здесь можно выбрать и другие формы. Нажмите на раскрывающееся поле, в котором написано Cone, чтобы увидеть все доступные варианты:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Каждая форма влияет на эмиттер по-своему. На каждой показанной ниже анимации показан одинаковый эмиттер, у которого меняется только форма:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

От одной системы можно получить множество различных эффектов, просто меняя её форму! Для создания реалистичного взрыва выберите форму Sphere.

Запустите сцену и готовьтесь взорваться:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Теперь всё выглядит потрясающе!

Изменение цвета

Открыв систему частиц в инспекторе, нажмите на флажок рядом с модулем Color over Lifetime, чтобы включить его, а затем разверните его. Вы сразу увидите слово Color с белым блоком рядом с ним. Нажмите на белый блок:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

При этом откроется редактор градиента:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

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

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Четыре белые полосы по краям называются маркерами; нажмите между двумя имеющимися маркерами, чтобы добавить новый. Чтобы удалить маркер, перетащите его с полосы:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Верхние маркеры управляют Alpha или непрозрачностью цвета, а нижние — значениями цвета RGB (Red, Green, Blue).

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Нажмите на самый правый альфа-маркер. В нижней части редактора градиента будет показано текущее значение альфа-канала:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Перетащите ползунок к 0. Теперь частицы будут постепенно становиться прозрачными в течение времени свой жизни.

Снова запустите сцену, чтобы посмотреть, как повлияли внесённые изменения:

Как сделать дым в unity3d. Смотреть фото Как сделать дым в unity3d. Смотреть картинку Как сделать дым в unity3d. Картинка про Как сделать дым в unity3d. Фото Как сделать дым в unity3d

Хотите ещё больше улучшить сцены? Вернитесь к сцене с факелом и сделайте так, чтобы пламя использовало модуль Size Over Lifetime Module для получения похожего эффекта.

Куда двигаться дальше?

Готовый проект можно скачать отсюда.

В этом туториале вы узнали, как в Unity работают системы частиц и их модули, а также научились тому, как настраивать их для получения нужного эффекта. Поэкспериментируйте с различными параметрами, чтобы увидеть, каких ещё эффектов можно добиться.

Подробную информацию о системе частиц Shuriken и её модулях см. в официальной документации Unity и в видео о системах частиц. Также о скриптинге систем частиц можно подробнее узнать здесь.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *