Hello Hui, On 5. Jan 2008, at 0:48, 常辉 wrote:
> In the first release of eqOgre, I'v used each window's handle as > it's unique name and named objects of ogre by it. But there is too > many objects need to be renamed, SceneManager, Camera, Listener, and > any material, entity, node, etc, Then the code will be ugly and that > will be worse as the application grows. I believe that the SG objects (material, node, etc.) should exist only once per node, and should be managed by one MaterialManager (and friends) per pipe. I am not sure if we need multiple scene managers. As a rule of thumb, all rendering specific stuff (camera, OpenGL object and state management, etc.) is needed once per pipe (thread), and all scene-specific stuff (scene graph, scene manager, input manager, etc.) once per node. Of course there might be certain design decisions in Ogre preventing this approach, but then we should look at them and see if they can either be changed in Ogre or worked around elegantly. Maybe it's best to involve some Ogre specialists, and I can add my 2 cents from the Equalizer side. Have you explored that route? Regarding the scenegraph itself: It should be safe to have one instance per node, since all pipe threads and the main thread are by default synchronized. If this is unclear, read the appropriate section in the Programming Guide. If it's still unclear afterwards, ask here. :) HTH, Stefan. _______________________________________________ eq-dev mailing list [email protected] https://in-zueri.ch/cgi-bin/mailman/listinfo/eq-dev http://www.equalizergraphics.com

