Movatterモバイル変換


[0]ホーム

URL:


Defold logo




Particle FX

Particle effects are used to visually enhance games. You can use them to create explosions, blood splatter, trails, weather or any other effect.

ParticleFX Editor

Particle effects consists of a number of emitters and optional modifiers:

Emitter
An emitter is a positioned shape that emits particles uniformly distributed over the shape. The emitter contains properties that controls the particle spawning as well as the image or animation, lifespan, color, shape and velocity of the individual particles.
Modifier
A modifier affects the velocity of spawned particles to make them accelerate or slow down in a particular direction, move radially or swirl around a point. Modifiers can affect a single emitter’s particles or a particular emitter.

Creating an effect

SelectNew... ▸ Particle FX from the context menu in theAssets browser. Name the new particle effect file. The editor will now open the file using theScene Editor.

TheOutline pane shows the default emitter. Select the emitter to bring up its properties in theProperties pane below.

Default particles

To add a new emitter to the effect,right click the root of theOutline and selectAdd Emitter ▸ [type] from the context menu. Note that you can change the type of the emitter in the emitter properties.

To add a new modifier,right click the location of the modifier in theOutline (the effect root or a particular emitter) and selectAdd Modifier, then select the modifier type.

Add modifier

Add modifier select

A modifier that sits on the effect root (not childed to an emitter) affects all particles in the effect.

A modifier that is added as a child to an emitter affects only that emitter.

Previewing an effect

  • SelectView ▸ Play from the menu to preview the effect. You may need to zoom out the camera to see the effect properly.
  • SelectView ▸ Play again to pause the effect.
  • SelectView ▸ Stop to stop the effect. Playing it again restarts it from its initial state.

When editing an emitter or modifier the result is immediately visible in the editor, even with the effect paused:

Edit particles

Emitter properties

Id
Emitter identifier (used when setting render constants for specific emitters).
Position/Rotation
Transform of the emitter relative the ParticleFX component.
Play Mode
Controls how the emitter plays:
  • Once stops the emitter after reaching its duration.
  • Loop restarts the emitter after reaching its duration.
Size Mode
Controls how flipbook animations will be sized:
  • Auto keeps the size of each flipbook animation frame to the source image.
  • Manual sets the particle size according to the size property.
Emission Space
Which geometrical space the spawned particles will exist:
  • World moves the particles independent of the emitter.
  • Emitter moves the particles relative to the emitter.
Duration
The number of seconds the emitter should emit particles.
Start Delay
The number of seconds the emitter should wait before emitting particles.
Start Offset
The number of seconds into the particle simulation the emitter should start, or in other words how long the emitter should prewarm the effect for.
Image
The image file (Tile source or Atlas) to use for texturing and animating the particles.
Animation
The animation from theImage file to use on the particles.
Material
The material to use for shading the particles.
Blend Mode
Available blend modes areAlpha,Add andMultiply.
Max Particle Count
How many particles originating from this emitter that can exist at the same time.
Emitter Type
The shape of the emitter
  • Circle emits particles from a random location inside a circle. The particles are directed outwards from the center. The circle diameter is defined byEmitter Size X.

  • 2D Cone emits particles from a random location inside a flat cone (a triangle). The particles are directed out of the top of the cone.Emitter Size X defines the width of the top andY defines the height.

  • Box emits particles from a random location inside a box. The particles are directed up along the box’ local Y-axis.Emitter Size X,Y andZ defines width, height and depth respectively. For a 2D rectangle, keep the Z size at zero.

  • Sphere emits particles from a random location inside a sphere. The particles are directed outwards from the center. The sphere diameter is defined byEmitter Size X.

  • Cone emits particles from a random location inside a 3D cone. The particles are directed out through the top disc of the cone.Emitter Size X defines the diameter of the top disc andY defines the height of the cone.

emitter types

Particle Orientation
How the emitted particles are oriented:
  • Default sets the orientation to unit orientation
  • Initial Direction keeps the initial orientation of the emitted particles.
  • Movement Direction adjusts the orientation of the particles according to their velocity.
Inherit Velocity
A scale value of how much of the velocity of the emitter the particles should inherit. This value is only available whenSpace is set toWorld. The velocity of the emitter is estimated every frame.
Stretch With Velocity
Check to scale any particle stretch in the direction of movement.

Blend modes

TheBlend Mode property defines how the component graphics should be blended with the graphics behind it. These are the available blend modes and how they are calculated:

Alpha
Normal blending:src.a * src.rgb + (1 - src.a) * dst.rgb
Add
Brighten the background with the color values of the corresponding pixels of the component:src.rgb + dst.rgb
Multiply
Darken the background with values of the corresponding pixels of the component:src.rgb * dst.rgb
Screen
Opposite of Multiply. Brighten background and values of the corresponding pixels of the component:src.rgb - dst.rgb * dst.rgb

Keyable emitter properties

These properties have two fields: a value and a spread. The spread is a variation which is applied randomly for each spawned particle. E.g. if the value is 50 and the spread is 3, each spawned particle will get a value between 47 and 53 (50 +/- 3).

Property

By checking the key button, the value of the property is controlled by a curve over the duration of the emitter. To reset a keyed property, uncheck the key button.

Property keyed

TheCurve Editor (available among the tabs in the bottom view) is used to modify the curve. Keyed properties can’t be edited in theProperties view, only in theCurve Editor.Click and drag the points and tangents to modify the shape of the curve.Double-click on the curve to add control points. To remove a control point,double click on it.

ParticleFX Curve Editor

To auto-zoom the Curve Editor to display all curves, pressF.

The following properties can be keyed over the play time of the emitter:

Spawn Rate
The number of particles to emit per second.
Emitter Size X/Y/Z
The dimensions of the emitter shape, seeEmitter Type above.
Particle Life Time
The lifespan of each spawned particle, in seconds.
Initial Speed
The initial velocity of each spawned particle.
Initial Size
The initial size of each spawned particle. If you setSize Mode toAutomatic and use a flipbook animation as image source, this property is ignored.
Initial Red/Green/Blue/Alpha
The initial color component tint values for the particles.
Initial Rotation
The initial rotation values (in degrees) for the particles.
Initial Stretch X/Y
The initial stretch values (in units) for the particles.
Initial Angular Velocity
The initial angular velocity (in degrees/second) of each spawned particle.

The following properties can be keyed over the life time of the particles:

Life Scale
The scale value over each particle’s life.
Life Red/Green/Blue/Alpha
The color component tint value over each particle’s life.
Life Rotation
The rotation value (in degrees) over each particle’s life.
Life Stretch X/Y
The stretch value (in units) over each particle’s life.
Life Angular Velocity
The angular velocity (in degrees/second) over each particle’s life.

Modifiers

There are four types of modifiers available that affect the velocity of particles:

Acceleration
Acceleration in a general direction.
Drag
Reduces the acceleration of particles proportional to the particle velocity.
Radial
Either attracts or repels particles towards/from a position.
Vortex
Affects particles in a circular or spiraling direction around its position.

modifiers

Modifier properties

Position/Rotation
The transform of the modifier relative its parent.
Magnitude
The amount of effect the modifier has on the particles.
Max Distance
The maximum distance within which particles are affected at all by this modifier. Only used for Radial and Vortex.

Controlling a particle effect

To start and stop a particle effect from a script:

-- start the effect component "particles" in the current game objectparticlefx.play("#particles")-- stop the effect component "particles" in the current game objectparticlefx.stop("#particles")

To start and stop a particle effect from a GUI script see theGUI Particle FX manual for more information.

A particle effect will continue to emit particles even if the game object the particle effect component belonged to is deleted.

See theParticle FX reference documentation for more information.

Material constants

The default particle effect material has the following constants that can be changed usingparticlefx.set_constant() and reset usingparticlefx.reset_constant() (refer to theMaterial manual for more details):

tint
The color tint of the particle effect (vector4). The vector4 is used to represent the tint with x, y, z, and w corresponding to the red, green, blue and alpha tint. Refer to theAPI reference for an example.

Project configuration

Thegame.project file has a fewproject settings related to particles.


[8]ページ先頭

©2009-2025 Movatter.jp