This is affected by loading order.
In the case, display mesh was loaded firstly and try to build collision mesh form complex collision mesh asset. But the collision mesh didn't finished to make RenderData.
UStaticMesh::ContainsPhysicsTriMeshData returns nullptr, so the display mesh lose the collision mesh.
To Call ConditionalPostLoad on the collision mesh before building the collision on the display mesh can fix this issue.
// code placeholder bool UStaticMesh::ContainsPhysicsTriMeshData(bool bInUseAllTriData) const { #if WITH_EDITORONLY_DATA if (ComplexCollisionMesh && ComplexCollisionMesh != this) { ComplexCollisionMesh->ConditionalPostLoad(); // !!! please add this line !!! return ComplexCollisionMesh->ContainsPhysicsTriMeshData(bInUseAllTriData);
There's no existing public thread on this issue, so head over to AnswerHub just mention UE-88957 in the post.
4 |
Component | Tools - MeshEditing |
---|---|
Affects Versions | 4.23, 4.24 |
Target Fix | 4.27 |
Fix Commit | 15013109 |
---|
Created | Feb 18, 2020 |
---|---|
Resolved | Jan 7, 2021 |
Updated | Jan 12, 2021 |