Introduce new osgViewer::Renderer class for implementing of the rendering

of cameras in viewers
This commit is contained in:
Robert Osfield
2007-08-02 11:02:47 +00:00
parent 1b36cfc928
commit c346f5b943
27 changed files with 1040 additions and 1137 deletions

View File

@@ -11,6 +11,7 @@
* OpenSceneGraph Public License for more details.
*/
#include <osgViewer/Renderer>
#include <osgViewer/View>
#include <osgViewer/GraphicsWindow>
@@ -126,6 +127,9 @@ View::View():
// make sure View is safe to reference multi-threaded.
setThreadSafeRefUnref(true);
// need to attach a Renderer to the maaster camera which has been default constructed
getCamera()->setRenderer(createRenderer(getCamera()));
setEventQueue(new osgGA::EventQueue);
}
@@ -144,6 +148,14 @@ View::~View()
// osg::notify(osg::NOTICE)<<"Destructing osgViewer::View"<<std::endl;
}
osg::GraphicsOperation* View::createRenderer(osg::Camera* camera)
{
Renderer* render = new Renderer(camera);
camera->setStats(new osg::Stats("Camera"));
return render;
}
void View::init()
{
osg::notify(osg::INFO)<<"View::init()"<<std::endl;