Particle editor 190

From PopcornFX
(Redirected from Particle editor)
Jump to: navigation, search

See also : Editor interface overview.

This page is for version v1.9.0 and above
For the latest version of PopcornFX, see: Particle editor
For previous versions of PopcornFX, see the following pages:


The particle editor is the main editor you'll use to author effects.

PopcornFx Particle editor main view

It is split in 7 panels :

Realtime viewport

The realtime viewport is the main feedback area, where you will see the rendering of your effect, with various optional post-effects, and realtime HUD statistics/infos.

PopcornFx Particle editor realtime viewport

Main pane

To rotate the view, right mouse-click & drag.
To pan the view, middle mouse-click & drag.
use W, A, S, D, Q, E to move around in first-person.
use the mouse-wheel to change the depth of the camera.

Alt+Shift + middle mouse-click will orbit the camera.

NOTE : If you use the synergy [[1]] application to share keyboard & mice across multiple machines, it might sometimes cause problems with the mouselook, when the cursor wraps around the viewport.

Keyboard shortcuts

Keys Action
[Ctrl]+[S] Save file to disk
[Ctrl]+[Shift]+[S] Save file as (renames current file and saves)
[Ctrl]+[B] Bake selected assets (only if output platforms are defined in the project settings) see also content browser : baking
[Ctrl]+[P] Show preferences panel (dev mode, watch out with these)
[Ctrl]+[Z] Undo
[Ctrl]+[Y] Redo
[Ctrl]+[R] Reset effect
[Ctrl]+[D] Show debug shapes
[Ctrl]+[G] Show grid
[Ctrl]+[N] Show particle-medium bounds
[Ctrl]+[H] Hide all layers
[Shift]+[E] Reset view to saved view coordinates
[Ctrl]+[E] Fit view to particles
[Q] Selection mode : None
[W] Selection mode : Translate
[E] Selection mode : Rotate
[R] Selection mode : Scale
[SPACE] Spawn effect instance on backdrop under mouse cursor
[F2] / [Shift]+[F2] Cycle playback modes: Pause sim -> Pause sim & renders -> Play
[F3] / [Shift]+[F3] Cycle render-modes
[F4] / [Shift]+[F4] Cycle debug render-buffers
[F8] / [Shift]+[F8] Cycle debug panels
[F9] / [Shift]+[F9] Cycle fps-limits: 15 -> 30 -> 60 -> unlimited
[F11] Fullscreen (Alt+F4 to exit, then F11 again)
[F5] Toggle between edition and simulation mode (legacy)

Top toolbar

PopcornFx Particle editor top toolbar

  • 1 : Save as (Ctrl+shift+S)
  • 2 : Mute sounds
  • 3 : Editor sound volume
  • 4 : Capture thumbnail
  • 5 : Capture view coordinates
  • 6 : Fullscreen mode
  • 7 : Start simulation
  • 8 : Currently unused
  • 9 : Toggle debug rendering
  • 10 : Draw mode : [F3] / [Shift]+[F3]
    • Solid
    • Wireframe
    • Overdraw
    • Overdraw(heatmap)
  • 11 : FPS-limiter : [F9] / [Shift]+[F9]
  • 12 : Post-FX :
    • Distortion
    • Scene blur / DOF
    • HDR / Glow
    • Gamma correction
  • 13 : Selection mode :
    • None [Q]
    • Translate [W]
    • Rotate [E]
    • Scale [R]
  • 14 : Picking mode
  • 15 : Playback mode : [F2] / [Shift]+[F2]
    • Play
    • Pause updates
    • Pause updates and rendering
  • 16 : Simulation speed slider (0x - 8x)
    • (right-click for qui access to presets)
  • 17 : Reset particle system : [Ctrl]+[R]
  • 18 : Stop effect
  • 19 : Alignment constraints
    • Align to contact surface
    • Align to camera yaw
    • Align to camera pitch
    • Inherit projected cursor velocity
  • 20 : Show grid : [Ctrl]+[G]
  • 21 : Draw particle medium bounding boxes : [Ctrl]+[N]
  • 22 : Show particles debug
  • 23 : Show the bounds of light-particles
  • 24 : Interactive script mode
  • 25 : Show performance charts in HUD statistics
  • 26 : Show particle page debug
  • 27 : Enable particle system looping

Bottom toolbar

PopcornFx Particle editor bottom toolbar

  • 1 : Camera position
  • 2 : Camera orientation (in degrees around each axis)
  • 3 : Reset the camera coordinates to the saved view coordinates for this effect
    • (see button no.4 above in the 'Top toolbar')
  • 4 : Profiler : Enable display & capture
  • 5 : Profiler : Toggle between standard and memory views
  • 6 : Profiler : Capture callstacks
  • 7 : Profiler : Pause capture
  • 8 : Profiler : Manually record an extra-frame when capture is paused
  • 9 : Profiler : Toggle compact view
  • 10 : Profiler : Node search/filter

HUD statistics

PopcornFx Particle editor HUD statistics PopcornFx Particle editor HUD statistics

  • 1 : List of layers with total number of particles in each layer.
  • 2 : Performance indicators, green is good, red should be avoided. These can be configured in the preferences panel.
  • 3 : Memory pie-chart (shows which layer uses the most memory)
  • 4 : Overdraw pie-chart (shows which layer draws the most pixels)
  • 5 : Loop/Spawn/Reset/Stop indicator
  • 6 : Global stats. Avg bytes/particles, and total particle count in the scene.
  • 7 : Render-medium information

Particle treeview

PopcornFx Particle editor particle treeview

1 : Editor properties

When selected, displays in the node properties panel the configuration of the Fx editor for this specific effect.

2 : Backdrop panel

When selected, displays in the node properties panel the list of backdrops available.

3 : Physics environment panel

When selected, displays in the node properties panel the physics environment configuration.

4 : Audio environment panel

When selected, displays in the node properties panel the audio configuration.
Allows to set a background sound that will loop. Note that this is only an edition helper for files using the audio sampler.
The audio sound will NOT be saved in the final effect file.

5 : Global properties

Global particle-related properties, controls the runtime and editor, not saved in the .pkfx

6 : SubEntityTree


7 : Spawner : Effect root

Action group, contains a list of other action groups, or raw actions (particle layers, sounds, ...)

8 : Particle layer

This is the basic particle spawner, that will emit particles in the world.

9 : Layer groups

The layer groups contain layers that will NOT be automatically run when the FX is spawned, but that can be manually triggered by particle events.

10 : Action group

This custom action group named 'LightningHit' contains various other sub-layers and action groups

11 : Particle fields

When selected, displays all the particle fields of that layer in the node properties.

12 : Particle events

Allows to create particle events, and tell what other action should be spawned.

13 : Particle samplers
14 : Particle renderers list
15 : Particle renderer

here, a billboard renderer.

16 : Spawner script

This is where the particle initialization script is located

17 : Particle state & evolvers

The particle state contains the list of particle evolvers

18 : Particle evolver

Here, a physics evolver that's responsible for making particles move around and be affected by gravity, friction, etc..

19 : Action group

This custom action group named 'HitSound' contains various sound instances. It is set to 'random pick' mode

20 : Sound layer
21 : Effect loop delay

If the effect is in loop mode (see the top toolbar in the realtime viewport), tells the editor the time between each repeat.

22 : Action group execution mode

Allows you to change the group execution mode, you can choose between:

  • Parallel execution (DEFAULT) : all actions in the group are launched simultaneously
  • Serial execution : waits for the previous action to complete before launching the next-one in the list
  • Random execution : randomly picks one action in the list, and runs it.
23 : Global effect visibility toggle

When unchecked, hides the effect

24 : Renderer visibility toggle

When unchecked, hides the element it applies to (here, a particle renderer)

Node properties

When you select a particle node in the treeview, all its properties are displayed an can be tweaked in the node properties panel:

PopcornFx Particle editor node properties

1 : Node description
2 : Sort properties by alphabetical order
3 : Search properties
4 : Property-group

Properties are usually grouped by logical functionality

5 : Editable property
6 : Inactive property

Some properties are active depending on other properties.
Here, the 'WorldInterationMode' should be set to a value other than 'None' for 'BounceRestitution' to be activated

7 : Default-value toggle

When a property differs from the node's default value, this icon will light-up.
Click on it to restore the default value.

8 : Property expansion toggle

Some properties have alternate/more detailed views

9 : Property value box
10 : drop-down property
11 : Slider property
12 : Slider value

Build report

The effect build report is a powerful tool to quickly spot any problems in your effect.
as soon as a script or any other node contains an error, the node and all its parents will be highlighted in bright red in the treeview (orange for warnings)

Hovering the mouse cursor over any of the reported problems in the 'build report' panel will display a tooltil with more details about what happened.


Double-clicking on any of the entries in the build report will focus the incriminating node in the treeview, by unrolling its parents until the node is visible, then select it.


Here, the spawner-script that produced the error was selected, and the errorneous line highlighted in red.
We assigned a value to 'SizeCoeffs', where it should have been 'SizeCoeff'

Effect attributes

The particle effect attributes panel allows you to add new attributes to your effect, quickly test different values, and write comments for people that will use your effect to tell them what the attribute does.

ParticleEditor 05.png

1 : Attribute name

This is the name you will use in the rest of the effect to reference the attribute
(in scripts, in spawners...)
Double-click on the name for quick-edit

2 : Attribute description

The first line of the description is displayed inline.
The whole description is displayed in a tooltip.

3 : Create new attribute button
4 : Attribute value slider

This doesn't change the default value of the attribute, it is an editor-only testing value,
and isn't saved from one run of the editor to another.

5 : Numerical value of the attribute
6 : Expanded attribute

Allows you to edit all the attribute's properties.

7 : AttributeName
8 : AttributeType
9 : AttributeScope

Temporarily unused.

10 : AttributeDescription

Full description of the attribute. type "\n" to create a new line.
Only the first line will be displayed next to the attribute name in the collapsed view.
The tooltip will show the full description.

11 : DefaultValue

Initial value of the attribute, if the gameplay code doesn't wish to change it.

12 : HasMin

Tells if the attribute should have a minimum value

13 : HasMax

Tells if the attribute should have a maximum value

14 : MinValue

Minimum value the attribute may have. It will be clamped to this value if 'HasMin' is set.

15 : MaxValue

Maximum value the attribute may have. It will be clamped to this value if 'HasMax' is set.

16 : Save current value as default

Will take the sliders values of that attribute and set them as the default value.

17 : Expand attribute

Shows all the attribute's properties so you can edit them

18 : Delete attribute

Removes the attribute

19 : Reset to default value

Note : when adding or removing attributes, you might need to reset your effect.

Node viewer

The particle node viewer panel can display various editors:

Spline editor

PopcornFx Particle editor node viewer : spline editor

Script editor

PopcornFx Particle editor node viewer : script editor

Procedural turbulence viewer

PopcornFx Particle editor node viewer : procedural turbulence

Texture viewer

PopcornFx Particle editor node viewer : textures

Texture atlas viewer

PopcornFx Particle editor node viewer : texture atlases

See also the Atlas builder Popcorn-Fx Atlas builder icon page for more details.