Runtime Mesh Component

This is probably due to the changes to Plugin include paths in 4.20/4.21.

In your [Project Directory]\Plugins\RuntimeMeshComponent\Source\RuntimeMeshComponent\RuntimeMeshComponent.Build.cs file, comment out the PublicIncludePaths and PrivateIncludePaths lines and replace them with the new ModuleDirectory-relative paths like so:

// PublicIncludePaths.AddRange(
// new string] {
// “RuntimeMeshComponent/Public”
// // … add public include paths required here …
//}
// );
PublicIncludePaths.Add(Path.Combine(ModuleDirectory, “Public”));

// PrivateIncludePaths.AddRange(
// new string] {
// “RuntimeMeshComponent/Private”,
// // … add other private include paths required here …
//}
// );
PrivateIncludePaths.Add(Path.Combine(ModuleDirectory, “Private”));

Do the same in RuntimeMeshComponentEditor\RuntimeMeshComponentEditor.Build.cs

This should probably cover it for 4.20. For 4.21 you will need to take the “#if ENGINE_MAJOR_VERSION == 4 && ENGINE_MINOR_VERSION < 21” line in RuntimeMeshComponent.cpp and move it from above GetPhysicsTriMeshData() to above CreateNewBodySetup()

I have no idea whether this has any impact on physics in an actual shipping build, but it will get your project compiled and running a Development Editor build for the time being.

Edit: quick update - tried packaging a shipping Win64 build of the default map to which I added a runtime MeshSlicer BP. Works great; slices respond to player and projectile physics as expected.