Quick answer: Unreal SetStaticMesh on a StaticMeshComponent updating visuals but leaving the old collision? Mesh change doesn't auto-rebuild collision - call SetSimulatePhysics(false) then true.
Procedural prop swaps its mesh. New mesh is visible; players still collide with the old shape.
Toggle physics
Comp->SetStaticMesh(NewMesh);
Comp->SetSimulatePhysics(false);
Comp->SetSimulatePhysics(true);Force physics state rebuild. New collision shape applies.
Or call RecreatePhysicsState
More explicit; same effect.
Verify with collision visualization
Show Collision; mesh swap should change the visible shape. If not, the rebuild didn't happen.
“Mesh data and collision data are linked but not auto-synced. Sync is your call.”
Wrap mesh-swap in a helper that handles physics + render + lightmap. Centralized; bug class disappears.