I am evaluating the UE4 for development of an open-world-procedurally-generated-etc game.
Actually I’ve made a prototype using Unity. However I am not satisfied and looking for an alternative engine.
To the topic.
Imagine a very huge mesh containing, say, 3 mils triangles.
The mesh is procedurally generated. Actually it is cubic voxel terrain minecraft-style but bigger.
The mesh is changing during the gameplay. The mesh has a ‘mesh collider’, and acts as static (but destructible) terrain.
The question is: how the UE4 will perform realtime baking (or recalculations, updates, etc) of physics data for procedural geometry? Is it done within the scope of rendering thread? Will the change of huge procedural mesh cause delays in render thread?
Hint - I DO know that this cause a hell of FPS drops in Unity, as Unity bakes PhysX data within the rendering thread scope. Every time the terrain gets changed (e.g. player moved so new stuff gets added to it and other is removed) Unity starts baking of PhysX data and FPS goes down. To clarify the situation - Unity works with 16 bit indexes, so the whole terrain is split in a pile of smaller meshes and player movement affects tens to hundreds terrain meshes and I see FPS drop for several seconds while all affected meshes are getting updated (I do not update all of them at once as this just freezes the game for several seconds).
I am very curious whether I can implement huge procedural and changeable terrain using UE4 and do not implement my own physics in separate thread. That’s the only option using Unity.