Following code works as a workaround
void FClusterUnionManager::HandleAddOperation(FClusterUnionIndex ClusterIndex, const TArray<FPBDRigidParticleHandle*>& Particles, bool bReleaseClustersFirst) { ... if (bIsNewCluster) { if (bIsSleeping) { MEvolution.SetParticleObjectState(Cluster->InternalCluster, Chaos::EObjectStateType::Sleeping); } MEvolution.SetPhysicsMaterial(Cluster->InternalCluster, MEvolution.GetPhysicsMaterial(FinalParticlesToAdd[0])); Cluster->InternalCluster->SetControlFlags(FinalParticlesToAdd[0]->ControlFlags() ); // add this line to copy gravity setting Cluster->InternalCluster->SetLinearEtherDrag(FinalParticlesToAdd[0]->LinearEtherDrag() ); Cluster->InternalCluster->SetAngularEtherDrag(FinalParticlesToAdd[0]->AngularEtherDrag() ); }
Clustered rigid body ignores custom gravity settings in children and fall with default gravity
There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-209128 in the post.
0 |
Component | UE - Simulation - Physics |
---|---|
Affects Versions | 5.3 |
Target Fix | 5.6 |
Created | Mar 7, 2024 |
---|---|
Updated | Oct 17, 2024 |