Particle System attached to bone not updating fast enough (trying to make wingtip contrails)

Hi all. Running into a frustrating problem perhaps you can help!

Working on animating contrails attached to a spaceship. Have a particle system with a Bone/Socket location so that I can easily attach the emitters to the wingtips of the spaceship, of which there’s already a bone/socket. However, when playing back the animation, there’s this stepping gap problem where the particle system isn’t updating fast enough to compensate for the ship’s location. It doesn’t matter what I do - increase spawn rate, change particle bounds, change to burst mode, make sure update tick is set to 1… the particles won’t ever spawn in a smooth motion. It’s like the emitter determines location, drops particles there, waits for a period of time, then drops another set of particles. Is there any way to increase the frequency/interpolation/spawn location rate to prevent these gaps from appearing? The particles will have to be emitting at a much closer distance to each other in order to give the illusion of contrails.

Can anyone help? Image attached. See the gaps between each sprite? Thanks!


This is why we have trails. It can only spawn particles every frame and your ship is likely just travelling too far in each frame to spawn a unique particle enough to cover the gaps. Even if you could spawn that many particles, it would be murder for performance and overdraw to do it that way.

You can still have those particles in there but consider making them only show up as the trail expands and gets fatter before fading out, and they should be thought of as supplemental to the trail itself to make it puffier and to give it some volume when viewed from behind, but don’t try to remove all the gaps when viewed from the side.

Yeah, you need to emit a trail / ribbon, not discrete particles. There’s a setting for this.

Thanks for your thoughts Ryan! I had originally tried Trails but had found they were randomly dropping parts of the animation such that a gap was appearing in the contrails themselves. On, off, on off, etc. I know that’s a whole different issue so no point in mentioning it here, I just thought I might be able to get away with a small sprite in this case. Too bad there wasn’t a way to interpolate in between spawns or up the location calls to fill in the gaps. It’s not emitting very many particles, though, would have thought it could handle it.

Thanks both of you!

Try investigating/using the spawn per unit module (it adjusts the spawn rate based on distance travelled) and if you are going to use a lot of particles then I recommend making the emitter a GPU emitter for performance reasons.

But like the others said, usually you would use a ribbon for this kind of thing.