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

Reply via email to