Retime
You’ve built an effect that plays at a comfortable pace. Then a director note arrives — “this needs to feel snappier” or “slow it down by half so it has more impact.” The choreography is right; only the speed needs to change.
You could go back and edit every Lifetime, every Rate, every Speed graph by hand. But the relationships you tuned (the way the bursts sync with the trails, the way the fade times overlap with the secondary emissions) would need re-tuning by hand too.
Retime is the timing equivalent of Resize. One slider, log-scaled from 0.5× (half speed) to 2× (double speed), uniformly stretches or compresses every temporal value in the selection. The relative timing stays intact; everything just plays faster or slower together.
The slider
Section titled “The slider”Same UI as Resize: a log-scaled slider with 1.0× at centre, 0.5× at the left, 2.0× at the right. Type a value into the text input for changes outside the slider’s range.
Same toggles:
- Include Descendants — when on, child emitters scale together with the parent.
- (Retime has no equivalent of “Scale Spawn Area” since there’s no analogous “scale source timing” choice.)
Apply commits, Reset restores. Same snapshot model as Resize.
What “double speed” actually means
Section titled “What “double speed” actually means”The slider’s 2× setting means the effect runs twice as fast. Concretely:
- Lifetimes are halved — particles live for half as long.
- Rates are doubled — twice as many particles per second.
- Speeds are doubled — particles move twice as fast.
- Rotation speeds are doubled when
RotMode = Speed(the per-second rate).OverLiferotation isn’t touched, since it’s already framed in fractions of a particle’s life. - Flipbook framerate is doubled — texture frames advance twice as fast.
- Beam TextureSpeed is doubled — texture scrolls twice as fast along the beam.
- Drag is doubled — particles decelerate twice as fast, so trajectories stay proportional.
- EmitDelay and EmitDuration are halved.
- Acceleration is quadrupled (
× factor²) — to keep visual trajectories proportional under doubled speed.
The factor² scaling on Acceleration is the non-obvious part. Acceleration is in studs/sec². When you double the speed of an effect (factor = 2), each particle now flies for half the time but with twice the velocity at any given moment. To keep the trajectory shape (the actual curve in 3D space the particle follows) identical, the acceleration must scale by factor². This is standard kinematics — try it on paper if you’re unconvinced.
The other half of the slider (0.5×, “half speed”) works symmetrically. Lifetimes double, Rates halve, Acceleration quarters (factor² = 0.25).
What it doesn’t scale
Section titled “What it doesn’t scale”Some timing-adjacent properties stay fixed:
RotMode = OverLiferotation graphs — these define the absolute rotation angle at each point in life. A graph that ramps from0to360over its life spins the particle exactly once across whatever lifetime it has — Retime stretching or compressing the lifetime doesn’t change the end angle, so the per-life behaviour stays correct without modifying the graph values.TotalKeyFrames/ Anim. Steps — sample resolution, not time. Scaling it doesn’t change behaviour.PartLife/ Linger — the post-lifetime delay is technically time, but it’s a visual extension not part of the simulation. Retime leaves it alone.
If you want to also scale Linger or TotalKeyFrames, edit them directly. They’re rare to change with the rest of the timing.
Trail’s special EmitDuration handling
Section titled “Trail’s special EmitDuration handling”Trail emitters store EmitDuration as a string (a NumberRange-style "min,max" format, parsed at runtime — see the Trail chapter for details). Retime parses this string, scales each value by 1/factor, and writes the result back as a string.
So EmitDuration = "5,2" (a random duration between 2 and 5 seconds) at Retime = 2× becomes "2.5,1" (a random duration between 1 and 2.5 seconds — half as long).
Native ParticleEmitter and Trail support
Section titled “Native ParticleEmitter and Trail support”Retime works on native (untransformed) ParticleEmitter and Trail instances too. The properties scaled are the type’s native equivalents:
- Native PE:
Lifetime(NumberRange),Rate,Speed(NumberRange),RotSpeed,FlipbookFramerate,Acceleration(×factor²) - Native Trail:
Lifetime(number),EmitDurationattribute (parsed)
The same scaling math applies.
When to reach for Retime
Section titled “When to reach for Retime”Retime is right when:
- The effect’s choreography is correct and only the playback speed needs to change.
- You want a non-destructive preview to find the right pace.
- All the timing should change together — not just one property.
It’s wrong when:
- You want to change only one timing property — e.g., make particles live longer without changing rate or speed. Edit the property directly.
- The effect’s relative timing needs qualitative change — adding a delay between two events, restructuring the sequence. Retime is uniform; structural edits go through the panel.
A common pattern: use Retime for a rough speed adjustment, then make any small targeted tweaks via the panel afterward. The bulk slider gets you 90% of the way there for the cost of one drag.
What’s next
Section titled “What’s next”Hue shifts the colour palette of every emitter in the selection, using HSV-space sliders. Different operation, same snapshot-then-preview-then-apply UX.