Streaming Game Content

I’m interested in creating a content streaming system for a game with a large play-space (something that would work like Skyrim or GTA, though not to that scale). I understand that I can load new sections with LoadLevelAdditive/AttiveAsync, but I can find a way to clear old sections. (Ideally, I’d like to keep the sections small, and keep 9 loaded at any time - the one the player is in, and the 8 surrounding it)

The solution I’d like to employ would involve interrupting the objects created by LoadLevelAdditive/AdditiveAsync, tagging them somehow so they can later be identified by their section for removal. This would also help avoid the issue of having the objects increasingly offset by large numbers in the editor, as the offset could be applied as the objects were created.

Unfortunately, I’ve not been able to find any way to implement a system like that. Is there any way to watch for new objects being created? If not, what other methods might I employ to unload previous ares of the game?

Thank you for your time,

Timothy Sassone

For the time being I have decided to place all objects within a scene inside an empty game object named based on the location of the scene. When a new set of sections is loaded, the same method used to get the names of the scenes to load can be used to locate the empty game objects and delete them. It’s not perfect, I’d hoped to do it without having to change the way I build the levels, but it’s a relatively simple and practical solution.