Directional Drift
Directional Drift is used when a custom particle should travel across the Scene in a selected direction. It also supports Top Down and Orbit presentations, a persistent background surface, and token interaction.
Create the custom effect through Manage User Particle Effects, then select Directional Drift from Base Effect.
| Reference | Value |
|---|---|
| Package | FXMaster+ |
| Definition type | Custom particle base |
| Base Effect label | Directional Drift |
| Exposed parameters | 35 |
Important controls
Section titled “Important controls”- Direction: Sets the main travel direction while Top Down and Orbit are disabled.
- Top Down: Switches the particle projection to the overhead presentation.
- Orbit: Makes the images circulate around the effect area instead of crossing the Scene.
- Spin: Controls how quickly each image rotates while moving.
- Background: Adds a persistent field of settled images behind the airborne particles.
- Token Trails: Allows moving tokens to disturb the persistent background.
Movement modes
Section titled “Movement modes”Directional travel
Section titled “Directional travel”Leave Top Down and Orbit disabled to move the images across the Scene using Direction, Speed, Lifetime, and Density.
Top Down
Section titled “Top Down”Enable Top Down for an overhead presentation. Direction is handled by the Top Down movement rather than the normal Direction field.
Enable Orbit to circulate the images around the effect area. Orbit Distance controls the radius of the path. Top Down and Orbit are mutually exclusive.
Background and token interaction
Section titled “Background and token interaction”Within an enabled custom Directional Drift effect, Background can be toggled and configured separately from the airborne particles. It is not a standalone effect; disabling the custom effect disables both layers. Background Fill, coverage, pile, and particle-size controls define the settled surface. Enable Token Trails when moving tokens should displace that surface, create trails, lift particles, and allow them to settle again.
Parameters
Section titled “Parameters”The table combines the settings inherited by a custom Directional Drift effect in Scene and Region contexts. Scene-only and Region-only badges identify controls limited to one context. Hover or focus an info button to see what the parameter changes on the canvas. Select it to keep the card open.
Hover or focus an info button to see what the parameter changes on the canvas. Select it to keep the card open. Context badges identify Scene-only and Region-only controls; unbadged parameters are available in both. Hover or focus an availability condition to highlight the parameter that controls it.
| Parameter | Control | Default | Range or choices | Availability |
|---|---|---|---|---|
Below Tokens belowTokens | checkbox | Off | — | Always |
Below Tiles belowTiles | checkbox | Off | — | Always |
Below Foreground belowForeground | checkbox | Off | — | Always |
Levels levelsScene only | scene-levels | All Levels | — | Always |
Tint tint | color | #FFFFFF (disabled) | — | Always |
Sound FX soundFxEnabled | checkbox | Off | — | Always |
Sound FX Sounds soundFxManualSoundIds | multi-select | Rule default | — | |
Top Down topDown | checkbox | Off | — | |
Orbit orbit | checkbox | Off | — | |
Orbit Distance orbitDistance | range | 0.5 | 0–1 · step 0.01 | |
Scale scale | range | 0.24 | 0.1–1 · step 0.01 | Always |
Direction direction | range | 0 | 0–360 · step 5 | |
Speed speed | range | 0.29 | 0.1–1 · step 0.01 | Always |
Lifetime lifetime | range | 0.27 | 0.1–1 · step 0.01 | Always |
Density density | range | 0.15 | 0.05–1 · step 0.05 | Always |
Opacity alpha | range | 1 | 0–1 · step 0.1 | Always |
Spin spin | range | 0.33 | 0–1 · step 0.01 | Always |
Background backgroundEnabled | checkbox | Off | — | Always |
Background Fill backgroundMode | select | accumulate | Full Coverage, Fill Over Time | |
Time to Full Coverage backgroundDuration | range | 180 | 10–3600 · step 10 | |
Background Opacity backgroundOpacity | range | 0.9 | 0–1 · step 0.01 | |
Ground Coverage backgroundCoverage | range | 0.65 | 0.05–1 · step 0.05 | |
Fill Variation backgroundFillVariation | range | 0.7 | 0–1 · step 0.05 | |
Pile Amount backgroundPileStrength | range | 0.5 | 0–1 · step 0.05 | |
Pile Size (Grid Spaces) backgroundPileSize | range | 3.5 | 0.5–12 · step 0.5 | |
Ground Particle Size backgroundParticleSize | range | 0.31 | 0.01–1 · step 0.01 | |
Token Trails backgroundInteractionEnabled | checkbox | Off | — | |
Trail Width backgroundInteractionRadius | range | 0.9 | 0–2 · step 0.05 | |
Trail Strength backgroundInteractionStrength | range | 0.65 | 0–1 · step 0.05 | |
Trail Swirl backgroundInteractionSwirl | range | 0.6 | 0–1 · step 0.05 | |
Trail Lift Chance backgroundInteractionLiftChance | range | 0.35 | 0–1 · step 0.05 | |
Settle Time (Seconds) backgroundInteractionSettleTime | range | 3 | 0.1–12 · step 0.1 | |
Settle Impact backgroundInteractionSettleImpact | range | 1 | 0–1 · step 0.05 | |
Darkness Activation darknessActivationEnabled | checkbox | Off | — | Always |
Darkness Activation Range darknessActivationRange | range-dual | {"min":0,"max":1} | 0–1 · step 0.01 |
Direct-effect API example
Section titled “Direct-effect API example”After a custom effect is created, its generated effect ID can be used as a particle type. Replace the placeholder below with the ID used by the custom definition.
const customType = 'your-custom-particle-id';
const created = await FXMASTER.api.effects.play({ particles: [{ id: 'apiMacro_customDirectional_p', type: customType, options: { direction: 0, speed: 0.35, density: 0.2, }, }],});
await FXMASTER.api.effects.particles.stop(created.particles);For scene targeting, stack ordering, updates, and toggle groups, see the Direct Effect API guide.