User Tools

Site Tools


gamedev:deigde:editors:particleemitter

IGDE Particle Emitter Editor

The particle emitter editor allows to edit Particle Emitters for your game.

Particle emitter preview

The editor window composes of the preview view, properties panel on the left side and the property curves on the bottom side.

Preview view

The preview window shows the preview of the particle emitter. See 3D-View Navigation for how to navigate the view.

Property Curves

This view shows the selected Property Curves. See Bezier Curve Editor for usage.

Each property has multiple curves that can be defined. Defined curves are marked with a plus sign, undefined curves with a minus sign.

The Value curve is used to calculate the property value at the time a particle is cast. The input of the curve is the Controller Value parameter from the Type → Parameters panel. The output is used as parameter value.

The Spread curve is used to calculate the spread applied to the property value at the time a particle is cast. The input of the curve is the Controller Spread parameter from the Type → Parameters panel. The output is added to the cast value (which can be from the above curve).

The Progress curve is used to calculate the property value of a cast particle relative to its lifetime. When particles are cast they are assigned a life-time (property value hence it can be dynamic). The input of the curve is the relative elapsed time since the particle has been cast (0 input value) and when it will die (1 input value). The output value is used as parameter value for the particle. If progress curve is used the value and spread curve are not used.

The Beam curve is used only if the particle type is of Beam type. The input of the curve is the relative distance of the particle along the beam (0 input value at start, 1 input value at end). The output value is used as parameter value for the particle. If beam curve is used the progress, value and spread curve are not used.

Type

Type panel

Particle emitters can have one or more Particle Types. Each type describes one kind of particles to emit with their own properties.

Emitter Sub Panel

Sets preview parameters of the particle emitter and are not type specific nor saved to file.

The Emit Burst determines if the particle emitter emits a burst of particles. If enabled particle emitter emits particles once immediately after being enabled with particle count taken from the Particle Count parameter. If disabled particles are cast continuously. Each time a particle is cast (and at the beginning when first enabled) the next cast interval is calculated from the Interval parameter. Once the time elapses particles are cast with the particle count taken from the Particle Count parameter.

The Lifetime defines the lifetime in seconds of particles in burst mode only. For regular particles the Time To Live parameter is used.

Type Sub Panel

The Type parameter is the display name of the type. Use the button next to it to show a context menu to add and remove types.

The Skin parameter defines the Skin resource to use for particles of this type.

The Model parameter defines an optional Model resource. If used particles are cast using the model geometry as source depending on the cast from value used. The model itself is not visible and can be used to cast particles from irregular shapes. If the model is not used particles are cast from the emitter position.

The Model Skin parameter defines the Skin resource to use for the cast model. This allows to modify casting behavior in greater detail using Skin Texture Properties.

The Cast From parameter defines how particles are cast from the cast model if used. Supported are Vertex to cast from model vertices, Face to cast from model surface or Volume to cast from enclosed model volume. Particles are evenly distributed across the potential source locations.

The Simulation Type parameter defines what type of particles are cast. Supported are the tapes Particle, Ribbon and Beam.

The Particle cast individual particles vanishing after their lifespan elapses.

The Ribbon type creates one ribbon geometry composing of all cast particles in the order they have been cast. The particles thus define a path the ribbon follows. Ribbon type is typically used for trails or tracers.

The Interval As Distance is used by ribbon types. By default the interval parameter defines the time span in seconds between casting particles. If this parameter is enabled the interval parameter is changed to define the distance in meters between casting particles. This is used to make ribbons trailing behind moving objects. If the object is not moving and this parameter is disabled particles will be generated in regular intervals at the same location which can cause troubles. If enabled new particles will only be cast if the object moves a certain distance.

The Physics Size parameter defines the radius of the collision sphere assigned to each particle. The physics size is usually 50% of the visual particle size.

Trail Sub Panel

Assigns a particle emitter to be used as trail for cast particles. An example are explosion debris which have a smoke trail behind them.

The Emitter parameter defines the particle emitter to use.

The Controller parameter defines the named controller in the trail emitter to assign particle attributes to. This allows to adjust the trail emitter depending on the particle state. For example if a controller name is set for Linear Velocity then the controller value will be set to the linear velocity of the particle.

Collision Sub Panel

The Response parameter defines how particles behavior colliding with other geometry. Supported are Destroy to destroy the particle and remove it, Physical Response to bounce particles physically or Custom Response to let game scripts calculate an appropriate collision response.

The Emitter parameter defines an optional particle emitter to use upon collisions. Emitter is used in burst mode.

The Min Impulse parameter defines the minimum impact impulse [Ns] before an emitter instance is created.

The Controller parameter defines the named controller in the collision emitter to assign particle attributes to. This allows to adjust the collision emitter depending on dynamic input. For example if a controller name is set for Linear Velocity then the controller value will be set to the linear velocity of the particle.

Parameters Sub Panel

Shows the list of all supported parameters for the particle type. Parameters with one or more curves defined are shown with a plus sign. All parameters with no curves defined are shown with a minus sign.

The Cast Range parameter defines the range of the cast value for newly cast particles. The cast value is randomly picked from between an including castValue-range → castValue+range.

The Cast Spread parameter defines the spread applied to the cast value for newly cast particles. The spread is added to the cast value.

The Controller Value parameter defines the controller to use as input for the Value Curve. If not set 0-input is used for the curve.

The Controller Spread parameter defines the controller to use as input for the Spread Curve. If not set 0-input is used for the curve.

Controllers

Controller panel

Controllers are used by game programmers to adjust the particle emitter. In general the artist defines the controller ranges but game programmers can overrule them to make their live easier. This does not interfere with the particle parameters. The output of the controller is the Value linearly mapped from the range Minimum Value → Maximum Value to the range 0 → 1.

Controllers are typically accessed by the game developer using the unique Controller Name (case sensitive). This allows to mix and match different animators with differing controller setups (count, ordering and ranges) as long as the required names are present.

The controller list is an ordered list. For this reason controllers are shown with their index number too. Game developers can use this index number as an alternative to controller names.

The Clamp value to range check box determines if the input value is clamped to the controller range or wraps around if going past the range.

The Freeze controller value is used only for preview purpose to stop a controller from updating its value dynamically.

View

View panel

The Camera panel shows the parameters of the camera in the preview view. The values can be manually edited.

The Sky panel defines the Sky resource to use in the preview view.

The Environment Object panel defines the Object Class to use as environment the particle emitter is previewed in.

The Preview panel defines parameters of the particle emitter preview caster. The emitter casts along the Z-axis (blue arrow, x/right=red, y/up=green).

The Burst Interval defines the time in seconds before the preview particle emitter is reset. This is used on burst type emitters only.

The Warm-Up Time can be used to simulate an emitter in a running state. This avoids the need to wait for a couple of seconds to test emitters in running condition.

The Enable Casting enables particle casting. Toggle this on and off to check how the emitter behaves.

You could leave a comment if you were logged in.
gamedev/deigde/editors/particleemitter.txt · Last modified: 2020/04/05 00:28 by dragonlord