Skip to content
Ciji Games Support All Products
Flow generator Flow generator

Flow Generator

Documentation, guides, and technical support for Flow Generator in Unreal Engine.

Overview

BP_Maestro:

  • Triggers and orchestrates multiple synchronized flow sequences
  • Configurable play rate, delays, and loop toggles for each sequence
  • Chain consecutive Maestro sequences automatically

BP_FlowPart:

  • Dynamically updates material appearance based on the position and normal of a plane moving along a spline
  • Applies effect across spline meshes or multiple external static meshes
  • Generates particle sparks and electricity along the flow path

Video Tutorial

BP_Maestro Configuration

BP_Maestro manages execution order, timings, and transitions across multiple spline flows:

  • Auto Play: Automatically launch sequences at level start.

  • Loop: Continuously loop sequences from beginning upon completion.

  • Sequences: Array of sequence structs:

    • Flow Parts: Array of flow parts triggered simultaneously
    • Play Rate: Playback speed of each flow part in the array
    • Wait Flow End: Wait for current flow completion before triggering next step
    • Delay Before Next: Additional delay before triggering subsequent sequence
  • Play Other Maestro: Trigger a chained BP_Maestro upon finishing all sequences.

    **Reorder Sequences**: Drag and drop array handles in the Details panel to change execution sequence. **Bulk Parameter Search**: Filter for parameter names (like `Play Rate`) in the actor search bar to tweak all sequences simultaneously.

BP_FlowPart Configuration

BP_FlowPart translates position and normal vectors along spline paths to drive material instances:

  • Mat: Dynamic material instance assigned to the flow.
  • Static Mesh: Mesh constructed along the spline curve.
  • Forward Axis: Spline tangent forward axis.
  • Spline Scale: Mesh scaling factor along spline points.
  • Speed Adjustment: Compensates for frame drops to prevent visual gaps.
  • Cast Shadow: Toggles mesh shadow casting.
  • Spawn Particle: Spawns electric particle effects along the moving plane.
  • Static Mesh (Array): Target static meshes receiving projection coordinates.

(For viewport editing guidelines, view Epic’s How-To Edit Spline Components Guide.)

Flow Material Function Architecture

The MF_FlowGenerator material function drives the core effect. Vector parameters normal and pos are automatically managed at runtime by BP_FlowPart dynamic material instances.

The output cleanly separates the masked boundary and clamped opacity mask, enabling custom combinations such as panning textures or secondary emissive waves.

Blueprint Communication & Events

Each BP_FlowPart exposes a normalized Distance float variable (0.0 to 1.0) tracking active progress along the spline regardless of overall length:

  • Trigger a Sequence: Call Play Sequence referencing target BP_Maestro.
  • Trigger a Single Flow: Call Launch Sequence referencing target BP_FlowPart.
  1. Drag and drop a BP_FlowPart into your level.
  2. Assign the target static mesh while leaving parameters at default values.
  3. Position the actor origin near the start of the desired flow path.
  4. Edit spline points to trace the path (or assign external static meshes in the array).
  5. Repeat for any additional flow branches.
  6. Drag and drop BP_Maestro into the level and assemble your sequence list.
  7. Set Loop = true and preview playback in the editor.

Sequencer Workflows

Flow Generator is a **Runtime** asset that creates and moves spline components while the game is running. In Sequencer, ensure sequences are triggered via runtime event director tracks.

Controlling Flow in Sequencer

  1. Create a Material Parameter Collection with a pos vector parameter.
  2. In BP_FlowPart, add a public Material Parameter Collection variable.
  3. Route the parameter collection in the Construction Script.
  4. Animate the collection parameter in the Sequencer timeline.

Triggering Sequences at Runtime

  1. Add an Event Trigger Track in Sequencer.
  2. Add a keyframe and double-click to open the Sequence Director Blueprint.
  3. Call Play Sequence on your level’s BP_Maestro.

Changing Emissive Color in Sequencer

  1. Add the BP_FlowPart actor to Sequencer.
  2. Add track: NODE_AddSplineMeshComponent-0 > Material Element 0.
  3. Add the Emi color parameter track and keyframe RGB values.

How to trigger the effect in the sequencer?

The blueprint is creating and moving component at runtime. You need to press “PLAY” to make it work.The sequencer is in “EDITOR TIME” not runtime.If your sequence is playing at runtime you can trigger a sequence like this:

  1. Create a new event trigger track in the sequencer
  2. Put your key in the track and double click on it
  3. In the sequence director BP call the “play sequence” for example.

How to change the “emicolor” in the sequencer

  1. Create a new sequence
  2. Select the BP_FlowPart
  3. Add the BP_FlowPart to the sequencer
  4. Click on the +track and add the “NODE_AddSplineMeshComponent-0”
  5. Add the material parameter “Material element 0”
  6. Add the “Emi color” parameter
  7. Tweak the RGB values!
  8. Open the master material (not the instance).
  9. Add the nodes above before the panner node. (The U/V tiling are parameters so the instance should inherit this property).
  10. Save and apply the master material.
  11. In the material instance (MI_...), adjust the U/V tiling parameter to avoid the stretching of the texture.

Troubleshooting

Gaps / Holes in Spline Flow

Position coordinates are evaluated every tick. Under high play rates or low framerates, minor gaps may appear near tight spline points. Increase the Speed Adjustment variable in BP_FlowPart to compensate.

Fixing Log Errors

If Blueprint warning messages appear in Output Log, verify BP_FlowPart > ManageCurrentStep: