Bug description:GetParticleAttribute → AgeOverLifetime (or anything other parameter) doesn’t work on Deformation and Blur input in the Output node. When GetParticleAttribute is in present, result will always be zero.
Repro steps:Create some nodes driven by GetParticleAttribute and connect them to the Deformation and Blur inputs.
This is by design. The properties of the Output block of a visual effect graph are applied to the effect as a whole, not to individual particles. Therefore nodes that relate to a specific particle (GetParticleAttribute, GetGroundAttribute, SampleNoise, AtlasPlayer) do not work when they are part of a graph plugged into the Output block, and the whole graph outputs no value.
properties of the Output block of a visual effect graph are applied to the effect as a whole, not to individual particles
If I attach GetParticleAttribute > AgeOverLifetime to the Output > Color.z (alpha) then particles will appear smoothly during lifetime. That is expected behaviour, not sure what intentions was to not make the same for other Output parameters.
The Color property is the exception that I forgot to mention here
The reason is that it is expensive to send data for individual particles to the GPU, therefore we have made the choice to make some properties related to the whole effect to reduce CPU-GPU communication cost.
If it is important to you that some of these properties are made available on a “by particle” level, feel free to make an Idea post on this forum