Системы частиц
A particle system is a really versatile technique that allows creating complex moving structures that produce dynamic and "fuzzy" effects. These structures are used for simulation of abstract effects of fire, smoke, explosions, electricity, fountains, rocket trails, flocking, magic, and many many more. All these effects are hard to reproduce using traditional rigid objects: particles are represented not by a set of primitive surface elements, but by point masses forming the volume of particle primitives. Another distinctive feature is that particles are not static — they may change not only their position, but also the form with the time.Система частиц — действительно универсальная техника, позволяющая создавать сложные движущиеся структуры, производящие динамические и «нечеткие» эффекты. Эти структуры используются для моделирования абстрактных эффектов огня, дыма, взрывов, электричества, фонтанов, ракетных следов, стая, магии и многих других. Все эти эффекты трудно воспроизвести с помощью традиционных жестких объектов: частицы представлены не набором примитивных элементов поверхности, а точечными массами, образующими объем примитивов частиц. Еще одна отличительная особенность — частицы не статичны — они могут со временем менять не только свое положение, но и форму.
A particle system consists of three main entities:Система частиц состоит из трех основных сущностей:
- Emitter — the source that emits particles according to the values set in the Emitter parameters.Эмиттер — источник, испускающий частицы в соответствии со значениями, установленными в параметрах группы Emitter.
- Particles themselves, which are emitted according to the predefined behavior after emission.Сами частицы, которые испускаются согласно заранее заданному поведению после испускания.
- Additional physical effects applied to the particles that affect their behavior.Дополнительные физические эффекты, применяемые к частицам и влияющие на их поведение.
See alsoСмотрите также#
- The particles_base material to adjust the particles appearanceМатериал particles_base для настройки внешнего вида частиц
- The ObjectParticles class to manage particles via APIКласс ObjectParticles для управления частицами через API
- A set of samples located in the Art Samples suite. Набор сэмплов, находящихся в комплекте Art Samples
Creating ParticlesСоздание частиц#
To create particles, perform the following steps:Чтобы создать частицы, выполните следующие действия:
- On the Menu bar, click Create -> Particle System -> Particles.
- Place the Particles object somewhere in the world.Поместите объект Particles где-нибудь в мире.
- Specify the particles parameters.Настройте параметры частиц.
Emitter ParametersПараметры излучателя#
The particles emitter's behaviour is set via the Emitter parameters.Поведение эмиттера частиц задается в параметрах Emitter.
Clear On Enable | Enables re-initialization of the particle system each time it is enabled. When this option is disabled, turning on the particle system restores the state it had before it was turned off.Разрешает повторную инициализацию системы частиц каждый раз при ее включении. Когда эта опция отключена, включение системы частиц восстанавливает состояние, в котором она была до выключения. |
---|---|
Emitter Enabled | Enables the emitter.Включает эмиттер. |
Emitter Sync | Enables synchronization of the child particle system with the parent one, even if the child particle system has the Emitter Enabled option disabled.Включает синхронизацию дочерней системы частиц с родительской, даже если для дочерней системы частиц опция Emitter Enabled отключена. |
Emitter Shape |
The shape of the volume within which the particles are generated:Форма объема, внутри которого генерируются частицы: |
Emitter Size | The size of the particles source. The number of fields (whether it is radius or boundary dimensions) depend on the chosen shape.Размер источника частиц. Количество полей (будь то радиус или граничные размеры) зависит от выбранной формы. |
Particles Type |
|
Sequence Order |
The order of rendering for particle systems, especially when creating a complex effects like shots (with muzzle flash, smoke and the shot itself, each rendered with different particle systems). This parameter is very much the same as Rendering Order option in the Materials Settings. But it allows setting a rendering sequence inside of the particle system hierarchy, to avoid such situations when the smoke from a distant shot is rendered atop of the fire of the foreground shot.Порядок рендеринга систем частиц, особенно при создании сложных эффектов, таких как выстрелы (с дульной вспышкой, дымом и самим выстрелом, каждый из которых представлен отдельной системой частиц). Этот параметр очень похож на Rendering Order в настройках материалов. Но он позволяет установить последовательность рендеринга внутри иерархии системы частиц, чтобы избежать таких ситуаций, когда дым от далекого выстрела рендерится поверх огня выстрела переднего плана.
|
Emitter Shift | Enabling this checkbox makes the emitter generate particles only when the Particle System is moving.Включение этого флажка заставляет эмиттер генерировать частицы только тогда, когда система частиц движется. |
Emitter Continuous | Enables continuous particles that follow the shift of the emitter.Включает непрерывные частицы, которые следуют за смещением эмиттера. |
Texture Atlas | Включение этой функции приводит к следующему: случайное изображение из текстуры альбедо подбирается для каждой частицы. |
Texture Atlas Size | The size of the texture atlas. Размер текстурного атласа. |
Random Flip X | Flipping of random emitted particles horizontally (along the X axis).Переворот случайно испускаемых частиц по горизонтали (по оси X). |
Random Flip Y | Flipping of random emitted particles vertically (along the Y axis).Переворот случайно испускаемых частиц по вертикали (по оси Y). |
Warming On Start | Toggles on and off the particle system initialization with the illusion of prior activity. The particle system evolves with time, so after encountering it in the virtual world, the system only starts to be generated, particle by particle, until the whole system gains the intended look. When the character comes out on a glade, we will see a fire gradually burn up. Warm start for the particles enables rendering the full-grown particle system straight away. The technical implementation of warm start is the following: when the particle system is initialized on the encounter, its life is computed starting from the generation of the first particle to its disappearance. After that, the particle system is considered evolved and is rendered in this state. The calculations are taken at a fixed frame rate of 25 fps, which is the minimum required for the correct simulation of particle systems (see also information about correlation between framerates). Warm start can be enabled without any detrimental effect for any particles systems, except for huge ones.Включает и выключает инициализацию системы частиц с иллюзией предшествующей активности. Система частиц развивается со временем, поэтому после встречи с ней в виртуальном мире система только начинает работать, частица за частицей, пока вся система не приобретет желаемый вид. Когда персонаж выйдет на поляну, мы увидим, как постепенно разгорается огонь. Стартовый прогрев для частиц позволяет сразу рендерить полноценную систему частиц. Техническая реализация стартового прогрева следующая: когда система частиц инициализируется при столкновении, ее жизнь вычисляется, начиная с рождения первой частицы до ее исчезновения. После этого система частиц считается развитой и отображается в этом состоянии. Расчеты производятся с фиксированной частотой кадров 25 кадров в секунду, что является минимумом, необходимым для правильного моделирования систем частиц (см. также информацию о корреляции между частотой кадров). Стартовый прогрев можно включить без какого-либо негативного влияния на любые системы частиц, кроме огромных. |
Max Warming Time (Sec) | Maximum time of the particle system warmup.Максимальное время прогрева системы частиц. |
Spawn Rate | Number of spawn actions per second. The value defines how many times a certain number of particles will be spawned in one second. For example, the value set to 5 equals to 5 spawn actions per second. 0 results in no particles at all. Количество действий возрождения в секунду. Значение определяет, сколько раз определенное количество частиц будет создано за одну секунду. Например, значение 5 соответствует 5 действиям появления в секунду. 0 приводит к отсутствию частиц вообще. |
Number Per Spawn | Number of particles to be spawned simultaneously each time according to the Spawn Rate.Количество частиц, которые будут порождаться одновременно каждый раз в соответствии с параметром Spawn Rate. |
Spawn Threshold | Threshold of the number of particles depending on the velocity of the parent particles.
|
Limit Per Spawn | The total maximum number of particles emitted per spawn. This parameter specifies the number of particles that can simultaneously exist in the world. In other words, the number of particles existing in the world cannot exceed the limit value. For example, if the Number per Spawn value is 10, and the Limit Per Spawn value is 5, 5 particles will be emitted. And no particles will be spawned until the previous ones exist.Общее максимальное количество частиц, испускаемых за раз. Этот параметр указывает количество частиц, которые могут одновременно существовать в мире. Другими словами, количество существующих в мире частиц не может превышать предельное значение. Например, если значение Number per Spawn равно 10, а значение Limit Per Spawn равно 5, будет испущено 5 частиц. И никакие частицы не будут порождаться, пока существуют предыдущие. |
Life Time (Sec) | Duration of the particles existence after emission in seconds. This parameter also has the Spread value that creates the variety of the Life Time value, in seconds.Продолжительность существования частиц после испускания в секундах. Этот параметр также имеет значение Spread, которое создает разнообразие значения Life Time в секундах. |
Delay | This option defines the time to pass between the parent system initialization and initialization of the child node. If any delay is set, the parent system starts emitting particles, and after the delay, the generation of child particles is activated. If a particle system doesn't have children, the delay defines the time after which the particles are emitted. This parameter also has the Spread value that creates the variety of delay of particle initialization, in seconds. Эта опция определяет время, которое должно пройти между инициализацией родительской системы и инициализацией дочерней ноды. Если задана какая-либо задержка, родительская система начинает испускать частицы, а после задержки активируется генерация дочерних частиц. Если у системы частиц нет дочерних элементов, задержка определяет время, по истечении которого частицы испускаются. Этот параметр также имеет значение Spread, которое создает различную задержку инициализации частицы в секундах. |
Period |
Duration of a pause between generation cycles, in seconds.Продолжительность паузы между циклами генерации в секундах.
This parameter also has the Spread value that creates the variety of the Period value, in seconds.Этот параметр также имеет значение Spread, которое создает вариацию значения периода в секундах. |
Duration | Duration of generation cycle, within which emission occurs, in seconds.Продолжительность цикла генерации, в течение которого происходит испускание, в секундах.
This parameter also has the Spread value that creates the variety of the Duration value, in seconds.Этот параметр также имеет значение Spread, которое создает разнообразие значений Duration, в секундах. |
Spread (+/-) | Spread option introduces additional modulation of the corresponding parameter. It represents the range of values that can be randomly added to or subtracted from the specified parameter value.Опция Spread вводит дополнительную модуляцию соответствующего параметра. Он представляет собой диапазон значений, которые могут быть случайным образом добавлены или вычтены из указанного значения параметра. |
Behavior After EmissionПоведение после испускания#
This set of parameters defines how the particles behave after they are emitted:Этот набор параметров определяет, как частицы ведут себя после испускания:
Value Setting OptionsПараметры настройки значений#
Most parameters in this section have multiple options for setting a value:Большинство параметров в этом разделе имеют несколько вариантов установки значения:
- Const — the value is precise and unchanged over time.Const — значение точное и не меняется с течением времени.
- Between Const — an interval is set, from which a random value is selected for each instance.Between Const — задается интервал, из которого выбирается случайное значение для каждого экземпляра.
-
Curve — the parameter value changes over time based on the curve defined in Curve Editor.Curve — значение параметра изменяется во времени в зависимости от кривой, задаваемой в Редакторе кривых.
In case of small values (close to 0), the curves may lose accuracy if the Max Value value significantly exceeds the actual maximum value of the curve. To avoid this, Max Value should be set as close to the actual maximum as possible.При малых значениях (близких к 0), кривые могут терять в точности, если значение Max Value существенно больше, чем фактическое максимальное значение на кривой. Чтобы этого избежать надо установить Max Value максимально приближенным к фактическому максимуму. - Between Curve — there are two curves set in Curve Editor that define the limits, and a random value is taken at every moment of time within these limits. The parameter value changes over time based on this randomly generated set of values.Between Curve — есть две кривые, установленные в Редакторе кривых, которые определяют пределы, и в каждый момент времени в этих пределах берется случайное значение. Значение параметра изменяется со временем на основе этого случайно сгенерированного набора значений.
To select a desired value type, use the gear button.
Чтобы выбрать желаемый тип значения, используйте кнопку с изображением шестеренки.
Depth Sort | Depth sorting is required, if particles use alpha blending (except for the additive one). If not enabled, then based on the depth buffer data, opaque objects positioned farther can be wrongly rendered in front of transparent particles. With depth sorting, geometry is rendered in the order from back to front, which rules out visual artifacts.Сортировка по глубине требуется, если частицы используют альфа-смешивание (кроме аддитивного). Если этот параметр не включен, то на основе данных буфера глубины непрозрачные объекты, расположенные дальше, могут неправильно отображаться перед прозрачными частицами. При сортировке по глубине геометрия отображается в порядке от задней части к передней, что исключает визуальные артефакты. | ||||
---|---|---|---|---|---|
Emitter Based | Enabling this option makes particles move along with the emitter.Включение этой опции заставляет частицы двигаться вместе с эмиттером. | ||||
Position | Particle position coordinates relative to the emitter along X, Y and Z axes.Координаты положения частицы относительно излучателя по осям X, Y и Z. | ||||
Gravity |
Gravity force affecting particles along the X, Y and Z axes.Сила тяжести, действующая на частицы по осям X, Y и Z.
The rotation of particle system node does not affect the gravity vector.Вращение ноды системы частиц не влияет на вектор гравитации. |
||||
Direction | Direction in which all emitted particles move forming a flow, specified along the X, Y and Z axes.Направление, в котором движутся все испускаемые частицы, образуя поток, заданное по осям X, Y и Z. | ||||
Velocity | The speed of particles movement in the set direction, in units per second. To grant the natural-looking flow, the final velocity of each separate particle can differ, if the range of values is set.Скорость движения частиц в заданном направлении, в единицах (unit) в секунду. Чтобы поток выглядел естественно, конечная скорость каждой отдельной частицы может отличаться, если задан диапазон значений. | ||||
Linear Damping | The decrease in particles linear velocity over time. This parameter is used to simulate effect of friction of the medium for particles.Уменьшение линейной скорости частиц со временем. Этот параметр используется для моделирования эффекта трения среды для частиц. | ||||
Angle | Angle of particles orientation in space, in degrees. |
||||
Rotation Speed | Angular velocity of particles, in degrees per second.Угловая скорость частиц в градусах в секунду.
|
||||
Radius | Radius (half-size) of the particle.Радиус (половинный размер) частицы. | ||||
Increase In Radius | Increment of the size of a particle, in units per second.Увеличение размера частицы в единицах в секунду.
|
||||
Screen Size Mode |
Screen size mode to be used for particles. This mode defines whether the maximum and minimum sizes of emitted particles should be limited relative to screen size or not (e.g., to avoid cases when snowflakes or raindrops obscure the view if they are too close to the camera or when they become invisible as the distance to the camera increases). Three modes are available:Режим размера на экране, который будет использоваться для частиц. Этот режим определяет, следует ли ограничивать максимальный и минимальный размеры испускаемых частиц относительно размера экрана или нет (например, чтобы избежать случаев, когда снежинки или капли дождя закрывают обзор, если они находятся слишком близко к камере или когда они становятся невидимыми по мере увеличения расстояния до камеры). Доступны три режима:
|
||||
Screen Min Size |
Minimum screen size to be set for particles limiting the minimum fraction of the screen a single particle can occupy:Минимальный размер на экране, устанавливаемый для частиц, ограничивающий минимальную долю экрана, которую может занимать одна частица:
|
||||
Screen Max Size |
Maximum screen size to be set for particles limiting the maximum fraction of the screen a single particle can occupy:Максимальный размер на экране, устанавливаемый для частиц, ограничивающий максимальную долю экрана, которую может занимать одна частица:
|
||||
Length Stretch | Stretching of a particle billboard, available for the Length Particles. With the value of 0, the length particle is simply a square billboard. Increasing the value stretches particles in the direction of their movement. The result is calculated by multiplying the stretch value by the particle velocity value. So, the higher the velocity is, the more stretched the particles are in the direction of their movement, while the other side remains of the same width.Растяжка биллборда частиц, доступная для Length Particles. При значении 0 частица длины представляет собой просто квадратный биллборд. При увеличении значения частицы растягиваются в направлении их движения. Результат рассчитывается путем умножения значения растяжения на скорость частицы. Таким образом, чем выше скорость, тем сильнее растягиваются частицы в направлении своего движения, в то время как другая сторона остается той же ширины.
|
||||
Length Flattening | Makes the Length Particles not camera-oriented as usual billboard particles, but more perpendicular to the Z axis. With the value of 0, the particles are not flattened. With the maximum value of 1, the particles will be flat (perpendicular to the Z axis) when they are emitted.Делает Length Particles не ориентированным на камеру, как обычные частицы билборда, а более перпендикулярным оси Z. При значении 0 частицы не сплющиваются. При максимальном значении 1 частицы будут плоскими (перпендикулярно оси Z) при испускании.
|
InteractionВзаимодействие#
Interaction of the particles is limited to the application of forces and collisions with external objects. There are two methods to detect the collision with external objects: by using the Physics Intersection parameter or the Collision parameter.Взаимодействие частиц ограничивается применением силы и столкновения с внешними объектами. Есть два метода обнаружения столкновения с внешними объектами: с помощью параметра Physics Intersection или параметра Collision.
Physical Mask | For a more selective interaction of the particles systems with physical nodes, the physical bit mask is used. This bit mask is set for both the particles system and the force. These masks should have at least one bit matching, otherwise there would be no interaction. The other bits of the mask can match masks of other forces, thus providing perfect control over the scene integration.Для более избирательного взаимодействия систем частиц с физическими нодами используется битовая маска physical. Эта битовая маска устанавливается как для системы частиц, так и для силы. Эти маски должны иметь хотя бы одно битовое соответствие, иначе не будет никакого взаимодействия. Другие части маски могут соответствовать маскам других сил, обеспечивая тем самым полный контроль над интеграцией сцены. |
---|---|
Particles Field Mask | Bit mask for interaction with Particles Field nodes (Deflectors and Spacers). Emitted particles will be affected by a Particles Field only if their masks match (one bit at least).Битовая маска для взаимодействия с нодами Particles Field (Deflectors и Spacers). Испускаемые частицы будут подвержены влиянию Particles Field только в том случае, если их маски совпадают (по крайней мере, на один бит). |
Physical Mass |
To participate in the scene dynamics, particles should have a certain mass in kilograms. This value defines the intensity of the impact of the physical node on the particles flow.Чтобы участвовать в динамике сцены, частицы должны иметь определенную массу в килограммах. Это значение определяет интенсивность воздействия физической ноды на поток частиц. The Physical Mass parameter doesn't affect other calculations.Параметр Physical Mass не влияет на другие вычисления.
|
Restitution |
Strength of particles bouncing off an obstacle. This option is very convenient for simulation of some water effects that include splashes. The strength the bouncing effect depends on both the restitution parameter of particles and the value of the restitution surface parameter set for the colliding object (Properties -> Parameters -> Restitution), or the restitution value of a Particles Deflector.Сила, с которой частицы отскакивают от препятствия. Эта опция очень удобна для моделирования некоторых водных эффектов, включая брызги. Сила эффекта отскока зависит как от параметра restitution самих частиц, так и от значения параметра поверхности restitution, установленного для сталкивающегося объекта (Properties -> Parameters -> Restitution), а также от значения restitution, установленного для Particles Deflector.
|
Roughness |
Roughness of the surface of an obstacle the particle collides with. It determines whether the particles scatter in different directions or react as a uniformly directed flow.Шероховатость поверхности препятствия, с которым сталкивается частица. Он определяет, разлетаются ли частицы в разных направлениях или реагируют как однородно направленный поток.
|
Collision |
Enables collision detection with the whole shape of a particle. Collisions are detected for matching collision bit masks.Столкновения обнаруживаются только для совпадающих битовых масок collision. |
Intersection |
Enables detection of physics intersections with particles. Physics intersections can be used, for example, to detect collisions of spawned particles with physical shapes and bodies or static collider surfaces to ensure proper interaction, or as a quick way to detect collisions for raycast-wheels of a simulated ground vehicle, or to check if a destructible object or a player was hit by a projectile.Включает обнаружение пересечения с центром частицы. Physics intersections are detected for matching Physics Intersection bit masks.Физические пересечения обнаруживаются для совпадающих битовых масок Physics Intersection. |
Destroy In Collision/Intersection | Toggles on and off culling of particles that have already undergone either collision or intersection.Включает и выключает отбраковку частиц, которые уже подверглись столкновению или пересечению. |
Render To TextureРендеринг в текстуру#
Particles can be rendered into a procedural texture to be used by an Orthographic Decal or a Field Height. This feature can be used, for example, to create ship wake effects or oil splashes.Частицы могут быть визуализированы в процедурную текстуру, которая будет использоваться объектами Orthographic Decal или Field Height. Эту функцию можно использовать, например, для создания эффектов следа от корабля или брызг масла.
The following settings are available:Доступны следующие настройки:
Rendering | Enables rendering of particles to a procedural texture.Включает рендеринг частиц в процедурную текстуру. |
---|---|
Positioning |
Defines positioning mode to be used for child nodes (decal or field) using the procedural texture, to which the particle system is rendered. The following values are available:Определяет режим позиционирования, который будет использоваться для дочерних нод (декаль или поле) с использованием процедурной текстуры, в которую визуализируется система частиц. Доступны следующие значения:
Takes effect only when Procedural Parenting is set to Children.Вступает в силу только тогда, когда в Procedural Parenting выбрано значение Children. |
Parenting |
Defines relationship between the particle system and a Decal / Field node, that uses the procedural texture into which the particle system is rendered:Определяет взаимосвязь между системой частиц и нодой типа Decal / Field, использующей процедурную текстуру, в которой отображается система частиц:
|
Resolution |
Specifies resolution of the procedural texture into which particles are rendered.Задает разрешение процедурной текстуры, в которой визуализируются частицы.
|
Additional Physical EffectsДополнительные физические эффекты#
More intricate changes in further movement of the particles may be performed by applying the additional physical effects. They have influence on the particles flow in the desired direction or on the contrary deflect it. The effects can be of three general types:Более сложные изменения в дальнейшем движении частиц можно получить, применив дополнительные физические эффекты. Они влияют на движение потока частиц в нужном направлении. Эффекты могут быть трех основных типов:
There is no limitation to the number of additional physical effects applied to one particle system and they can freely overlap, enabling to constitute complex trajectories easily and fast.Нет ограничений на количество дополнительных физических эффектов, применяемых к одной системе частиц, и они могут свободно перекрываться, что позволяет легко и быстро создавать сложные траектории.
ForcesСилы#
You can apply a physical force to particles inside a sphere-shaped volume in order to affect their movement and behavior. For that, simply add a Physical Force node, adjust necessary settings and set up Physical Masks to selectively enable interaction.Вы можете применить действие физических сил к частицам внутри сферического объема, чтобы повлиять на их движение и поведение. Для этого просто добавьте ноду Physical Force, отрегулируйте необходимые настройки и настройте Physical Mask для выборочного воздействия.
NoisesШумы#
You can apply physical noise adding a distribution flow based on a volumetric noise texture inside a cuboid-shaped volume. For that, simply add a Physical Noise node, adjust necessary settings and set up Physical Masks to selectively enable interaction.Вы можете применить физический шум, добавив поток распределения, основанный на объемной текстуре шума внутри объема кубовидной формы. Для этого просто добавьте ноду Physical Noise, отрегулируйте необходимые настройки и настройте Physical Masks для выборочного включения взаимодействия.
DeflectorsДефлекторы#
Sometimes it is necessary to put an obstacle for particles to make them change their trajectory by bouncing off or sliding along a certain surface. For this purpose you can use a Particles Deflector node, a surface field that has no visual representation, but physically interacts with Particle Systems leaving other objects unaffected. You can control interaction between the particles and deflectors via the Particles Field mask: a deflector will interact with particles generated by a Particle System if they both have matching Particles Field masks (one bit at least).Иногда необходимо создать препятствие для частиц, чтобы заставить их изменить свою траекторию, отскакивая или скользя по определенной поверхности. Для этой цели вы можете использовать ноду Particles Deflector, поверхность, которая не имеет визуального представления, но физически взаимодействует с системами частиц, оставляя другие объекты незатронутыми. Вы можете управлять взаимодействием между частицами и дефлекторами с помощью маски Particles Field: дефлектор будет взаимодействовать с частицами, генерируемыми системой частиц, если они оба имеют совпадающие маски Particles Field (по крайней мере, один бит).
For more information on Particles Deflector please refer to this article.Дополнительная информация о Particles Deflectorпредставлена в этой статье.
Particles Node HierarchyИерархия нод систем частиц#
To create complex effects, it is necessary that all particles systems are synchronized in time. Setting a particle system as a parent node results in the following:Для создания сложных эффектов необходимо, чтобы все системы частиц были синхронизированы во времени. Установка системы частиц в качестве родительской ноды приводит к следующему:
- All particles systems that are child nodes are synchronized relative to their parent particle systems. If the children have children of their own, they still are synchronized with the main parent system, which is the highest in the hierarchy.Все системы частиц, которые являются дочерними нодами, синхронизированы относительно своих родительских систем частиц. Если у дочерних элементов есть собственные дети, они все равно синхронизируются с основной родительской системой, которая стоит в самом верху иерархии.
- When creating a new child particle system, it should be synchronized with the parent one by disabling and again enabling the parent emitter (Node tab -> Enabled box). At this moment, each of the child systems is initialized with its Emitter parameters (such as generation duration, period of generation pause, and delay of initialization).При создании новой дочерней системы частиц ее необходимо синхронизировать с родительской, отключив и снова включив родительский эмиттер (вкладка Node→ поле Enabled). В этот момент каждая из дочерних систем инициализируется со своими собственными Параметрами эмиттера (такими как продолжительность излучения, продолжительность паузы генерации, и задержка инициализации).
- Disabling or enabling the parent emitter (Node tab -> Enabled box) affects all child particle systems: they synchronously stop or start emitting particles (emitted particles still live out their time).Отключение или включение родительского эмиттера (вкладка Node→ поле Enabled) влияет на все дочерние системы частиц: они синхронно прекращают или начинают испускать частицы (испускаемые частицы доживают до конца своего времени существования).
- Disabling or enabling the parent node (Node tab -> Enabled box) also affects all children: all particle systems in the hierarchy are turned off and on — and preserve the same state as was at the moment of their disabling.Отключение или включение родительской ноды (вкладка Node→ поле Enabled) также влияет на все дочерние ноды: все системы частиц в иерархии выключаются и включаются — и сохраняют то же состояние, которое было в момент их выключения.
Synchronizing Several Particle SystemsСинхронизация нескольких систем частиц#
To synchronize several particle systems, for example, to create a shot effect (with three particle systems: muzzle flash, smoke and the bullet), you can do the following:Чтобы синхронизировать несколько систем частиц, например, чтобы создать эффект выстрела (с тремя системами частиц: дульная вспышка, дым и пуля), вы можете сделать следующее:
-
Create the parent particle system that will be used as a dummy one, purely for synchronization purposes (you can even disable its surface). Its Duration time interval should cover all duration intervals and delay intervals (if any) of the children particle systems. Other parameters (Spawn Rate, etc.) do not matter.Создайте родительскую систему частиц, которая будет использоваться исключительно для целей синхронизации (вы даже можете отключить ее поверхность). Указанный для нее временной интервал в поле Duration должен охватывать интервалы продолжительности и интервалы задержки (если есть) всех дочерних систем частиц. Остальные параметры (Spawn Rate и т.д.) значения не имеют.
-
Add the child particle systems. They can have any Duration time required (but it should be smaller than the one of the parent). For example, to synchronize all child particle systems at once and spawn only one particle, you can set the following:Добавьте дочерние системы частиц. Для них может быть задано любое время Duration (но оно должно быть меньше, чем у родительской ноды). Например, чтобы синхронизировать все дочерние системы частиц одновременно и порождать только одну частицу, вы можете установить следующее:
- Duration = 0
- Limit Per Spawn = 1
- Spawn Rate = inf/100000
Optimizing SimulationОптимизация симуляции#
Updating each frame a huge number of objects located far away from the camera that are hardly distinguishable or observed as a mass is a waste of resources.Обновление в каждом кадре огромного количества объектов, которые расположены далеко от камеры и поэтому трудно различимы или наблюдаются как некая масса, является пустой тратой ресурсов.
To improve performance and avoid the excessive load, particle systems simulation can be updated with a reduced framerate. When a particle system is out of the area specified by the Update Distance Limit, particles stop to be updated and freeze statically.Чтобы улучшить производительность и избежать чрезмерной нагрузки, симуляцию системы частиц можно обновлять с уменьшенной частотой кадров. Когда система частиц выходит за пределы области, указанной параметром Update Distance Limit, частицы перестают обновляться и статически замирают.
The set of frame rates given below enables you to specify how often the particles simulation should be updated when the particle system is visible, when only its shadow is visible, and when it is not visible at all.Приведенный ниже набор частот кадров позволяет указать, как часто моделирование частиц должно обновляться, когда система частиц видна, когда видна только ее тень и когда она не видна вообще.
This feature is enabled with default settings ensuring optimum performance and can be adjusted per-object in the UnigineEditor or via API at run time.Эта функция включена с настройками по умолчанию, обеспечивающими оптимальную производительность, и может быть настроена для каждого объекта в UnigineEditor или через API во время выполнения.
If your project, for example, contains an invisible particle system (e.g., using the Viewport mask) and some logic attached to its update (e.g. spawning some visible particles on collision with objects) this logic won't work, as the particle system might be updated with a reduced rate or might not be updated at all. To enable updating such objects regardless of their visibility you can set the Update Distance Limit and corresponding update rate values for it to infinity.Если ваш проект, например, содержит систему невидимых частиц (например, с использованием маски Viewport) и некоторую логику, прикрепленную к ее обновлению (например, порождение некоторых видимых частиц при столкновении с объектами), эта логика не будет работать, поскольку система частиц может обновляться по сниженной цене или вообще не обновляться. Чтобы разрешить обновление таких объектов независимо от их видимости, вы можете установить значение infinity для параметра Update Distance Limit и соответствующих значений частоты обновления.
Mesh-Based ParticlesЧастицы на основе меша (mesh)#
It is possible to create mesh-based particle systems. For that, Mesh Cluster should be added as a child node of the particle system (ObjectParticles). After that, meshes are automatically spawned by the emitter.Можно создавать системы частиц на основе меша. Для этого нужно добавить Mesh Cluster как дочернюю ноду системы частиц (ObjectParticles). После этого эмиттер начинает автоматически генерировать меши.