We’re making a time control mechanic and want to be able to stop particles from moving while time is frozen such that each particle is hovering with all it’s velocity removed, none of them despawn and no new particles spawn in at the emitter.
We’ve tried setting their lifespans to infinite and their velocity to zero which works reasonably but we can’t stop it from adding in new particles and when it does, they drift around aimlessly instead of staying in place.
Is there a “Pause”/ “Play” button that we’re missing? If not, has anyone got a work around?
You have to get a reference to the particle system in a blueprint and change the “Custom Time Dilation” value. It changes how fast that particle effect experiences time so if you set it to zero, it freezes in place. We then use “Prewarm” to set where the particle effect starts at the beginning of play.
Our thanks to the people on the UE4 Dev Community facebook page. who pointed out this solution!
When I change time dilation the emitter particles reset. What “prewarm” are you talking about that would get the particles to remain in their current position. Is this a C++ only thing? I just didn’t see anything to do with prewarm
Oof, this was a while ago and I remember it being a pain to find the Prewarm box. Its certainly not a c++ only thing. I think it was hidden inside an expandable settings panel in the particle effect editor. Try clicking on the blank space behind the particle components to get the general menu up in the context sensitive menu area and see if its in there somewhere. I don’t think you can access it via a blueprint reference; only the original particle in the content browser.
It may have changed a little since 4.6. I’ll boot it up in the morning and see what’s what.