I am making an open world game and i want to know if there is a way of doing terrain streaming ( loading the terrain into mamory only if the player is close to it ) besides using the LoadLevelAdditiveAsync function . i am using free version so this function is not available to me .
From my perspective you have two options here.
- You can split terrain in smaller chunks and load them with Resources.Load but that will increase your draw calls dramatically, but it should load them quite fast but it still depends on seek time of your HDD.
- You could call Resources.Load() in a thread. Yes, Unity api is not threadsafe, but i’ve seen quite some devs do it. It’s quite risky and you must make sure to implement some kind of lock to make sure you don’t use anything else regarding loading while loading in a thread.