Now this looks cool, if you’re not already a few steps ahead of my thinking here Unity. You could use this to import a set of tiled height maps and blend them together (stream the tiles in and out) like the World composition feature of an Engine you’ve probably heard about. Then have the POO (Point of origin) reset…
Is this something you’re looking to do? Because I’d roll about in a puddle of joy for at least a day if that’s the case.
That’s an interesting idea, but does that imply a run-time functionality to editing the multiple scenes? Because it doesn’t look like that’s part of it’s current capability.
I guess it depends on if the scenes you are intending to stream in overlap or not, since non-overlapping scenes would require several scenes loaded at once (afaik not possible in Unity), so that’d require the scene-editing. With overlapping scenes though it might be possible to load them on the fly with no scene-editing needed. It’s likely more inefficient that way though.
Otherwise though, I shouldn’t think it’d be too difficult to get the pre-composed scenes to stream automatically through some basic code. (Provided the new level-streaming of U5.0 is as good as I’m hoping).
The point of origin stuff would be really nice to have as a Unity feature though.
Being able to have a floating origin built in would add a heck of a lot to the engines flexibility, albeit being a very complex feature. (Though, there is functionality within PhysX to do this, maybe the U5.0 version of PhysX will contain that too in some form?)
Application.LoadLevelAdditive would do the trick, but as the link above showed you couldn’t just unload it after. It seems everything is in place (in the background) to do this with Unity 5.0. As this quote makes me happy to show:
“We are working on how to support the baking of navmesh, lightmap and occlusion culling with multiple scenes loaded. The goal is to have it all working together smoothly.”
So the missing links here is POO and automatic tile distribution, I can’t see why it couldn’t be done as a script for the tile dist but it gets a little “difficult” to manage when you have 100 tiles + you need to stream in and out. Scene manager, can load and unload as one pleases which is also very cool stuff…
I don’t have my hands on Unity 5.0, so I am REALLY interested in what the possibilities are.
Honestly I don’t think there’s much that the feature provides from a runtime point of view that wasn’t already possible - the main thing is ‘unloading’ of a scene, but it’s been possible to do that if you force all your scenes to have a single root object and then just delete that root object (packages like SECTR do this).
The main benefit is to authoring, IMO, not runtime - the ability to easily have multiple neighbouring regions loaded at once, edit and align them, etc.
I’ve been using this technique in my current game: Every area has a scene, in that scene is a prefab, and that prefab contains a script that lets the manager know it can be unloaded. In order to be able to edit these along with the main scene, I can bring in the prefab, change stuff, Apply changes, and delete the object.
Main issue with this is that I’m editing prefabs. Clicking anything in the sub-scene selects the prefab, and god forbid I want to put a prefab in the prefab. Multi-scene editing would be a VERY welcome change to this.
I agree, unless I’m reading this. Hey you get this in The Engine That Shall Not Be Named or TETSNBN for short. The world composition tool is a fast workflow tool that can easily be used for manipulating multiple terrain objects at any one time, this appears to me a tool that could be leveraged to do the same.
I’m sure they have higher priorities on the list to do, but with POO / ATD and a scene manager to load / in and out scenes it would make these types of game designs quick and practical. It seems nowadays WM tiled outputs are very common.
“In the Editor, we have used the SceneManager to implement what we call Multi Scene Editing. This feature allows you to have multiple scenes loaded at the same time in the Editor and will look somewhat like this:”
So does this mean you can do additive loading in the editor (non-runtime)?
Oh, no I wasn’t looking for that, I was suggesting that that can be used currently
We haven’t used it in our current programs hence the perhaps confusing wording of my post.
For those that have fiddled with this before though, are there any current severe performance issues with destroying objects (as in whole scenes) in a semi-procedural large-scale project like we’re suggesting? Just for curiosities sake.
I’d imagine there are GC issues?