Procedural Static Mesh Environment

Hi all, I am looking to develop a simple, large procedural landscape. Right now I have a working cave system composed with a procedural mesh component. The performance of it is not great, however, so I was told that I should use static meshes instead. My original thought was to create the meshes with CreateStaticMesh from StaticMeshEdit.cpp, but that file doesn’t have a file header, so I guess I’m not supposed to be using it? Am I going about this the right way? There seems to be woefully little precedent that I could find about this subject.

Another related question, should I be using instanced static meshes instead? I was under the impression that if the meshes weren’t identical that it wouldn’t have a performance improvement over normal static meshes.

Thanks for your help!

Even if this is a old posting everyone struggling with the same issue please have a look at RuntimeMeshComponent (using RuntimeMeshComponentStatic is the easiest to adapt when coming from UProceduralMeshComponent).