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.
You have the following controls to edit control curves:
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.
Use this param to control the alpha strength (as per above example) over the lifetime of the particle.
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.
Enables/disables current effect.
A free-form text field for any comment on the effect.
Specifies the source of default (starting) parameters for the effect.
The Inheritance source has the following consequences:
Contains 4 options:
The total number of particles at any one time that will be active. Determines emission rate (Count / Particle Life Time).
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.
If false, all particles are emitted at once, and the emitter then dies. If true, particles are emitted gradually over the Emitter Life Time.
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.
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.
XYZ define a spawning position away from the emitter itself, in emitter space.
XYZ define the range of a random spawning box, in both directions, away from the position offset.
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.
Specify the location of emission when the emitter is attached to geometry, or when the parent particle has geometry:
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.
The amount to rotate, in degrees from Y axis. (0 = straight up, 90 = Horizontal, 180 = straight down).
The amount to rotate the new axis about the Y axis. (0/360 = North, 90 = West, 180 = South, 270).
Focus Gravity Dir
DEPRECATED (use Gravity Scale instead)
Focus Rotates Emitter
If true, changing the focus direction with the above parameters will also rotate the orientation of the Offset parameters. If false, Offset vectors remain in emitter orientation.
Emit Offset Dir
If true, changes each particles emission direction to be aligned with its offset from the origin.
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).
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.
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.
Applies only to 2D particles. Determines how the sprite blends with the background.
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.
Splits the texture into tiles, for variation and animation:
Browse and choose the material used for 2D sprite particles.
If supported by hardware, enables tessellation, rendering more vertices within the sprite.
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.
Apply a rendering technique that softens the intersection between sprites and nearby objects, to prevent unnatural seams.
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,
For Geometry particles, use the geometry pivot for centering.
The alpha blending value of the particle, multiplying the texture's alpha value. For Additive blending, serves as a multiplier.
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
Pick the color to apply to the particle:
Parameters in this tab control the lighting of the particle.
Multiplier to the particle color for dynamic (diffuse) lighting.
Fraction of diffuse lighting that is applied to unlit particle directions.
Multiplier to the particle color for constant emissive lighting. This can make a glowish appearance to the particle by adding some value.
Allows shadows to be cast on the particles.
Allows particles to cast shadows.
This is only for Geometry particles.
Not Affected By Fog
Causes particles to ignores scene fog.
Allows the particle to receive global illumination from the environment.
Use nearest deferred cubemap for diffuse lighting.
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.
Browse and choose the sound asset to play with the emitter.
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.
For 2D particles, the world sprite radius. For 3D particles, the scale applied to the geometry.
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.
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.
Adds this many pixels to particles true size when rendering. This is useful for important effects that should always be visible even at distance.
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.
The initial speed of particles.
What fraction of initial velocity is inherited from the particle's parent.
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.
Multiple of world gravity to apply to particles. Most physicalized particles should be set to 1 (use Air Resistance to provide drag).
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.
Adds a spiral movement to the particles, with the specified radius. The axis of the spiral is set from the particle's velocity.
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.
Particles loop within a region around the camera, defined by Camera Min/Max Distance (under the visibility tab).
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.
The initial angle applied to the particles upon spawning, in degrees.
Random variation (bidirectional) to Init Angles , in degrees.
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.
Select the type of physics to apply to the particle:
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.
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.
Determine surface material type for collision behavior. If set, overrides Bounciness and Dynamic Friction below.
Control the elasticity for collision response. Overridden by Surface Type if set. (Special value: if -1, particle dies on first collision).
The coefficient of dynamic friction. Overridden by Surface Type if set.
Control the fraction of the particle's visible radius to use for the physical radius.
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.
Camera Max/Min Distance
The camera range that particles render in. Defaults are 0, specifying unlimited range.
View Distance Adjust
Multiplier to the automatically computed fade-out camera distance.
Modifies draw order of sub effects. Sub effects are rendered by lowest Draw Last value first, or in list order if equal.
Render particles in a near 1st-person space (with weapons etc).
Draw on Top
Render particles on top of everything (no depth test).
For use in Vis Areas:
For use with the Ocean / Water Volumes:
Parameters in this tab Includes advanced appearance, movement and optimization settings.
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.
Multiplier to thermal vision.
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.
Render particles in separate half-res pass, reducing rendering cost.
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.
The minimum system configuration level for the effect. If the config is low than what is set here, the item will not be displayed.
The maximum system configuration level for the effect. IF the config is higher than what is set here the item will not be displayed.
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.