I have an arcade style game, that is if we reduce it to a lower level nothing else than a race from point A to point B.
So everything that is behind the player won't be needed anymore, and everything that is to far away shouldn't be loaded until it is needed.
I want to have the rough structure of the level loaded once completely (curves, straight lines, loopings => "placeholders"), and if the player comes in range of a certain part of the level it gets loaded, and the part behind him gets unloaded.
I tried to do this by using scenes, but I do not like to mark that many objects as "persistant", because actually I have one scene and I am un/loading others into it. There is a breach in my personal sense of logic, because when I load a scene, this scene is the "main" scene I am currently in, but logically this is according to my concept wrong, because what I loaded is just a part of "the level" and not the "level" itself.
asked Nov 24 '10 at 02:43 PM
Using scenes is not really appropriate for this usage case. Do you really need anything to be loaded/unloaded? If it's just a matter of performance, Unity's view frustum culling will automatically take care of that. If there are memory issues, then you can instantiate objects with Resources.Load and destroy them when the player goes past.
answered Nov 24 '10 at 06:01 PM