class OSGUTIL_EXPORT osgUtil::SceneView

SceneView is literally a view of a scene, encapsulating the camera (modelview+projection matrices), global state, lights and the scene itself.

Inheritance:


Public Classes

[more]enum Options
[more]enum FusionDistanceMode
FusionDistanceMode is used only when working in stereo
[more]struct ComputeStereoMatricesCallback: public osg::Referenced
callback for overidding the default method for compute the offset projection and view matrices

Public Methods

[more] SceneView(osg::DisplaySettings* ds=NULL)
Construct a default scene view
[more]void setDefaults(unsigned int options = STANDARD_SETTINGS)
Set scene view to use default global state, light, camera and render visitor
[more]void setSceneData(osg::Node* node)
Set the data which to view.
[more]osg::Node* getSceneData()
Get the scene data which to view.
[more]const osg::Node* getSceneData() const
Get the const scene data which to view.
[more]void setViewport(osg::Viewport* viewport)
Set the viewport of the scene view to use specfied osg::Viewport.
[more]void setViewport(int x, int y, int width, int height)
Set the viewport of the scene view to specified dimensions.
[more]const osg::Viewport* getViewport() const
Get the const viewport.
[more]osg::Viewport* getViewport()
Get the viewport.
[more]void getViewport(int& x, int& y, int& width, int& height) const
Get the viewport of the scene view.
[more]inline void setDisplaySettings(osg::DisplaySettings* vs)
Set the DisplaySettings.
[more]inline const osg::DisplaySettings* getDisplaySettings() const
Get the const DisplaySettings
[more]inline osg::DisplaySettings* getDisplaySettings()
Get the DisplaySettings
[more]void setBackgroundColor(const osg::Vec4& color)
Set the background color used in glClearColor().
[more]const osg::Vec4& getBackgroundColor() const
Get the background color
[more]void setClearColor(const osg::Vec4& color)
Set the color used in glClearColor().
[more]const osg::Vec4& getClearColor() const
Get the color usinged in glClearColor
[more]void setGlobalStateSet(osg::StateSet* state)
[more]osg::StateSet* getGlobalStateSet()
[more]const osg::StateSet* getGlobalStateSet() const
[more]void setLocalStateSet(osg::StateSet* state)
[more]osg::StateSet* getLocalStateSet()
[more]const osg::StateSet* getLocalStateSet() const
[more]void setLightingMode(LightingMode mode)
[more]LightingMode getLightingMode() const
[more]void setLight(osg::Light* light)
[more]osg::Light* getLight()
[more]const osg::Light* getLight() const
[more]void setState(osg::State* state)
[more]osg::State* getState()
[more]const osg::State* getState() const
[more]inline void setProjectionMatrix(const osg::Matrixf& matrix)
Set the projection matrix.
[more]inline void setProjectionMatrix(const osg::Matrixd& matrix)
Set the projection matrix.
[more]void setProjectionMatrixAsOrtho(double left, double right, double bottom, double top, double zNear, double zFar)
Set to a orthographic projection.
[more]void setProjectionMatrixAsOrtho2D(double left, double right, double bottom, double top)
Set to a 2D orthographic projection.
[more]void setProjectionMatrixAsFrustum(double left, double right, double bottom, double top, double zNear, double zFar)
Set to a perspective projection.
[more]void setProjectionMatrixAsPerspective(double fovy, double aspectRatio, double zNear, double zFar)
Create a symmetrical perspective projection, See OpenGL gluPerspective documentation for further details.
[more]osg::Matrixd& getProjectionMatrix()
Get the projection matrix
[more]const osg::Matrixd& getProjectionMatrix() const
Get the const projection matrix
[more]bool getProjectionMatrixAsOrtho(double& left, double& right, double& bottom, double& top, double& zNear, double& zFar)
Get the othorgraphic settings of the orthographic projection matrix.
[more]bool getProjectionMatrixAsFrustum(double& left, double& right, double& bottom, double& top, double& zNear, double& zFar)
Get the frustum setting of a perspective projection matrix.
[more]bool getProjectionMatrixAsPerspective(double& fovy, double& aspectRatio, double& zNear, double& zFar)
Get the frustum setting of a symetric perspective projection matrix.
[more]inline void setViewMatrix(const osg::Matrixf& matrix)
Set the view matrix.
[more]inline void setViewMatrix(const osg::Matrixd& matrix)
Set the view matrix.
[more]void setViewMatrixAsLookAt(const osg::Vec3& eye, const osg::Vec3& center, const osg::Vec3& up)
Set to the position and orientation of view matrix, using the same convention as gluLookAt.
[more]osg::Matrixd& getViewMatrix()
Get the view matrix.
[more]const osg::Matrixd& getViewMatrix() const
Get the const view matrix.
[more]void getViewMatrixAsLookAt(osg::Vec3& eye, osg::Vec3& center, osg::Vec3& up, float lookDistance=1.0f)
Get to the position and orientation of a modelview matrix, using the same convention as gluLookAt.
[more]void setInitVisitor(osg::NodeVisitor* av)
[more]osg::NodeVisitor* getInitVisitor()
[more]const osg::NodeVisitor* getInitVisitor() const
[more]void setUpdateVisitor(osg::NodeVisitor* av)
[more]osg::NodeVisitor* getUpdateVisitor()
[more]const osg::NodeVisitor* getUpdateVisitor() const
[more]void setCullVisitor(osgUtil::CullVisitor* cv)
[more]osgUtil::CullVisitor* getCullVisitor()
[more]const osgUtil::CullVisitor* getCullVisitor() const
[more]void setCullVisitorLeft(osgUtil::CullVisitor* cv)
[more]osgUtil::CullVisitor* getCullVisitorLeft()
[more]const osgUtil::CullVisitor* getCullVisitorLeft() const
[more]void setCullVisitorRight(osgUtil::CullVisitor* cv)
[more]osgUtil::CullVisitor* getCullVisitorRight()
[more]const osgUtil::CullVisitor* getCullVisitorRight() const
[more]void setCollectOccludersVisitor(osg::CollectOccludersVisitor* cov)
[more]osg::CollectOccludersVisitor* getCollectOccludersVisitor()
[more]const osg::CollectOccludersVisitor* getCollectOccludersVisitor() const
[more]void setRenderGraph(osgUtil::RenderGraph* rg)
[more]osgUtil::RenderGraph* getRenderGraph()
[more]const osgUtil::RenderGraph* getRenderGraph() const
[more]void setRenderGraphLeft(osgUtil::RenderGraph* rg)
[more]osgUtil::RenderGraph* getRenderGraphLeft()
[more]const osgUtil::RenderGraph* getRenderGraphLeft() const
[more]void setRenderGraphRight(osgUtil::RenderGraph* rg)
[more]osgUtil::RenderGraph* getRenderGraphRight()
[more]const osgUtil::RenderGraph* getRenderGraphRight() const
[more]void setRenderStage(osgUtil::RenderStage* rs)
[more]osgUtil::RenderStage* getRenderStage()
[more]const osgUtil::RenderStage* getRenderStage() const
[more]void setRenderStageLeft(osgUtil::RenderStage* rs)
[more]osgUtil::RenderStage* getRenderStageLeft()
[more]const osgUtil::RenderStage* getRenderStageLeft() const
[more]void setRenderStageRight(osgUtil::RenderStage* rs)
[more]osgUtil::RenderStage* getRenderStageRight()
[more]const osgUtil::RenderStage* getRenderStageRight() const
[more]void setDrawBufferValue( GLenum drawBufferValue )
Set the draw buffer value used at the start of each frame draw.
[more]GLenum getDrawBufferValue() const
Get the draw buffer value used at the start of each frame draw.
[more]void setFusionDistance(FusionDistanceMode mode, float value=1.0f)
Set the FusionDistanceMode and Value.
[more]FusionDistanceMode getFusionDistanceMode() const
Get the FusionDistanceMode
[more]float getFusionDistanceValue() const
Get the FusionDistanceValue.
[more]void setPrioritizeTextures(bool pt)
set whether the draw method should call renderer->prioritizeTexture
[more]bool getPrioritizeTextures() const
get whether the draw method should call renderer->prioritizeTexture
[more]void setComputeStereoMatricesCallback(ComputeStereoMatricesCallback* callback)
[more]ComputeStereoMatricesCallback* getComputeStereoMatricesCallback()
[more]const ComputeStereoMatricesCallback* getComputeStereoMatricesCallback() const
[more]bool projectWindowIntoObject(const osg::Vec3& window, osg::Vec3& object) const
Calculate, via glUnProject, the object coordinates of a window point.
[more]bool projectWindowXYIntoObject(int x, int y, osg::Vec3& near_point, osg::Vec3& far_point) const
Calculate, via glUnProject, the object coordinates of a window x,y when projected onto the near and far planes.
[more]bool projectObjectIntoWindow(const osg::Vec3& object, osg::Vec3& window) const
Calculate, via glProject, the object coordinates of a window.
[more]inline void setFrameStamp(osg::FrameStamp* fs)
Set the frame stamp for the current frame
[more]inline const osg::FrameStamp* getFrameStamp() const
Set the frame stamp for the current frame
[more]inline osg::Matrixd computeLeftEyeProjection(const osg::Matrixd& projection) const
[more]inline osg::Matrixd computeLeftEyeView(const osg::Matrixd& view) const
[more]inline osg::Matrixd computeRightEyeProjection(const osg::Matrixd& projection) const
[more]inline osg::Matrixd computeRightEyeView(const osg::Matrixd& view) const
[more]virtual osg::Matrixd computeLeftEyeProjectionImplementation(const osg::Matrixd& projection) const
[more]virtual osg::Matrixd computeLeftEyeViewImplementation(const osg::Matrixd& view) const
[more]virtual osg::Matrixd computeRightEyeProjectionImplementation(const osg::Matrixd& projection) const
[more]virtual osg::Matrixd computeRightEyeViewImplementation(const osg::Matrixd& view) const
[more]virtual void init()
Do init traversal of attached scene graph using Init NodeVisitor.
[more]virtual void update()
Do app traversal of attached scene graph using App NodeVisitor
[more]virtual void cull()
Do cull traversal of attached scene graph using Cull NodeVisitor
[more]virtual void draw()
Do draw traversal of draw bins generated by cull traversal
[more]virtual void flushDeletedGLObjects(double& availableTime)
Flush all the OpenGL objects, such as texture objects, display lists etc

Public

[more]typedef Options LightingMode

Protected Fields

[more]osg::ref_ptr<osg::StateSet> _localStateSet
[more]osg::ref_ptr<osg::State> _state
[more]osg::Matrixd _projectionMatrix
[more]osg::Matrixd _viewMatrix
[more]bool _initCalled
[more]osg::ref_ptr<osg::NodeVisitor> _initVisitor
[more]osg::ref_ptr<osg::NodeVisitor> _updateVisitor
[more]osg::ref_ptr<osgUtil::CullVisitor> _cullVisitor
[more]osg::ref_ptr<osgUtil::RenderGraph> _rendergraph
[more]osg::ref_ptr<osgUtil::RenderStage> _renderStage
[more]osg::ref_ptr<ComputeStereoMatricesCallback> _computeStereoMatricesCallback
[more]osg::ref_ptr<osgUtil::CullVisitor> _cullVisitorLeft
[more]osg::ref_ptr<osgUtil::RenderGraph> _rendergraphLeft
[more]osg::ref_ptr<osgUtil::RenderStage> _renderStageLeft
[more]osg::ref_ptr<osgUtil::CullVisitor> _cullVisitorRight
[more]osg::ref_ptr<osgUtil::RenderGraph> _rendergraphRight
[more]osg::ref_ptr<osgUtil::RenderStage> _renderStageRight
[more]osg::ref_ptr<osg::CollectOccludersVisitor> _collectOccludersVisistor
[more]osg::ref_ptr<osg::FrameStamp> _frameStamp
[more]osg::ref_ptr<osg::Node> _sceneData
[more]osg::ref_ptr<osg::StateSet> _globalStateSet
[more]osg::ref_ptr<osg::Light> _light
[more]osg::ref_ptr<osg::DisplaySettings> _displaySettings
[more]osg::Vec4 _clearColor
[more]FusionDistanceMode _fusionDistanceMode
[more]float _fusionDistanceValue
[more]osg::ref_ptr<osg::Viewport> _viewport
[more]LightingMode _lightingMode
[more]bool _prioritizeTextures
[more]GLenum _drawBufferValue
[more]bool _requiresFlush

Protected Methods

[more]virtual ~SceneView()
[more]virtual void cullStage(const osg::Matrixd& projection, const osg::Matrixd& modelview, osgUtil::CullVisitor* cullVisitor, osgUtil::RenderGraph* rendergraph, osgUtil::RenderStage* renderStage)
Do cull traversal of attached scene graph using Cull NodeVisitor
[more]const osg::Matrix computeMVPW() const
[more]void clearArea(int x, int y, int width, int height, const osg::Vec4& color)


Documentation

SceneView is literally a view of a scene, encapsulating the camera (modelview+projection matrices), global state, lights and the scene itself. Provides methods for setting up the view and rendering it.
o SceneView(osg::DisplaySettings* ds=NULL)
Construct a default scene view

oenum Options

o NO_SCENEVIEW_LIGHT

o HEADLIGHT

o SKY_LIGHT

o COMPILE_GLOBJECTS_AT_INIT

o STANDARD_SETTINGS

ovoid setDefaults(unsigned int options = STANDARD_SETTINGS)
Set scene view to use default global state, light, camera and render visitor

ovoid setSceneData(osg::Node* node)
Set the data which to view. The data will typically be an osg::Scene but can be any osg::Node type.

oosg::Node* getSceneData()
Get the scene data which to view. The data will typically be an osg::Scene but can be any osg::Node type.

oconst osg::Node* getSceneData() const
Get the const scene data which to view. The data will typically be an osg::Scene but can be any osg::Node type.

ovoid setViewport(osg::Viewport* viewport)
Set the viewport of the scene view to use specfied osg::Viewport.

ovoid setViewport(int x, int y, int width, int height)
Set the viewport of the scene view to specified dimensions.

oconst osg::Viewport* getViewport() const
Get the const viewport.

oosg::Viewport* getViewport()
Get the viewport.

ovoid getViewport(int& x, int& y, int& width, int& height) const
Get the viewport of the scene view.

oinline void setDisplaySettings(osg::DisplaySettings* vs)
Set the DisplaySettings.

oinline const osg::DisplaySettings* getDisplaySettings() const
Get the const DisplaySettings

oinline osg::DisplaySettings* getDisplaySettings()
Get the DisplaySettings

ovoid setBackgroundColor(const osg::Vec4& color)
Set the background color used in glClearColor(). Defaults to an off blue color.

oconst osg::Vec4& getBackgroundColor() const
Get the background color

ovoid setClearColor(const osg::Vec4& color)
Set the color used in glClearColor(). Defaults to an off blue color.

oconst osg::Vec4& getClearColor() const
Get the color usinged in glClearColor

ovoid setGlobalStateSet(osg::StateSet* state)

oosg::StateSet* getGlobalStateSet()

oconst osg::StateSet* getGlobalStateSet() const

ovoid setLocalStateSet(osg::StateSet* state)

oosg::StateSet* getLocalStateSet()

oconst osg::StateSet* getLocalStateSet() const

otypedef Options LightingMode

ovoid setLightingMode(LightingMode mode)

oLightingMode getLightingMode() const

ovoid setLight(osg::Light* light)

oosg::Light* getLight()

oconst osg::Light* getLight() const

ovoid setState(osg::State* state)

oosg::State* getState()

oconst osg::State* getState() const

oinline void setProjectionMatrix(const osg::Matrixf& matrix)
Set the projection matrix. Can be thought of as setting the lens of a camera.

oinline void setProjectionMatrix(const osg::Matrixd& matrix)
Set the projection matrix. Can be thought of as setting the lens of a camera.

ovoid setProjectionMatrixAsOrtho(double left, double right, double bottom, double top, double zNear, double zFar)
Set to a orthographic projection. See OpenGL glOrtho for documentation further details.

ovoid setProjectionMatrixAsOrtho2D(double left, double right, double bottom, double top)
Set to a 2D orthographic projection. See OpenGL glOrtho2D documentation for further details.

ovoid setProjectionMatrixAsFrustum(double left, double right, double bottom, double top, double zNear, double zFar)
Set to a perspective projection. See OpenGL glFrustum documentation for further details.

ovoid setProjectionMatrixAsPerspective(double fovy, double aspectRatio, double zNear, double zFar)
Create a symmetrical perspective projection, See OpenGL gluPerspective documentation for further details. Aspect ratio is defined as width/height.

oosg::Matrixd& getProjectionMatrix()
Get the projection matrix

oconst osg::Matrixd& getProjectionMatrix() const
Get the const projection matrix

obool getProjectionMatrixAsOrtho(double& left, double& right, double& bottom, double& top, double& zNear, double& zFar)
Get the othorgraphic settings of the orthographic projection matrix. Returns false if matrix is not an orthographic matrix, where parameter values are undefined.

obool getProjectionMatrixAsFrustum(double& left, double& right, double& bottom, double& top, double& zNear, double& zFar)
Get the frustum setting of a perspective projection matrix. Returns false if matrix is not a perspective matrix, where parameter values are undefined.

obool getProjectionMatrixAsPerspective(double& fovy, double& aspectRatio, double& zNear, double& zFar)
Get the frustum setting of a symetric perspective projection matrix. Returns false if matrix is not a perspective matrix, where parameter values are undefined. Note, if matrix is not a symetric perspective matrix then the shear will be lost. Asymetric metrices occur when stereo, power walls, caves and reality center display are used. In these configuration one should use the AsFrustum method instead.

oinline void setViewMatrix(const osg::Matrixf& matrix)
Set the view matrix. Can be thought of as setting the position of the world relative to the camera in camera coordinates.

oinline void setViewMatrix(const osg::Matrixd& matrix)
Set the view matrix. Can be thought of as setting the position of the world relative to the camera in camera coordinates.

ovoid setViewMatrixAsLookAt(const osg::Vec3& eye, const osg::Vec3& center, const osg::Vec3& up)
Set to the position and orientation of view matrix, using the same convention as gluLookAt.

oosg::Matrixd& getViewMatrix()
Get the view matrix.

oconst osg::Matrixd& getViewMatrix() const
Get the const view matrix.

ovoid getViewMatrixAsLookAt(osg::Vec3& eye, osg::Vec3& center, osg::Vec3& up, float lookDistance=1.0f)
Get to the position and orientation of a modelview matrix, using the same convention as gluLookAt.

ovoid setInitVisitor(osg::NodeVisitor* av)

oosg::NodeVisitor* getInitVisitor()

oconst osg::NodeVisitor* getInitVisitor() const

ovoid setUpdateVisitor(osg::NodeVisitor* av)

oosg::NodeVisitor* getUpdateVisitor()

oconst osg::NodeVisitor* getUpdateVisitor() const

ovoid setCullVisitor(osgUtil::CullVisitor* cv)

oosgUtil::CullVisitor* getCullVisitor()

oconst osgUtil::CullVisitor* getCullVisitor() const

ovoid setCullVisitorLeft(osgUtil::CullVisitor* cv)

oosgUtil::CullVisitor* getCullVisitorLeft()

oconst osgUtil::CullVisitor* getCullVisitorLeft() const

ovoid setCullVisitorRight(osgUtil::CullVisitor* cv)

oosgUtil::CullVisitor* getCullVisitorRight()

oconst osgUtil::CullVisitor* getCullVisitorRight() const

ovoid setCollectOccludersVisitor(osg::CollectOccludersVisitor* cov)

oosg::CollectOccludersVisitor* getCollectOccludersVisitor()

oconst osg::CollectOccludersVisitor* getCollectOccludersVisitor() const

ovoid setRenderGraph(osgUtil::RenderGraph* rg)

oosgUtil::RenderGraph* getRenderGraph()

oconst osgUtil::RenderGraph* getRenderGraph() const

ovoid setRenderGraphLeft(osgUtil::RenderGraph* rg)

oosgUtil::RenderGraph* getRenderGraphLeft()

oconst osgUtil::RenderGraph* getRenderGraphLeft() const

ovoid setRenderGraphRight(osgUtil::RenderGraph* rg)

oosgUtil::RenderGraph* getRenderGraphRight()

oconst osgUtil::RenderGraph* getRenderGraphRight() const

ovoid setRenderStage(osgUtil::RenderStage* rs)

oosgUtil::RenderStage* getRenderStage()

oconst osgUtil::RenderStage* getRenderStage() const

ovoid setRenderStageLeft(osgUtil::RenderStage* rs)

oosgUtil::RenderStage* getRenderStageLeft()

oconst osgUtil::RenderStage* getRenderStageLeft() const

ovoid setRenderStageRight(osgUtil::RenderStage* rs)

oosgUtil::RenderStage* getRenderStageRight()

oconst osgUtil::RenderStage* getRenderStageRight() const

ovoid setDrawBufferValue( GLenum drawBufferValue )
Set the draw buffer value used at the start of each frame draw. Note, overridden in quad buffer stereo mode

oGLenum getDrawBufferValue() const
Get the draw buffer value used at the start of each frame draw.

oenum FusionDistanceMode
FusionDistanceMode is used only when working in stereo

o USE_FUSION_DISTANCE_VALUE
Use fusion distance from the value set on the SceneView

o PROPORTIONAL_TO_SCREEN_DISTANCE
Compute the fusion distance by multiplying the screen distance by the fusion distance value

ovoid setFusionDistance(FusionDistanceMode mode, float value=1.0f)
Set the FusionDistanceMode and Value. Note, is used only when working in stereo.

oFusionDistanceMode getFusionDistanceMode() const
Get the FusionDistanceMode

ofloat getFusionDistanceValue() const
Get the FusionDistanceValue. Note, only used for USE_FUSION_DISTANCE_VALUE & PROPORTIONAL_TO_SCREEN_DISTANCE modes.

ovoid setPrioritizeTextures(bool pt)
set whether the draw method should call renderer->prioritizeTexture

obool getPrioritizeTextures() const
get whether the draw method should call renderer->prioritizeTexture

ostruct ComputeStereoMatricesCallback: public osg::Referenced
callback for overidding the default method for compute the offset projection and view matrices

ovirtual osg::Matrixd computeLeftEyeProjection(const osg::Matrixd& projection) const

ovirtual osg::Matrixd computeLeftEyeView(const osg::Matrixd& view) const

ovirtual osg::Matrixd computeRightEyeProjection(const osg::Matrixd& projection) const

ovirtual osg::Matrixd computeRightEyeView(const osg::Matrixd& view) const

ovoid setComputeStereoMatricesCallback(ComputeStereoMatricesCallback* callback)

oComputeStereoMatricesCallback* getComputeStereoMatricesCallback()

oconst ComputeStereoMatricesCallback* getComputeStereoMatricesCallback() const

obool projectWindowIntoObject(const osg::Vec3& window, osg::Vec3& object) const
Calculate, via glUnProject, the object coordinates of a window point. Note, current implementation requires that SceneView::draw() has been previously called for projectWindowIntoObject to produce valid values. Consistent with OpenGL windows coordinates are calculated relative to the bottom left of the window. Returns true on successful projection.

obool projectWindowXYIntoObject(int x, int y, osg::Vec3& near_point, osg::Vec3& far_point) const
Calculate, via glUnProject, the object coordinates of a window x,y when projected onto the near and far planes. Note, current implementation requires that SceneView::draw() has been previously called for projectWindowIntoObject to produce valid values. Consistent with OpenGL windows coordinates are calculated relative to the bottom left of the window. Returns true on successful projection.

obool projectObjectIntoWindow(const osg::Vec3& object, osg::Vec3& window) const
Calculate, via glProject, the object coordinates of a window. Note, current implementation requires that SceneView::draw() has been previously called for projectWindowIntoObject to produce valid values. Consistent with OpenGL windows coordinates are calculated relative to the bottom left of the window, whereas as window API's normally have the top left as the origin, so you may need to pass in (mouseX,window_height-mouseY,...). Returns true on successful projection.

oinline void setFrameStamp(osg::FrameStamp* fs)
Set the frame stamp for the current frame

oinline const osg::FrameStamp* getFrameStamp() const
Set the frame stamp for the current frame

oinline osg::Matrixd computeLeftEyeProjection(const osg::Matrixd& projection) const

oinline osg::Matrixd computeLeftEyeView(const osg::Matrixd& view) const

oinline osg::Matrixd computeRightEyeProjection(const osg::Matrixd& projection) const

oinline osg::Matrixd computeRightEyeView(const osg::Matrixd& view) const

ovirtual osg::Matrixd computeLeftEyeProjectionImplementation(const osg::Matrixd& projection) const

ovirtual osg::Matrixd computeLeftEyeViewImplementation(const osg::Matrixd& view) const

ovirtual osg::Matrixd computeRightEyeProjectionImplementation(const osg::Matrixd& projection) const

ovirtual osg::Matrixd computeRightEyeViewImplementation(const osg::Matrixd& view) const

ovirtual void init()
Do init traversal of attached scene graph using Init NodeVisitor. The init traversal is called once for each SceneView, and should be used to compile display list, texture objects intialize data not otherwise intializaed during scene graph loading. Note, is called automatically by update&cull if it hasn't already been called elsewhere. Also init() should only ever be called within a valid graphics context.

ovirtual void update()
Do app traversal of attached scene graph using App NodeVisitor

ovirtual void cull()
Do cull traversal of attached scene graph using Cull NodeVisitor

ovirtual void draw()
Do draw traversal of draw bins generated by cull traversal

ovirtual void flushDeletedGLObjects(double& availableTime)
Flush all the OpenGL objects, such as texture objects, display lists etc

ovirtual ~SceneView()

ovirtual void cullStage(const osg::Matrixd& projection, const osg::Matrixd& modelview, osgUtil::CullVisitor* cullVisitor, osgUtil::RenderGraph* rendergraph, osgUtil::RenderStage* renderStage)
Do cull traversal of attached scene graph using Cull NodeVisitor

oconst osg::Matrix computeMVPW() const

ovoid clearArea(int x, int y, int width, int height, const osg::Vec4& color)

oosg::ref_ptr<osg::StateSet> _localStateSet

oosg::ref_ptr<osg::State> _state

oosg::Matrixd _projectionMatrix

oosg::Matrixd _viewMatrix

obool _initCalled

oosg::ref_ptr<osg::NodeVisitor> _initVisitor

oosg::ref_ptr<osg::NodeVisitor> _updateVisitor

oosg::ref_ptr<osgUtil::CullVisitor> _cullVisitor

oosg::ref_ptr<osgUtil::RenderGraph> _rendergraph

oosg::ref_ptr<osgUtil::RenderStage> _renderStage

oosg::ref_ptr<ComputeStereoMatricesCallback> _computeStereoMatricesCallback

oosg::ref_ptr<osgUtil::CullVisitor> _cullVisitorLeft

oosg::ref_ptr<osgUtil::RenderGraph> _rendergraphLeft

oosg::ref_ptr<osgUtil::RenderStage> _renderStageLeft

oosg::ref_ptr<osgUtil::CullVisitor> _cullVisitorRight

oosg::ref_ptr<osgUtil::RenderGraph> _rendergraphRight

oosg::ref_ptr<osgUtil::RenderStage> _renderStageRight

oosg::ref_ptr<osg::CollectOccludersVisitor> _collectOccludersVisistor

oosg::ref_ptr<osg::FrameStamp> _frameStamp

oosg::ref_ptr<osg::Node> _sceneData

oosg::ref_ptr<osg::StateSet> _globalStateSet

oosg::ref_ptr<osg::Light> _light

oosg::ref_ptr<osg::DisplaySettings> _displaySettings

oosg::Vec4 _clearColor

oFusionDistanceMode _fusionDistanceMode

ofloat _fusionDistanceValue

oosg::ref_ptr<osg::Viewport> _viewport

oLightingMode _lightingMode

obool _prioritizeTextures

oGLenum _drawBufferValue

obool _requiresFlush


This class has no child classes.

Alphabetic index HTML hierarchy of classes or Java



This page was generated with the help of DOC++.