What’s the best way to create an environment that can be navigated?

All actions can be invoked from a 3D environment; this includes loading other scenes, more/new 3D objects, changing lights, skyboxes, colours, textures, etc. Note that exploration and movement through an environment would involve one of more 3D objects, rather than a skybox.

Previous How can a user control an avatar in the environment?
Next Am I able to create a frontend editor on top of your solution?
Table of Contents