It's not the game logic that troubles me but the animators. If you have a GUI window e.g. option screen you would normaly like to freez the scene, dispaly the GUI return back and unfreez. So far so good, but only if you dont have any animators since those are updating their state on every device.Run(). The same is with animated meshes. The later one can be solved by setting the AnimationSpeed to 0.
My first thought was removing all animators prior pausing the scene. If there was a way one could iterrate through all the attached animators of a node they could be removed thus preventing nodes to move. Unfortunately I couldnt find a way to iterrate animators unless keeping track of them by my own.
The second problem is that even if an animator is Remove()d it is still updating during Run() but not affecting the detached node. Once attached again it instantly applies to the node its internal state (at least if talk about movements or collisions).
I whish there was a Freez like function
Another one...is there a way to isolate the Scenes and having the Device.Run() act only upon one "active" scene?
If not this would be indeed a nice engine feature!!!
I'll have another beer now, any one interested?
