Transform node which transforms vector from mesh particle space to world space in vertex shader always returns 0.
In ue4.24, it works fine.
This behavior has been changed in CL#12558699.
Removing following if statement line in FHLSLMaterialTranslator::TransformBase fixes this issue.
case MCB_MeshParticle: { if (DestCoordBasis == MCB_World) { CodeStr = TEXT("mul(<A>, <MATRIX>(Parameters.Particle.ParticleToWorld))"); if (ShaderFrequency == SF_Pixel) // remove this line { bUsesParticleLocalToWorld = true; } } // use World as an intermediary base break; }
 
 [Link Removed] 
 
There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-93591 in the post.
| 3 | 
| Component | UE - Niagara | 
|---|---|
| Affects Versions | 4.25 | 
| Target Fix | 4.26 | 
| Created | May 27, 2020 | 
|---|---|
| Resolved | Jun 14, 2020 | 
| Updated | Jul 21, 2020 |