Recalculate collision of UProceduralMeshComponent

I’ve made a class inheriting from AActor which has a UBoxComponent as its RootComponent. For the visible mesh, I’m creating a cube manually out of vertices using a UProceduralMeshComponent. I have OnOverlap methods defined which trigger when the cube overlaps another/or any other object. I can add these to the world fine.

Later via a plugin, I call a method of the cube to expand out each vertex to double the cube’s size. The RootComponent UBoxComponent stays the same size, and I don’t get any collision detection unless the RootComponent is the one doing the overlap. You can see the RootComponent faintly in this screenshot within the yellow expanded mesh:

You can see here that with the RootComponent CollisionProfileName set to BlockAllDynamic and the UProceduralMeshComponent CollisionProfileName set to OverlapAllDynamic the basic sphere can enter the yellow mesh (but no collision messages got written to the log):

What I want, is for the UProceduralMeshComponent to be doing the collision detection/reaction, so once it has grown or deformed it still has Overlap events triggered based on its new shape. Is this possible? Something akin to the mesh collider of Unity.

edit Have confirmed the same problem in 4.12

I am creating my procedural mesh with:
mesh->CreateMeshSection(0, vertices, triangles, TArray(), TArray(), TArray(), TArray(), true);

and updating it with:
mesh->UpdateMeshSection(0, vertices, TArray(), TArray(), TArray(), TArray());

so to my understanding it should be recalculating the collisions as I had set that boolean when creating.

If I set the procedural mesh to be the root component (I read somewhere that only the root component’s collision is taken into acocunt?) then there is the same effect. A simple sphere can penetrate the procedural mesh until it collides with the original geometry inside even with the CollisionProfileName “BlockAllDynamic”

Looks like I can resolve this with Runtime Mesh Component - Marketplace - Unreal Engine Forums