This article breaks down the parameter categories that make up the particle editor and are used to customize particles.
Before proceeding with this article, you should familiarize yourself with the Particle Editor Overview article which covers the basics of the Particle Editor interface.
For advanced techniques, please see Particle Editor Advanced Techniques and the Particle Tutorials section.
You have the following controls to edit control curves:
Function | How To |
---|---|
Adding a key | Double-click the spline graph. |
Moving a key | Left-click a key and drag it around. |
Changing a key's tangents | Select the key and press Space. This toggles the spline tangents at that key between continuous and non-continuous. |
Deleting a key | Double-click an existing key, or select it and press Delete. |
Parameter | Description |
Emitter Strength | Use this param to control the alpha strength (as per above example) over the lifetime of the particle. |
Particle Life | Use this to control the alpha (as per above example) over the individual particles life time. |
Parameters in this tab control the particle amount & spawning location of the particles.
Parameter | Description |
---|---|
Enabled | Enables/disables current effect. |
Comment | A free-form text field for any comment on the effect. |
Inheritance | Specifies the source of default (starting) parameters for the effect.
The Inheritance source has the following consequences:
|
Spawn Indirection | Contains 4 options:
|
Count | The total number of particles at any one time that will be active. Determines emission rate (Count / Particle Life Time). |
Maintain Density | Increase emission rate (and particle count) when emitter moves to maintain the same spatial density as when motionless. The increase can be scaled from 0 to 1.
|
Parameters in this tab control the timing of the particles.
Parameter | Description |
---|---|
Continuous | If false, all particles are emitted at once, and the emitter then dies. If true, particles are emitted gradually over the Emitter Life Time. |
Spawn Delay | Delays the start of the emitter for the specified time. Useful to delay sub-effects relative to the overall emitter creation time. |
Emitter Life Time | If Continuous = true, specifies the life time of the emitter. 0 = infinite life time (default). Emitter Life Time does not apply to non-Continuous effects, which will always disappear as soon as they have emitted all of their particles. |
Pulse Period | If >0, the emitter will restart repeatedly at this interval. |
Particle Life Time | The life time of individual particles. Even after the emitter's life time has expired, spawned particles will live out their own life time. |
Remain While Visible | Particles in the effect will not die until the entire emitter is out of view. |
Parameters in this tab control the spawning locations of the particles.
Parameter | Description |
---|---|
Position Offset | XYZ define a spawning position away from the emitter itself, in emitter space. |
Random Offset | XYZ define the range of a random spawning box, in both directions, away from the position offset. |
Offset Roundness | Fraction of spawning volume corners to round. 0 = box shape, 1 = ellipsoid shape. |
Offset Inner Fraction | Ratio of inner to outer spawning volume. 0 = spawn within entire volume, 1 = spawn only at surface. |
Attach Type | Specify the location of emission when the emitter is attached to geometry, or when the parent particle has geometry:
|
Attach Form | When Attach Type is not None, Specifies the elements of the geometry (box or mesh) that particles will emit from:
|
Parameters in this tab control the focus direction (which is by default the emitter's +Y axis) and rotation value of sprites.
Parameter | Description |
---|---|
Focus Angle | The amount to rotate, in degrees from Y axis. (0 = straight up, 90 = Horizontal, 180 = straight down). |
Focus Azimuth | The amount to rotate the new axis about the Y axis. (0/360 = North, 90 = West, 180 = South, 270). |
Focus Camera Dir | Set focus direction to face camera. Amount can be scaled from 0 to 1. |
Focus Gravity Dir | DEPRECATED (use Gravity Scale instead) |
Focus Rotates Emitter | If true, changing the focus direction with the above parameters also rotates the orientation of the Offset parameters. If false, Offset vectors remain in emitter orientation. |
Emit Offset Dir | If true, change each particles emission direction to be aligned with its offset from the origin. |
Emit Angle | The angle deviation of an emitted particle from the focus axis (default local +Y). (0 = +Y straight up, 90 = comes out horizontal to the emitter, 180 = -Y straight down). Examples:
|
Facing | Applies only to 2D particles, Determine how the sprite is oriented in space. Texture orientation is further modified by rotational parameters:
|
Orient To Velocity | Forces Texture X axis aligned to direction of movement. Rotation parameters can rotate it further. |
Curvature | For Facing = Camera particles, sets how far the vertex normals are bent into a spherical shape, which affects lighting. |
Parameters in this tab control the basic appearance of the particle. It should be setup first, because this tab includes the Texture slot, generally used for most particles.
Parameter | Description |
---|---|
Blend Type | Applies only to 2D particles. Determines how the sprite blends with the background.
|
Texture | Browse and choose the texture used for 2D sprite particles. Displays a preview of the texture when the mouse cursor is over the input box. |
Texture Tiling | Splits the texture into tiles, for variation and animation:
|
Material | Browse and choose the material used for 2D sprite particles. |
Tessellation | If supported by hardware, enables tessellation, rendering more vertices within the sprite. |
Octagonal Shape | Renders sprites as octagons instead of quads, reducing pixel cost. Only to be used with textures that fit within an octagon, otherwise clipping will occur. |
Soft Particle | Apply a rendering technique that softens the intersection between sprites and nearby objects, to prevent unnatural seams. |
Geometry | Browse and choose 3D object to use for the particles. |
Geometry in Pieces | If true, and the Geometry asset contains multiple sub-objects, then the geometry will be emitted in split-up pieces, |
No Offset | For Geometry particles, use the geometry pivot for centering. |
Alpha | Controls the particle's opacity, for Blend Type = Alpha.. For Additive blending, serves as a multiplier. |
Alpha Clip | A set of parameters to customize how the particle Alpha value controls opacity and/or alpha test values. Each parameter below has 2 values, corresponding to their values when particle Alpha = 0 and 1. FinalOpacity = saturate( (TextureAlpha - SourceMin) / min(SourceWidth, 1 - SourceMin) ) * Scale
Examples:
|
Color | Pick the color to apply to the particle:
|
Parameters in this tab control the lighting of the particle.
Parameter | Description |
---|---|
Diffuse Lighting | Multiplier to the particle color for dynamic (diffuse) lighting. |
Diffuse Backlighting | Fraction of diffuse lighting that is applied to unlit particle directions.
|
Emissive Lighting | Multiplier to the particle color for constant emissive lighting. This can make a glowish appearance to the particle by adding some value. |
Receive Shadows | Allows shadows to be cast on the particles. |
Cast Shadows | Allows particles to cast shadows. This is only for Geometry particles. |
Not Affected By Fog | Causes particles to ignores scene fog. |
Global Illumination | Allows the particle to receive global illumination from the environment. |
Light Source | Causes each particle to create a deferred light. Color is equal to the Color value.
|
Parameters in this tab browse and control the sound files.
Parameter | Description |
---|---|
Start Trigger | Browse and choose the sound asset to play with the emitter. |
Stop Trigger | Browse and choose the sound asset to play with the emitter. |
SoundFX Param | Modulate value to apply to the sound. Its effect depends on how the individual sound's "particlefx" parameter is defined. |
Sound Control Time | Control how long the sound plays:
|
Parameters in this tab control the size and shape of the sprite.
Parameter | Description |
---|---|
Size | For 2D particles, the world sprite radius. For 3D particles, the scale applied to the geometry. |
Aspect | The X-to-Y axis ratio. Default = 1; >1 stretches in X direction, <1 in Y direction. |
PivotX, PivotY | Move the pivot point of the sprite. Defaults = 0 (texture center); range +/- 1. |
Stretch | The amount of stretch applied to the particle in the direction of travel, in seconds (based on current velocity). Stretches in both directions by default.
|
Tail Length | Length of particle's tail in seconds. Particle texture will be stretched out through the tail.
If Tessellation is set, the tail will be rendered as a smoothly interpolated curve between tail segments. |
Min Pixels | Adds this many pixels to particles true size when rendering. This is useful for important effects that should always be visible even at distance. |
Connection | Causes all particles to be rendered in a connected line, in sequence. Emission sequences separated by a Pulse Period produce separate polygons.
If Tessellation is set, the stream will be rendered as a smoothly interpolated curve between particles. |
Parameters in this tab control the movement of the sprite.
Parameter | Description |
---|---|
Speed | The initial speed of particles. |
Inherit Velocity | What fraction of initial velocity is inherited from the particle's parent. |
Air Resistance | How much to react against the global wind speed. Units are 1/seconds. The higher the number, the faster particles will reach wind speed (or rest if no wind). |
Rotational Drag Scale | Fraction of Air Resistance applied to slow down particle rotation. If 0 (default), only particle velocity is slowed, not rotation. |
Wind Scale | Multiplier to environment wind, to use when computing particle drag. |
Gravity Scale | Multiple of world gravity to apply to particles. Most physicalized particles should be set to 1 (use Air Resistance to provide drag). |
Acceleration | The constant acceleration applied to particles, in world space (X,Y,Z). |
Turbulence 3D Speed | Adds a 3D random turbulent movement to the particle, with the specified average speed. |
Turbulence Size | Adds a spiral movement to the particles, with the specified radius. The axis of the spiral is set from the particle's velocity. |
Turbulence Speed | When Turbulence Size > 0, the angular speed, in degrees/second, of the spiral motion. |
Move Rel Emitter | Forces particle motion in emitter space; particles will move with its emitter.
|
Bind Emitter to Camera | Forces the emitter to relocate to the main camera's position. Useful (with Space Loop) for making a rain or snow effect, which the player cannot pass by. |
Space Loop | Particles loop within a region around the camera, defined by Camera Min/Max Distance (under the visibility tab). |
Target Attraction | Specifies if particles are attracted to a target. This causes them to orbit toward the specified target position, as controlled by the sub-parameters below.
|
Parameters in this tab control the focus direction (which is by default the emitter's +Y axis) and rotation value of sprites.
Parameter | Description |
---|---|
Init Angles | The initial angle applied to the particles upon spawning, in degrees. |
Random Angles | Random variation (bidirectional) to Init Angles , in degrees. |
Rotation Rate | Constant particle rotation, in degrees/second. The axes are the same as for Init Angles. |
Random Rotation Rate | Random variation (bidirectional) to Rotation Rate , in degrees/second. |
Parameters in this tab control the physical setup for the particles.
Parameter | Description |
---|---|
Physics Type | Select the type of physics to apply to the particle:
|
Collide Terrain | Includes terrain in particle collisions. |
Collide Static Objects | Includes non-terrain, static objects in particle collisions. This is expensive. |
Collide Dynamic Objects | Includes non-terrain, dynamic objects in particle collisions. This is very expensive. |
Collision Fraction | Fraction of emitted particles that actually perform collisions. |
Collision Cutoff Distance | Maximum distance from camera at which collisions are performed (0 = infinite). |
Max Collision Events | Limits the number of collisions the particle can have in its physics simulation. |
Surface Type | Determine surface material type for collision behavior. If set, overrides Bounciness and Dynamic Friction below. |
Bounciness | Control the elasticity for collision response. Overridden by Surface Type if set. (Special value: if -1, particle dies on first collision). |
Dynamic Friction | The coefficient of dynamic friction. Overridden by Surface Type if set. |
Thickness | Control the fraction of the particle's visible radius to use for the physical radius. |
Density | Control the density of particle, in kg/m^3. An example of a value which is physically correct, is for Water = 1000. |
Parameters in this tab control the visibility of the particles.
Parameter | Description |
---|---|
View Distance Adjust | Multiplier to the automatically computed fade-out camera distance. |
Camera Max/Min Distance | The camera range that particles render in. Defaults are 0, specifying unlimited range. |
Camera Distance Offset | Offset the emitter away from the camera. |
Sort Offset | Bias the distance used for sorting. Can be used to customise the sort order within an emitter tree: by default sub-emitters render in the order they are listed in the effect. A bias of 0.01 or greater will override that order. Larger biases can be used to adjust the sorting order with respect to other transparent objects in the level. |
Draw Near | Render particles in a near 1st-person space (with weapons etc). |
Draw on Top | Render particles on top of everything (no depth test). |
Visible Indoors | For use in Vis Areas:
|
Visible Underwater | For use with the Ocean / Water Volumes:
|
Parameters in this tab Includes advanced appearance, movement and optimization settings.
Parameter | Description |
---|---|
Force Generation | Adds an additional force generated by the emitter:
|
Fill Rate Cost | Multiplier to this emitter's contribution to total fill rate, which affects automatic culling of large particles when the global limit is reached. |
Heat Scale | Multiplier to thermal vision. |
Sort Quality | Specifies more accurate sorting of new particles into emitter's list. Particles are never re-sorted after emission, to avoid popping resulting from changing render particle order.
|
Half Res | Render particles in separate half-res pass, reducing rendering cost. |
Streamable | Texture or geometry assets are allowed to stream from storage, as normal. |
Parameters in this tab control advanced configurations. These settings limit an effect to only be enabled on certain platform configurations. This allows you to create variant effects for different configurations.
Parameter | Description |
---|---|
Config Min | The minimum system configuration level for the effect. If the config is low than what is set here, the item will not be displayed. |
Config Max | The maximum system configuration level for the effect. IF the config is higher than what is set here the item will not be displayed. |
DX11 | Define if the effect should be used with the DirectX 11 renderer:
|
A practical use for these settings would be if you have the same sub-effect duplicated (but have a cheap & expensive variation) you can force either particle to play on the desired config spec, so the low spec will use the cheaper version, and the high spec will use the expensive one.
So for example, reserve a complex & crazy physics (Rigid Body) based sub-effect for the Config Min = Very High. Then have a cheaper physicalized version (simple Collision) based sub-effect that has a Config Max = High.