Yes, but you would have to construct the system to use instanced static meshes to reduce draw calls, same as what they did for Minecraft. But–don’t do it, be creative and do something new instead of copying another game
I never played Minecraft; but I suspect it’s renderer is designed to render only the cubes’ 2~6 triangles visible by the camera and only the ones that are in “contact with air”.
Collision meshes proly are generated for air-contacting triangles only and only when player is close enough for collision interaction.
Unreal doesn’t do any of that, neither Unity or other public engines I’ve seen; some reproduced the “air-contact” culling algorithm in Unity and published clones, but I’d imagine the performance isn’t as near as good to render 1+ million cubes in Unity’s renderer.
If you try to render 1 million cubes in UE4 you’ll pretty much kill the engine until you implement some of those tricks Minecraft probably uses.
Properly designed minecraft-like game will not render the level in the way unreal engine does. Meaning, you won’t have a static mesh per cube.
Instead the system will dynamically construct geometry for either visible or nearby faces and then render it. Alternatively, it could render the level by raycasting.
Either way, you’ll have to implement this kind of system in the engine.
Yes that huge world need air-contact algorithm, and only draw visible area to user, and also maybe it require dynamically set enable/disable areas by user’s perspective.(his location, viewing angle, viewing height,)
And of course if I can, I will not make clone. But improved one.