Shared properties and curves in particle emitters

So: Imagine you’re making a pair of really similar emitters, like Effects example 1.2 (“velocity cone”). If you open up that emitter you’ll see that some of the properties are linked between two emitters. This is very cool because it means you can make several similar emitters easily, and keep them synched up. Sweet.

The problem is that the only way I can find to link two properties is at creation time by copying the entire emitter. This means that if I’m tuning a set of emitters, and then realize I need another property, there’s no way for me to add that property linked. I either have to maintain multiple copies of the new property, or destroy all my tuning by recreating all but one particle system so they can be linked.

Also, the only way to unlink particle systems is to delete a property and then recreate it. Not only does this destroy any data in that property, making it tough to make small tweaks, but it’s impossible to do with mandatory properties like Required and Spawn. If I have, say, three particle systems, two of which should spawn at a different rate than the last one, this means I can’t take advantage of the property sharing system at all.

Finally, while this lets you share curves between particle systems, this seems to be the only way to share curves between particle systems. I can’t find any way to make a single curve, then apply that curve to several different particle systems. Even though the curves all have unique names, there’s no way I can find to reference them by name.

Am I missing something in how the shared-property UI works, or are these missing features?

(Finally, bug report - when you share a particle system with “GPU sprites” enabled, then un-share size or velocity and make them different, it seems to pick one of the two particle systems and apply those properties to both particle systems. I assume the “GPU sprites” property is somehow being shared as well. Easy to fix, though, just delete “GPU sprites” and recreate it.)

Hi Zorba,

Please post this to the Answerhub atanswers.unrealengine.com. Thank you!