I am making an open world game. I split the world into segments, 9 of which are always loaded, the player in the center. Move over a segment and I load the next apropriate segments before the player reaches them.
I wanted to do this loading on a seperate thread, but with LWJGL if I load a texture from another thread it cannot be displayed. (I don’t have the error but can recreate for it. I found this was the problem from an IRC log google gave me )
Each segment may have different textures, and may share some with other segments. Too many texture exist in total to have every single one loaded onto one atlas. If I load everything in the same thread as the rendering is done, there would be a significant pause when you reach the end of a segment. Does anyone have any experience with open worlds and streaming in world data they can share? Specifically though this thread business is my problem.