Any updates on the development of SubScenes?

Have been using SubScenes ever since Entities 0.1, but a few things are still a major pain that prevents us from utilizing them properly. There have been posts about fixes for these issues being worked on, but I haven’t heard or seen any information about the progress on SubScene development for several months. The last major update I can remember was in Entities 0.2. Posting this thread to check if anyone has heard any news on the subject.

The main issues that we’re having:

1: Asset duplication in built SubScenes
We have a decently large world split up in subscenes of ~160x160 meters each. Since assets are still bundled for each subscene, the asset bundles for each individual subscene can become up towards 500mb each which isn’t really feasible in a build when we have a lot of individual subscenes. I have heard about this being worked on somewhere, but I can’t find the source. Has anyone heard any updates on it?

2: SubScene instantiation and postprocessing (to allow instantiating same subscene at multiple locations)
This was hinted a few months ago, but I haven’t heard any updates on it since then. The sample projects look very promising. We’ve been using a very hacky solution to solve this ever since Entities 0.2 that we will be able to replace with this new feature, which will be awesome.

3 Likes
  1. We landed sub scene asset deduplication last week. Should be in the next release.
  2. The core functionality necessary (meta data + ability to create systems that preprocess on the staging world before moving them) has landed in master.

Doing the actual offsetting is still something you have to do yourself.

6 Likes

That’s great news! Looking forwards to it!

Back in 0.11 when I tried to use SubScene instantiation the SceneLoadFlags.NewInstance flag hadn’t been added yet, but I can now see that it exists in 0.13. Not sure when that landed as I didn’t see anything about it in either 0.12 or 0.13 change logs, but I guess you might have missed mentioning it. But that’s awesome, I’m going to investigate using it asap!

One more thing to note is that it is now possible to

Load a bunch of subscenes with AutoLoad disabled. Thus only the meta data actually gets loaded.
Then instantiate them and attach more meta data about placement to them.

This way the meta data doesn’t have to be loaded multiple times and you can very quickly populate a massive world with metadata about where different things might stream in. the instantiated scenes can then be streamed in and the same as with SceneLoadFlags.NewInstance, a scene that came from the same scene guid can be streamed in multiple times…

3 Likes