Seperated out the scene->requiresRedraw() method into a osgViewer::Viewer::requiresRedraw() method to make the functionality clearer and easier to override.
This commit is contained in:
parent
16d497ef80
commit
dce1473a53
@ -308,7 +308,10 @@ class OSGVIEWER_EXPORT View : public osg::View, public osgGA::GUIActionAdapter
|
||||
/** Return true if there are pending updates to the scene graph that require an update. */
|
||||
virtual bool requiresUpdateSceneGraph() const;
|
||||
|
||||
public:
|
||||
/** Return true if there are graphics operations that require a draw of the grpahics context. */
|
||||
virtual bool requiresRedraw() const;
|
||||
|
||||
public:
|
||||
|
||||
osg::Texture* createDistortionTexture(int width, int height);
|
||||
osg::Camera* assignRenderToTextureCamera(osg::GraphicsContext* gc, int width, int height, osg::Texture* texture);
|
||||
|
@ -267,7 +267,7 @@ bool CompositeViewer::checkNeedToDoFrame()
|
||||
++itr)
|
||||
{
|
||||
osgViewer::View* view = itr->get();
|
||||
if (view && view->requiresUpdateSceneGraph()) return true;
|
||||
if (view && (view->requiresUpdateSceneGraph() || view->requiresRedraw())) return true;
|
||||
}
|
||||
|
||||
// check if events are available and need processing
|
||||
|
@ -1138,13 +1138,18 @@ bool View::requiresUpdateSceneGraph() const
|
||||
// check if the scene requires an update traversal
|
||||
if (_scene.valid() && _scene->requiresUpdateSceneGraph()) return true;
|
||||
|
||||
// check if the scene requires a redraw
|
||||
// FIXME...
|
||||
if (_scene.valid() && _scene->requiresRedraw()) return true;
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
bool View::requiresRedraw() const
|
||||
{
|
||||
// check if the scene requires a redraw
|
||||
if (_scene.valid() && _scene->requiresRedraw()) return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Methods that support Stereo and Keystone correction.
|
||||
|
@ -379,6 +379,9 @@ bool Viewer::checkNeedToDoFrame()
|
||||
// check if the view needs to update the scene graph
|
||||
if (requiresUpdateSceneGraph()) return true;
|
||||
|
||||
// check if the view needs to be redraw
|
||||
if (requiresRedraw()) return true;
|
||||
|
||||
// check if events are available and need processing
|
||||
if (checkEvents()) return true;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user