Thanks for all this interesting stuff. Yeah, spacial partitioning was a thing I learned a time ago. Just forget about it, but ya, that will be definitely a thing I will implement.
Moewover I will definitely look up software occlusion culling and predicate rendering. Thanks for that.
I would recommend using a premade engine for something like an open world game.
Something like unreal engine 4 would do the job well as it already has industry proven LOD, frustrum culling, level streaming and open world systems built in (see their kite demo).
You could spend years writing all this yourself, and if you just want to get on writing the game and know the functionality needed works fine, going the premade route is a good idea.
If you do want to do it all yourself, good luck because creating it and making sure it scales well could take you a long time...
Mhmm... yeah, that's true. I can definitely use an premade engine. But what should I, as a programmer, learn, when I'm letting all the stuff done by the Unreal Engine which other programmer wrote. And where does these programmer have their knowledge from? Another engine maybe? Maybe from Unity3D?