Vertex Painting in runtime

Is it at all possible to reference and paint the vertex color of a static mesh in runtime? I’m looking to create an effect where the player pawn has a collision volume attached which changes the vertex colors of the static meshes it overlaps. Is this an unrealistic hope?

You can paint all the vertices a different color (using Paint Vertices Single Color node) - or you can paint individual vertices using overide vertex color on skinned or procedural meshes ONLY (AFAIK). However, I’m confused as to why we can’t paint individual vertices on a standard static mesh… seems that if we can paint all the vertices we should be able to paint individual vertices.

Static mesh vertex buffer can’t be changed during runtime. Use procedural meshes.

That’s not entirely true - for instance, we can change the color of ALL the vertices (even through blueprint) - and I’ve seen the changing of static mesh vertex colours in C++ as well (though I’ve not done this myself).