<div dir="ltr">Hi Ralf.<br><div class="gmail_extra"><br></div><div class="gmail_extra">The viewer and the plugins are completely decoupled in the OSG, this is by design.  There is no global viewer instances or registry that would allow you to force such a coupling.  <br><br></div><div class="gmail_extra">However, for most applications this should not be an issue as you don't need to get the viewer when constructing nodes and images as done in the plugins, and for your usage case it might not be an issue either.  <br><br></div><div class="gmail_extra">I don't know the full details of your usage case but the usual approach I would take for adding event handling to subgraphs that are loaded indepdently from the viewer is to use an event callback assigned to a node.  The osgPresentation::SlideEventHandler is an example of an event handler that be assigned to the viewer or to the scene graph as a callback.  osgPresentation uses this approach to allow you to load .p3d files to create interactive presentations just by loading the appropriate .p3d into any OSG viewer.<br><br></div><div class="gmail_extra">There is a introduction.p3d in the OpenSceneGraph-Data set so try:<br><br></div><div class="gmail_extra">  osgviewer introduction.p3d<br><br></div><div class="gmail_extra">Then press arrow keys or page up/down or space to advance to the next slide.  osgPresentation also has support for clicking on elements in the scene using picking, all done using node event callbacks.<br></div><div class="gmail_extra"><br></div><div class="gmail_extra">Would this work for you?<br></div><div class="gmail_extra">Robert.<br></div><div class="gmail_extra"><br><br></div></div>