Particle System Magic

"Where is Feature X? I need Feature X! How can you not have Feature X?"
Post Reply
VJ_io
Posts: 27
Joined: Fri Dec 01, 2017 00:47

Particle System Magic

Post by VJ_io »

It'd be an incredible boon if Particle System had the option for each particle's sprite to be static and retain the frame given by the source upon its generation. If there's any feature that I could wish into Resolume right now, it'd be that. Neal~

Joris
Posts: 5186
Joined: Fri May 22, 2009 11:38

Re: Particle System Magic

Post by Joris »

I know right!

I based this effect on the old particle system patch in QC. Using different frames was one of my main wishes then as well.

When I started programming my own version, I actually looked into it. Turns out you have to keep a copy of every frame in memory to do this. With a max lifetime of 10 seconds per particle and assuming a framerate of 60 fps, that means we'd have to store 600 frames in memory per instance of the effect.

That may not sound like much, but to put it in perspective: on a 1920x1080 canvas, that translates to about 4GB of RAM you're filling up every time you apply the effect :o

VJ_io
Posts: 27
Joined: Fri Dec 01, 2017 00:47

Re: Particle System Magic

Post by VJ_io »

Yikes! It can't be cut to one frame per particle, loading and unloading on birth/death? The particle system is one of my favorite effects, the stuff you can already do with it is awesome <3

Joris
Posts: 5186
Joined: Fri May 22, 2009 11:38

Re: Particle System Magic

Post by Joris »

That's still about 1.7 GB.

There's further optimisations you can make by not storing the full canvas, but only the actual particle resolution. Particles are usually smaller, so they take up a less memory. But then you get into particle changing size over their lifetime and dynamic texture arrays and it just becomes such a pain.

At that point, the whole thing is not something I can cobble together on a Friday afternoon anymore.

Empyfree
Posts: 295
Joined: Thu Mar 20, 2014 23:36

Re: Particle System Magic

Post by Empyfree »

I think you should allow at least two Fridays, and a Tuesday lunchtime...

VJ, this sort of effect is pretty easy to render (even a nice looping version) in Motion, would that be an option for you or do you need an “on the fly” solution?

Post Reply