well we could have some thread meshloading with smartpointers.
lets say the getMesh("blubb") return a smartpointer pointing to the mesh. well if the mesh is not really big it is directly loaded but if it is bigger it returns a empty smartpointer(pointing to NULL) then when the mesh is correctly loaded the smartpointer points to it. the scenenode would have to check if the smartpointer is already initialized or not and then accordingly set the mesh to display. same stuff with loading a scene/scene element. bc i guess loading the actual scenefile doesn't take really long it could be loaded diretly but the meshes and textures are all loaded like i described it above. or u simply return a dummyscenenode by loadScene which will then be used to attach the scenenodes of the scene file which are later loaded. anyway just some thoughts.
We're programmers. Programmers are, in their hearts, architects, and the first thing they want to do when they get to a site is to bulldoze the place flat and build something grand. We're not excited by renovation:tinkering,improving,planting flower beds.