Description

It seems to have occurred since UE4.23, and the cause was the following part of "ParticleModules_Location.cpp".

//From UE4.23

if (bOrientMeshEmitters)
{
//We have the mesh oriented to the normal of the triangle it's on but this looks fugly as particles on each triangle are facing the same way.
//The only valid orientation reference should be the normal. So add an additional random rotation around it.
SourceRotation = SourceRotation * FQuat(FVector::UpVector, RandomStream.FRand()*(PI*2.0f));
//Up to UE4.22
if (bOrientMeshEmitters) { //We have the mesh oriented to the normal of the triangle it's on but this looks fugly as particles on each triangle are facing the same way. //The only valid orientation reference should be the normal. So add an additional random rotation around it. int32 OldRandSeed = FMath::GetRandSeed(); FMath::SRandInit((int32)((intptr_t)ParticleBase)); SourceRotation = SourceRotation * FQuat(FVector::UpVector, FMath::SRand()*(PI*2.0f)); FMath::SRandInit(OldRandSeed);

I think we need to fix "RandomSeed" as before, or put a random value in "FoamLocationLocationVertSurfaceParticlePayload".

It seems to have been changed in CL5661716 to address the Deterministic problem.

Steps to Reproduce

If you open the attached project and play it, it will be reproduced.

Have Comments or More Details?

There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-93517 in the post.

1
Login to Vote

Won't Fix
ComponentUE - Niagara
Affects Versions4.25
CreatedMay 25, 2020
ResolvedAug 31, 2021
UpdatedSep 19, 2021