Particle System Properties
A particle system has the following properties.
Particles Material
Group that manages the properties related to the particle material.
Property | Default value | Description |
---|---|---|
Texture | particle.png | The texture that will appear in each particle quad. |
Sampler State | LinearClampSampler | The texture sampler state. |
RenderLayer | Additive | The texture render layer. |
General properties
Properties that control the basic aspects of the particle system.
Property | Default value | Description |
---|---|---|
Max Particles | 1000 | The maximum number of particles the emitter can handle. The emission will be paused if it reaches this number. |
Gravity | 0 | Sets the gravity of the particle system. |
Drag | 0 | The amount of resistance the particle will encounter. |
Simulation Space | World | Sets the simulation space of the particle. In Local space, the particle positions stay relative to its emitter transform. In World space, all coordinates are global. |
Random Precision | Medium | The precision of the random values generated, both in GPU and CPU simulations. High precision will randomize better but with a performance cost; Low precision will improve performance but produce less random values. Medium precision (default value) offers a good balance. |
Life
The life configuration panel controls the particle's remaining lifetime when it's emitted.
Property | Default value | Description |
---|---|---|
Init Life mode | Constant | Sets whether the lifetime of the particle is Constant (Init Life) or RandomBetweenTwoConstants (a random value between Init Life and Init Life2). |
Init Life | 5 | The initial life of the particle. |
Init Life 2 | 5 | The second value of the initial life range. |
The following video shows how different life parameters behave:
Color
The initial color configuration panel controls the particle color when it's emitted.
Property | Default value | Description |
---|---|---|
Init Color mode | Constant | Sets whether the initial color is Constant (Init Color) or RandomBetweenTwoConstants (a random value between Init Color and Init Color2). |
Init Color | White | The initial color of the particle. |
Init Color 2 | White | The second value of the initial color range. |
Preserve Highlights | false | If true, the tint effect of the initial color on the particle texture will decay when the texture color gets whiter. |
The following image shows two examples of the initial color setting.
Size
The initial size configuration panel controls the particle size when it's emitted.
Property | Default value | Description |
---|---|---|
Init Size mode | Constant | Sets whether the initial size is Constant (Init Size) or RandomBetweenTwoConstants (a random value between Init Size and Init Size 2). |
Init Size | 0.1 | The initial size of the particle. |
Init Size 2 | 0.1 | The second value of the initial size range. |
The following image shows two examples of the initial size setting.
Speed
The initial speed configuration panel controls the particle speed magnitude (in space units per second) when it's emitted. The initial Velocity of the particle will be the initial direction vector multiplied by the Speed of the particle.
Property | Default value | Description |
---|---|---|
Init Speed mode | Constant | Sets whether the initial speed is Constant (Init Speed) or RandomBetweenTwoConstants (a random value between Init Speed and Init Speed 2). |
Init Speed | 0.1 | The initial speed of the particle. |
Init Speed 2 | 0.1 | The second value of the initial speed range. |
The following video shows how different speed parameters behave:
Angle
The initial angle configuration panel controls the particle quad angle when it's emitted.
Property | Default value | Description |
---|---|---|
Init Angle mode | Constant | Sets whether the initial angle is Constant (Init Angle) or RandomBetweenTwoConstants (a random value between Init Angle and Init Angle 2). |
Init Angle | 0 | The initial angle of the particle in degrees. |
Init Angle 2 | 0 | The second value of the initial angle range in degrees. |
The following image shows three examples of the initial angle setting.
Angular Speed
The angular speed configuration panel controls the particle rotation speed when it's emitted. The quad will spin facing the camera with this angular speed.
Property | Default value | Description |
---|---|---|
Init Angular Speed mode | Constant | Sets whether the initial angular speed is Constant (Init Angular Speed) or RandomBetweenTwoConstants (a random value between Init Angular Speed and Init Angular Speed 2). |
Init Angular Speed | 0 | The initial angular speed of the particle. |
Init Angular Speed 2 | 0 | The second value of the initial angular speed range. |
The following video shows a random angular speed of [-180, 180].
Shapes
The Shape group defines all the properties to manage the volume or surface where the particles can be emitted.
Property | Default value | Description |
---|---|---|
Shape type | Point | Enum that contains all the shape emitter types. Currently, the options are: |
More information about these shapes here: Particle Shapes.
Spawn
The Spawn property defines when and how many particles are emitted.
Property | Default value | Description |
---|---|---|
Spawn type | Rate | Enum that contains all the spawn emitter types. Currently, the options are: |
More information about the spawn management here: Particle Spawn.
Color Over Life
These properties manage how the particle color changes over its life. In a future Evergine version, we will implement a proper Gradient Color editor, but in the meantime, we've defined the color over the life of the particle using the following properties according to this diagram:
Note
The color of the gradient is applied as a tint over the initial color of the particle.
Property | Default value | Description |
---|---|---|
Color Animated | false | Sets whether the particle color is animated throughout its lifetime. |
Color Over Life 1 | Transparent | Color of the first point of the animation. |
Color Over Life 2 | White | Color of the second point of the animation. |
Color Over Life 3 | White | Color of the third point of the animation. |
Color Over Life 4 | Transparent | Color of the fourth point of the animation. |
Color Over Life 2 Position | 0.2 | Position in the curve of the second point of the animation. Must be in the range [0, 1]. |
Color Over Life 3 Position | 0.8 | Position in the curve of the third point of the animation. Must be in the range [0, 1]. |
The following video shows a particle system using the color gradient previously seen.
Size Over Life
These properties control how the particles change their size over their lifetime. In a future Evergine version, we will implement a proper Curve Editor, but in the meantime, we've defined the size over life of the particle using the following properties according to this diagram:
Note
The size of the curve is applied as a multiplier over the initial size of the particle.
Property | Default value | Description |
---|---|---|
Size Animated | false | Sets whether the particle size is animated throughout its lifetime. |
Size Over Life 1 | 0 | Size multiplier of the first point of the animation. |
Size Over Life 2 | 1 | Size multiplier of the second point of the animation. |
Size Over Life 3 | 1 | Size multiplier of the third point of the animation. |
Size Over Life 4 | 0 | Size multiplier of the fourth point of the animation. |
Size Over Life 2 Position | 0.2 | Position in the curve of the second point of the animation. Must be in the range [0, 1]. |
Size Over Life 3 Position | 0.8 | Position in the curve of the third point of the animation. Must be in the range [0, 1]. |
The following video shows a particle system using the size curve previously seen.
Noise
The noise panel allows the application of a turbulence field into the particle system. All the properties of this panel are used to control the parameters of that field.
Property | Default value | Description |
---|---|---|
Noise Enabled | false | Sets whether the particle system is affected by the noise field. |
Noise Strength | 1 | How much the particles are affected by the noise field. A larger value will generate more chaos! |
Noise Size | 1 | The scale of the noise field. Large values cause more wavy noise; small values will change the behavior among close particles. |
Noise Frequency | 1 | Represents the period at which the noise data is sampled. |
Noise Speed | (1, 1, 1) | The velocity vector at which the noise field is moving. |
The following video shows a particle system affected by noise (Strength 1, Size 10, Frequency 1, Speed (0, -1, 0)).
Forces
This panel allows the particle system to be affected by forces and to tune which ones can affect them.
The different available forces are explained in this article.
Property | Default value | Description |
---|---|---|
Forces Enabled | false | Sets whether the particle system is affected by the forces. |
Forces Category | All | The particle system is only affected by forces with the same Forces Category property. |
The following video shows a particle system affected by a Point Attractor Force.