Particle initial color param for GPU particles not working

Hello,

When I try to set particle initial color via blueprint parameter, it only works with CPU particle types.
here is a minimalist setup showing the issue, the material not shown is just base color from particle color.

Am I missing anything obvious?

Also just did a last minute search again and realized I had already posted about this back in October and had no replies. https://answers.unrealengine.com/questions/107677/how-to-set-initial-color-gpu-particle-parameter-fr.html

Hey xdbxdbx -

I have entered this bug in with our engineers for further investigation and I will let you know when we have a solution. The report is listed as UE-5168.

Thank You

Eric Ketchum

Hello Eric, is there any update on this issue? I tried to look into ParticleModuleTypeDataGpu.h and ParticleModules.cpp but the call graph is so complicated that I have no idea what part could be related to this bug. Are there any pointers for better understanding the design here? Thank you!

Hey dale_z -

This is a somewhat complicated issue as it involves changing the vector input at runtime via a blueprint. So, the issue could reside in the communication structure, but more so I think this has to do with how GPU particles are calculated. Blueprints are passing information to a particle system via the CPU and since GPU particles do not reside on the CPU initially but are created only on the GPU side. Ultimately a fix for this issue may involve opening a pass through to GPU particles at birth which we are reluctant to do as that would negate some of the performance benefits of using GPU particles.

I will say this is an educated guess with only a brief look into the problems, our engineers are still looking into solving this particular issue and I feel that some of the fix for this issue will be coming when Niagara (no timeline yet sorry) is released.

Thank You -

Eric Ketchum