osgUtil::SceneView Class Reference

SceneView is literaly a view of a scene, encapsulating the rendering of the scene. More...

Inheritance diagram for osgUtil::SceneView:

Inheritance graph
[legend]

List of all members.

Public Types

enum  Options {
  NO_SCENEVIEW_LIGHT = 0x0, HEADLIGHT = 0x1, SKY_LIGHT = 0x2, COMPILE_GLOBJECTS_AT_INIT = 0x4,
  STANDARD_SETTINGS
}
enum  ActiveUniforms {
  FRAME_NUMBER_UNIFORM = 1, FRAME_TIME_UNIFORM = 2, DELTA_FRAME_TIME_UNIFORM = 4, SIMULATION_TIME_UNIFORM = 8,
  DELTA_SIMULATION_TIME_UNIFORM = 16, VIEW_MATRIX_UNIFORM = 32, VIEW_MATRIX_INVERSE_UNIFORM = 64, DEFAULT_UNIFORMS,
  ALL_UNIFORMS = 0xFFFFFFFF
}
enum  FusionDistanceMode { USE_FUSION_DISTANCE_VALUE, PROPORTIONAL_TO_SCREEN_DISTANCE }
 FusionDistanceMode is used only when working in stereo. More...
typedef Options LightingMode

Public Member Functions

 SceneView (osg::DisplaySettings *ds=NULL)
 Construct a default scene view.
 SceneView (const SceneView &sceneview, const osg::CopyOp &copyop=osg::CopyOp())
 META_Object (osgUtil, SceneView)
virtual void setDefaults ()
virtual void setDefaults (unsigned int options)
 Set scene view to use default global state, light, camera and render visitor.
void setCamera (osg::Camera *camera, bool assumeOwnershipOfCamera=true)
 Set the camera used to represent the camera view of this SceneView.
osg::CameragetCamera ()
 Get the camera used to represent the camera view of this SceneView.
const osg::CameragetCamera () const
 Get the const camera used to represent the camera view of this SceneView.
void setSceneData (osg::Node *node)
 Set the data to view.
osg::NodegetSceneData (unsigned int childNo=0)
 Get the scene data to view.
const osg::NodegetSceneData (unsigned int childNo=0) const
 Get the const scene data which to view.
unsigned int getNumSceneData () const
 Get the number of scene data subgraphs added to the SceneView's camera.
void setViewport (osg::Viewport *viewport)
 Set the viewport of the scene view to use specified osg::Viewport.
void setViewport (int x, int y, int width, int height)
 Set the viewport of the scene view to specified dimensions.
osg::ViewportgetViewport ()
 Get the viewport.
const osg::ViewportgetViewport () const
 Get the const viewport.
void setDisplaySettings (osg::DisplaySettings *vs)
 Set the DisplaySettings.
const
osg::DisplaySettings
getDisplaySettings () const
 Get the const DisplaySettings.
osg::DisplaySettingsgetDisplaySettings ()
 Get the DisplaySettings.
void setClearColor (const osg::Vec4 &color)
 Set the color used in glClearColor().
const osg::Vec4getClearColor () const
 Get the color used in glClearColor.
void setRedrawInterlacedStereoStencilMask (bool flag)
 Manually set the redraw interlaced stereo stencil mask request flag to control whether to redraw the stencil buffer on the next frame.
bool getRedrawInterlacedStereoStencilMask () const
 Get the redraw interlaced stereo stencil mask request flag.
void setGlobalStateSet (osg::StateSet *state)
osg::StateSetgetGlobalStateSet ()
const osg::StateSetgetGlobalStateSet () const
void setLocalStateSet (osg::StateSet *state)
osg::StateSetgetLocalStateSet ()
const osg::StateSetgetLocalStateSet () const
void setActiveUniforms (int activeUniforms)
 Set the uniforms that SceneView should set set up on each frame.
int getActiveUniforms () const
 Get the uniforms that SceneView should set set up on each frame.
void updateUniforms ()
void setLightingMode (LightingMode mode)
LightingMode getLightingMode () const
void setLight (osg::Light *light)
osg::LightgetLight ()
const osg::LightgetLight () const
void setState (osg::State *state)
osg::StategetState ()
const osg::StategetState () const
void setView (osg::View *view)
osg::ViewgetView ()
const osg::ViewgetView () const
void setRenderInfo (osg::RenderInfo &renderInfo)
osg::RenderInfogetRenderInfo ()
const osg::RenderInfogetRenderInfo () const
void setProjectionMatrix (const osg::Matrixf &matrix)
 Set the projection matrix.
void setProjectionMatrix (const osg::Matrixd &matrix)
 Set the projection matrix.
void setProjectionMatrixAsOrtho (double left, double right, double bottom, double top, double zNear, double zFar)
 Set to an orthographic projection.
void setProjectionMatrixAsOrtho2D (double left, double right, double bottom, double top)
 Set to a 2D orthographic projection.
void setProjectionMatrixAsFrustum (double left, double right, double bottom, double top, double zNear, double zFar)
 Set to a perspective projection.
void setProjectionMatrixAsPerspective (double fovy, double aspectRatio, double zNear, double zFar)
 Create a symmetrical perspective projection, See OpenGL gluPerspective documentation for further details.
osg::MatrixdgetProjectionMatrix ()
 Get the projection matrix.
const osg::MatrixdgetProjectionMatrix () const
 Get the const projection matrix.
bool getProjectionMatrixAsOrtho (double &left, double &right, double &bottom, double &top, double &zNear, double &zFar) const
 Get the orthographic settings of the orthographic projection matrix.
bool getProjectionMatrixAsFrustum (double &left, double &right, double &bottom, double &top, double &zNear, double &zFar) const
 Get the frustum setting of a perspective projection matrix.
bool getProjectionMatrixAsPerspective (double &fovy, double &aspectRatio, double &zNear, double &zFar) const
 Get the frustum setting of a symmetric perspective projection matrix.
void setViewMatrix (const osg::Matrixf &matrix)
 Set the view matrix.
void setViewMatrix (const osg::Matrixd &matrix)
 Set the view matrix.
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.
osg::MatrixdgetViewMatrix ()
 Get the view matrix.
const osg::MatrixdgetViewMatrix () const
 Get the const view matrix.
void getViewMatrixAsLookAt (osg::Vec3 &eye, osg::Vec3 &center, osg::Vec3 &up, float lookDistance=1.0f) const
 Get to the position and orientation of a modelview matrix, using the same convention as gluLookAt.
void setInitVisitor (osg::NodeVisitor *av)
osg::NodeVisitorgetInitVisitor ()
const osg::NodeVisitorgetInitVisitor () const
void setUpdateVisitor (osg::NodeVisitor *av)
osg::NodeVisitorgetUpdateVisitor ()
const osg::NodeVisitorgetUpdateVisitor () const
void setCullVisitor (osgUtil::CullVisitor *cv)
osgUtil::CullVisitorgetCullVisitor ()
const
osgUtil::CullVisitor
getCullVisitor () const
void setCullVisitorLeft (osgUtil::CullVisitor *cv)
osgUtil::CullVisitorgetCullVisitorLeft ()
const
osgUtil::CullVisitor
getCullVisitorLeft () const
void setCullVisitorRight (osgUtil::CullVisitor *cv)
osgUtil::CullVisitorgetCullVisitorRight ()
const
osgUtil::CullVisitor
getCullVisitorRight () const
void setCollectOccludersVisitor (osg::CollectOccludersVisitor *cov)
osg::CollectOccludersVisitorgetCollectOccludersVisitor ()
const
osg::CollectOccludersVisitor
getCollectOccludersVisitor () const
void setStateGraph (osgUtil::StateGraph *rg)
osgUtil::StateGraphgetStateGraph ()
const
osgUtil::StateGraph
getStateGraph () const
void setStateGraphLeft (osgUtil::StateGraph *rg)
osgUtil::StateGraphgetStateGraphLeft ()
const
osgUtil::StateGraph
getStateGraphLeft () const
void setStateGraphRight (osgUtil::StateGraph *rg)
osgUtil::StateGraphgetStateGraphRight ()
const
osgUtil::StateGraph
getStateGraphRight () const
void setRenderStage (osgUtil::RenderStage *rs)
osgUtil::RenderStagegetRenderStage ()
const
osgUtil::RenderStage
getRenderStage () const
void setRenderStageLeft (osgUtil::RenderStage *rs)
osgUtil::RenderStagegetRenderStageLeft ()
const
osgUtil::RenderStage
getRenderStageLeft () const
void setRenderStageRight (osgUtil::RenderStage *rs)
osgUtil::RenderStagegetRenderStageRight ()
const
osgUtil::RenderStage
getRenderStageRight () const
void setDrawBufferValue (GLenum drawBufferValue)
 Set the draw buffer value used at the start of each frame draw.
GLenum getDrawBufferValue () const
 Get the draw buffer value used at the start of each frame draw.
void setFusionDistance (FusionDistanceMode mode, float value=1.0f)
 Set the FusionDistanceMode and Value.
FusionDistanceMode getFusionDistanceMode () const
 Get the FusionDistanceMode.
float getFusionDistanceValue () const
 Get the FusionDistanceValue.
void setPrioritizeTextures (bool pt)
 Set whether the draw method should call renderer->prioritizeTexture.
bool getPrioritizeTextures () const
 Get whether the draw method should call renderer->prioritizeTexture.
void setComputeStereoMatricesCallback (ComputeStereoMatricesCallback *callback)
ComputeStereoMatricesCallbackgetComputeStereoMatricesCallback ()
const
ComputeStereoMatricesCallback
getComputeStereoMatricesCallback () const
bool projectWindowIntoObject (const osg::Vec3 &window, osg::Vec3 &object) const
 Calculate the object coordinates of a point in window coordinates.
bool projectWindowXYIntoObject (int x, int y, osg::Vec3 &near_point, osg::Vec3 &far_point) const
 Calculate the object coordinates of a window x,y when projected onto the near and far planes.
bool projectObjectIntoWindow (const osg::Vec3 &object, osg::Vec3 &window) const
 Calculate the window coordinates of a point in object coordinates.
void setFrameStamp (osg::FrameStamp *fs)
 Set the frame stamp for the current frame.
const osg::FrameStampgetFrameStamp () const
 Get the frame stamp for the current frame.
osg::Matrixd computeLeftEyeProjection (const osg::Matrixd &projection) const
osg::Matrixd computeLeftEyeView (const osg::Matrixd &view) const
osg::Matrixd computeRightEyeProjection (const osg::Matrixd &projection) const
osg::Matrixd computeRightEyeView (const osg::Matrixd &view) const
virtual osg::Matrixd computeLeftEyeProjectionImplementation (const osg::Matrixd &projection) const
virtual osg::Matrixd computeLeftEyeViewImplementation (const osg::Matrixd &view) const
virtual osg::Matrixd computeRightEyeProjectionImplementation (const osg::Matrixd &projection) const
virtual osg::Matrixd computeRightEyeViewImplementation (const osg::Matrixd &view) const
virtual void inheritCullSettings (const osg::CullSettings &settings)
 Inherit the local cull settings variable from specified CullSettings object, according to the inheritance mask.
virtual void inheritCullSettings (const osg::CullSettings &settings, unsigned int inheritanceMask)
 Inherit the local cull settings variable from specified CullSettings object, according to the inheritance mask.
virtual void init ()
 Do init traversal of attached scene graph using Init NodeVisitor.
virtual void update ()
 Do app traversal of attached scene graph using App NodeVisitor.
virtual void cull ()
 Do cull traversal of attached scene graph using Cull NodeVisitor.
virtual void draw ()
 Do draw traversal of draw bins generated by cull traversal.
unsigned int getDynamicObjectCount () const
 Compute the number of dynamic objects that will be held in the rendering backend.
virtual void releaseAllGLObjects ()
 Release all OpenGL objects from the scene graph, such as texture objects, display lists etc.
virtual void flushAllDeletedGLObjects ()
 Flush all deleted OpenGL objects, such as texture objects, display lists etc.
virtual void flushDeletedGLObjects (double &availableTime)
 Flush deleted OpenGL objects, such as texture objects, display lists etc within specified available time.
bool getStats (Statistics &primStats)
 Extract stats for current draw list.

Protected Member Functions

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

Protected Attributes

osg::ref_ptr
< osg::StateSet
_localStateSet
osg::RenderInfo _renderInfo
bool _initCalled
osg::ref_ptr
< osg::NodeVisitor
_initVisitor
osg::ref_ptr
< osg::NodeVisitor
_updateVisitor
osg::ref_ptr
< osgUtil::CullVisitor
_cullVisitor
osg::ref_ptr
< osgUtil::StateGraph
_rendergraph
osg::ref_ptr
< osgUtil::RenderStage
_renderStage
osg::ref_ptr
< ComputeStereoMatricesCallback
_computeStereoMatricesCallback
osg::ref_ptr
< osgUtil::CullVisitor
_cullVisitorLeft
osg::ref_ptr
< osgUtil::StateGraph
_rendergraphLeft
osg::ref_ptr
< osgUtil::RenderStage
_renderStageLeft
osg::ref_ptr
< osgUtil::CullVisitor
_cullVisitorRight
osg::ref_ptr
< osgUtil::StateGraph
_rendergraphRight
osg::ref_ptr
< osgUtil::RenderStage
_renderStageRight
osg::ref_ptr
< osg::CollectOccludersVisitor
_collectOccludersVisitor
osg::ref_ptr
< osg::FrameStamp
_frameStamp
osg::observer_ptr
< osg::Camera
_camera
osg::ref_ptr
< osg::Camera
_cameraWithOwnership
osg::ref_ptr
< osg::StateSet
_globalStateSet
osg::ref_ptr
< osg::Light
_light
osg::ref_ptr
< osg::DisplaySettings
_displaySettings
FusionDistanceMode _fusionDistanceMode
float _fusionDistanceValue
LightingMode _lightingMode
bool _prioritizeTextures
bool _requiresFlush
int _activeUniforms
double _previousFrameTime
double _previousSimulationTime
bool _redrawInterlacedStereoStencilMask
int _interlacedStereoStencilWidth
int _interlacedStereoStencilHeight
unsigned int _dynamicObjectCount

Classes

struct  ComputeStereoMatricesCallback
 Callback for overidding the default method for compute the offset projection and view matrices. More...


Detailed Description

SceneView is literaly a view of a scene, encapsulating the rendering of the scene.

Provides methods for setting up the view and rendering it.


Member Typedef Documentation

typedef Options osgUtil::SceneView::LightingMode


Member Enumeration Documentation

enum osgUtil::SceneView::Options

Enumerator:
NO_SCENEVIEW_LIGHT 
HEADLIGHT 
SKY_LIGHT 
COMPILE_GLOBJECTS_AT_INIT 
STANDARD_SETTINGS 

enum osgUtil::SceneView::ActiveUniforms

Enumerator:
FRAME_NUMBER_UNIFORM 
FRAME_TIME_UNIFORM 
DELTA_FRAME_TIME_UNIFORM 
SIMULATION_TIME_UNIFORM 
DELTA_SIMULATION_TIME_UNIFORM 
VIEW_MATRIX_UNIFORM 
VIEW_MATRIX_INVERSE_UNIFORM 
DEFAULT_UNIFORMS 
ALL_UNIFORMS 

enum osgUtil::SceneView::FusionDistanceMode

FusionDistanceMode is used only when working in stereo.

Enumerator:
USE_FUSION_DISTANCE_VALUE  Use fusion distance from the value set on the SceneView.

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


Constructor & Destructor Documentation

osgUtil::SceneView::SceneView ( osg::DisplaySettings ds = NULL  ) 

Construct a default scene view.

osgUtil::SceneView::SceneView ( const SceneView sceneview,
const osg::CopyOp copyop = osg::CopyOp() 
)

virtual osgUtil::SceneView::~SceneView (  )  [protected, virtual]


Member Function Documentation

osgUtil::SceneView::META_Object ( osgUtil  ,
SceneView   
)

virtual void osgUtil::SceneView::setDefaults (  )  [inline, virtual]

Reimplemented from osg::CullSettings.

virtual void osgUtil::SceneView::setDefaults ( unsigned int  options  )  [virtual]

Set scene view to use default global state, light, camera and render visitor.

void osgUtil::SceneView::setCamera ( osg::Camera camera,
bool  assumeOwnershipOfCamera = true 
)

Set the camera used to represent the camera view of this SceneView.

osg::Camera* osgUtil::SceneView::getCamera (  )  [inline]

Get the camera used to represent the camera view of this SceneView.

const osg::Camera* osgUtil::SceneView::getCamera (  )  const [inline]

Get the const camera used to represent the camera view of this SceneView.

void osgUtil::SceneView::setSceneData ( osg::Node node  ) 

Set the data to view.

The data will typically be an osg::Scene but can be any osg::Node type.

osg::Node* osgUtil::SceneView::getSceneData ( unsigned int  childNo = 0  )  [inline]

Get the scene data to view.

The data will typically be an osg::Scene but can be any osg::Node type.

const osg::Node* osgUtil::SceneView::getSceneData ( unsigned int  childNo = 0  )  const [inline]

Get the const scene data which to view.

The data will typically be an osg::Scene but can be any osg::Node type.

unsigned int osgUtil::SceneView::getNumSceneData (  )  const [inline]

Get the number of scene data subgraphs added to the SceneView's camera.

void osgUtil::SceneView::setViewport ( osg::Viewport viewport  )  [inline]

Set the viewport of the scene view to use specified osg::Viewport.

void osgUtil::SceneView::setViewport ( int  x,
int  y,
int  width,
int  height 
) [inline]

Set the viewport of the scene view to specified dimensions.

osg::Viewport* osgUtil::SceneView::getViewport (  )  [inline]

Get the viewport.

const osg::Viewport* osgUtil::SceneView::getViewport (  )  const [inline]

Get the const viewport.

void osgUtil::SceneView::setDisplaySettings ( osg::DisplaySettings vs  )  [inline]

Set the DisplaySettings.

const osg::DisplaySettings* osgUtil::SceneView::getDisplaySettings (  )  const [inline]

Get the const DisplaySettings.

osg::DisplaySettings* osgUtil::SceneView::getDisplaySettings (  )  [inline]

Get the DisplaySettings.

void osgUtil::SceneView::setClearColor ( const osg::Vec4 color  )  [inline]

Set the color used in glClearColor().

Defaults to an off blue color.

const osg::Vec4& osgUtil::SceneView::getClearColor (  )  const [inline]

Get the color used in glClearColor.

void osgUtil::SceneView::setRedrawInterlacedStereoStencilMask ( bool  flag  )  [inline]

Manually set the redraw interlaced stereo stencil mask request flag to control whether to redraw the stencil buffer on the next frame.

bool osgUtil::SceneView::getRedrawInterlacedStereoStencilMask (  )  const [inline]

Get the redraw interlaced stereo stencil mask request flag.

void osgUtil::SceneView::setGlobalStateSet ( osg::StateSet state  )  [inline]

osg::StateSet* osgUtil::SceneView::getGlobalStateSet (  )  [inline]

const osg::StateSet* osgUtil::SceneView::getGlobalStateSet (  )  const [inline]

void osgUtil::SceneView::setLocalStateSet ( osg::StateSet state  )  [inline]

osg::StateSet* osgUtil::SceneView::getLocalStateSet (  )  [inline]

const osg::StateSet* osgUtil::SceneView::getLocalStateSet (  )  const [inline]

void osgUtil::SceneView::setActiveUniforms ( int  activeUniforms  )  [inline]

Set the uniforms that SceneView should set set up on each frame.

int osgUtil::SceneView::getActiveUniforms (  )  const [inline]

Get the uniforms that SceneView should set set up on each frame.

void osgUtil::SceneView::updateUniforms (  ) 

void osgUtil::SceneView::setLightingMode ( LightingMode  mode  )  [inline]

LightingMode osgUtil::SceneView::getLightingMode (  )  const [inline]

void osgUtil::SceneView::setLight ( osg::Light light  )  [inline]

osg::Light* osgUtil::SceneView::getLight (  )  [inline]

const osg::Light* osgUtil::SceneView::getLight (  )  const [inline]

void osgUtil::SceneView::setState ( osg::State state  )  [inline]

osg::State* osgUtil::SceneView::getState (  )  [inline]

const osg::State* osgUtil::SceneView::getState (  )  const [inline]

void osgUtil::SceneView::setView ( osg::View view  )  [inline]

osg::View* osgUtil::SceneView::getView (  )  [inline]

const osg::View* osgUtil::SceneView::getView (  )  const [inline]

void osgUtil::SceneView::setRenderInfo ( osg::RenderInfo renderInfo  )  [inline]

osg::RenderInfo& osgUtil::SceneView::getRenderInfo (  )  [inline]

const osg::RenderInfo& osgUtil::SceneView::getRenderInfo (  )  const [inline]

void osgUtil::SceneView::setProjectionMatrix ( const osg::Matrixf matrix  )  [inline]

Set the projection matrix.

Can be thought of as setting the lens of a camera.

void osgUtil::SceneView::setProjectionMatrix ( const osg::Matrixd matrix  )  [inline]

Set the projection matrix.

Can be thought of as setting the lens of a camera.

void osgUtil::SceneView::setProjectionMatrixAsOrtho ( double  left,
double  right,
double  bottom,
double  top,
double  zNear,
double  zFar 
)

Set to an orthographic projection.

See OpenGL glOrtho for documentation further details.

void osgUtil::SceneView::setProjectionMatrixAsOrtho2D ( double  left,
double  right,
double  bottom,
double  top 
)

Set to a 2D orthographic projection.

See OpenGL glOrtho2D documentation for further details.

void osgUtil::SceneView::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.

void osgUtil::SceneView::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.

osg::Matrixd& osgUtil::SceneView::getProjectionMatrix (  )  [inline]

Get the projection matrix.

const osg::Matrixd& osgUtil::SceneView::getProjectionMatrix (  )  const [inline]

Get the const projection matrix.

bool osgUtil::SceneView::getProjectionMatrixAsOrtho ( double &  left,
double &  right,
double &  bottom,
double &  top,
double &  zNear,
double &  zFar 
) const

Get the orthographic settings of the orthographic projection matrix.

Returns false if matrix is not an orthographic matrix, where parameter values are undefined.

bool osgUtil::SceneView::getProjectionMatrixAsFrustum ( double &  left,
double &  right,
double &  bottom,
double &  top,
double &  zNear,
double &  zFar 
) const

Get the frustum setting of a perspective projection matrix.

Returns false if matrix is not a perspective matrix, where parameter values are undefined.

bool osgUtil::SceneView::getProjectionMatrixAsPerspective ( double &  fovy,
double &  aspectRatio,
double &  zNear,
double &  zFar 
) const

Get the frustum setting of a symmetric perspective projection matrix.

Returns false if matrix is not a perspective matrix, where parameter values are undefined. Note, if matrix is not a symmetric perspective matrix then the shear will be lost. Asymmetric matrices occur when stereo, power walls, caves and reality center display are used. In these configurations one should use the 'getProjectionMatrixAsFrustum' method instead.

void osgUtil::SceneView::setViewMatrix ( const osg::Matrixf matrix  )  [inline]

Set the view matrix.

Can be thought of as setting the position of the world relative to the camera in camera coordinates.

void osgUtil::SceneView::setViewMatrix ( const osg::Matrixd matrix  )  [inline]

Set the view matrix.

Can be thought of as setting the position of the world relative to the camera in camera coordinates.

void osgUtil::SceneView::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.

osg::Matrixd& osgUtil::SceneView::getViewMatrix (  )  [inline]

Get the view matrix.

const osg::Matrixd& osgUtil::SceneView::getViewMatrix (  )  const [inline]

Get the const view matrix.

void osgUtil::SceneView::getViewMatrixAsLookAt ( osg::Vec3 eye,
osg::Vec3 center,
osg::Vec3 up,
float  lookDistance = 1.0f 
) const

Get to the position and orientation of a modelview matrix, using the same convention as gluLookAt.

void osgUtil::SceneView::setInitVisitor ( osg::NodeVisitor av  )  [inline]

osg::NodeVisitor* osgUtil::SceneView::getInitVisitor (  )  [inline]

const osg::NodeVisitor* osgUtil::SceneView::getInitVisitor (  )  const [inline]

void osgUtil::SceneView::setUpdateVisitor ( osg::NodeVisitor av  )  [inline]

osg::NodeVisitor* osgUtil::SceneView::getUpdateVisitor (  )  [inline]

const osg::NodeVisitor* osgUtil::SceneView::getUpdateVisitor (  )  const [inline]

void osgUtil::SceneView::setCullVisitor ( osgUtil::CullVisitor cv  )  [inline]

osgUtil::CullVisitor* osgUtil::SceneView::getCullVisitor (  )  [inline]

const osgUtil::CullVisitor* osgUtil::SceneView::getCullVisitor (  )  const [inline]

void osgUtil::SceneView::setCullVisitorLeft ( osgUtil::CullVisitor cv  )  [inline]

osgUtil::CullVisitor* osgUtil::SceneView::getCullVisitorLeft (  )  [inline]

const osgUtil::CullVisitor* osgUtil::SceneView::getCullVisitorLeft (  )  const [inline]

void osgUtil::SceneView::setCullVisitorRight ( osgUtil::CullVisitor cv  )  [inline]

osgUtil::CullVisitor* osgUtil::SceneView::getCullVisitorRight (  )  [inline]

const osgUtil::CullVisitor* osgUtil::SceneView::getCullVisitorRight (  )  const [inline]

void osgUtil::SceneView::setCollectOccludersVisitor ( osg::CollectOccludersVisitor cov  )  [inline]

osg::CollectOccludersVisitor* osgUtil::SceneView::getCollectOccludersVisitor (  )  [inline]

const osg::CollectOccludersVisitor* osgUtil::SceneView::getCollectOccludersVisitor (  )  const [inline]

void osgUtil::SceneView::setStateGraph ( osgUtil::StateGraph rg  )  [inline]

osgUtil::StateGraph* osgUtil::SceneView::getStateGraph (  )  [inline]

const osgUtil::StateGraph* osgUtil::SceneView::getStateGraph (  )  const [inline]

void osgUtil::SceneView::setStateGraphLeft ( osgUtil::StateGraph rg  )  [inline]

osgUtil::StateGraph* osgUtil::SceneView::getStateGraphLeft (  )  [inline]

const osgUtil::StateGraph* osgUtil::SceneView::getStateGraphLeft (  )  const [inline]

void osgUtil::SceneView::setStateGraphRight ( osgUtil::StateGraph rg  )  [inline]

osgUtil::StateGraph* osgUtil::SceneView::getStateGraphRight (  )  [inline]

const osgUtil::StateGraph* osgUtil::SceneView::getStateGraphRight (  )  const [inline]

void osgUtil::SceneView::setRenderStage ( osgUtil::RenderStage rs  )  [inline]

osgUtil::RenderStage* osgUtil::SceneView::getRenderStage (  )  [inline]

const osgUtil::RenderStage* osgUtil::SceneView::getRenderStage (  )  const [inline]

void osgUtil::SceneView::setRenderStageLeft ( osgUtil::RenderStage rs  )  [inline]

osgUtil::RenderStage* osgUtil::SceneView::getRenderStageLeft (  )  [inline]

const osgUtil::RenderStage* osgUtil::SceneView::getRenderStageLeft (  )  const [inline]

void osgUtil::SceneView::setRenderStageRight ( osgUtil::RenderStage rs  )  [inline]

osgUtil::RenderStage* osgUtil::SceneView::getRenderStageRight (  )  [inline]

const osgUtil::RenderStage* osgUtil::SceneView::getRenderStageRight (  )  const [inline]

void osgUtil::SceneView::setDrawBufferValue ( GLenum  drawBufferValue  )  [inline]

Set the draw buffer value used at the start of each frame draw.

Note, overridden in quad buffer stereo mode

GLenum osgUtil::SceneView::getDrawBufferValue (  )  const [inline]

Get the draw buffer value used at the start of each frame draw.

void osgUtil::SceneView::setFusionDistance ( FusionDistanceMode  mode,
float  value = 1.0f 
) [inline]

Set the FusionDistanceMode and Value.

Note, is used only when working in stereo.

FusionDistanceMode osgUtil::SceneView::getFusionDistanceMode (  )  const [inline]

Get the FusionDistanceMode.

float osgUtil::SceneView::getFusionDistanceValue (  )  const [inline]

Get the FusionDistanceValue.

Note, only used for USE_FUSION_DISTANCE_VALUE & PROPORTIONAL_TO_SCREEN_DISTANCE modes.

void osgUtil::SceneView::setPrioritizeTextures ( bool  pt  )  [inline]

Set whether the draw method should call renderer->prioritizeTexture.

bool osgUtil::SceneView::getPrioritizeTextures (  )  const [inline]

Get whether the draw method should call renderer->prioritizeTexture.

void osgUtil::SceneView::setComputeStereoMatricesCallback ( ComputeStereoMatricesCallback callback  )  [inline]

ComputeStereoMatricesCallback* osgUtil::SceneView::getComputeStereoMatricesCallback (  )  [inline]

const ComputeStereoMatricesCallback* osgUtil::SceneView::getComputeStereoMatricesCallback (  )  const [inline]

bool osgUtil::SceneView::projectWindowIntoObject ( const osg::Vec3 window,
osg::Vec3 object 
) const

Calculate the object coordinates of a point in window coordinates.

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.

bool osgUtil::SceneView::projectWindowXYIntoObject ( int  x,
int  y,
osg::Vec3 near_point,
osg::Vec3 far_point 
) const

Calculate 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.

bool osgUtil::SceneView::projectObjectIntoWindow ( const osg::Vec3 object,
osg::Vec3 window 
) const

Calculate the window coordinates of a point in object coordinates.

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 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.

void osgUtil::SceneView::setFrameStamp ( osg::FrameStamp fs  )  [inline]

Set the frame stamp for the current frame.

const osg::FrameStamp* osgUtil::SceneView::getFrameStamp (  )  const [inline]

Get the frame stamp for the current frame.

osg::Matrixd osgUtil::SceneView::computeLeftEyeProjection ( const osg::Matrixd projection  )  const [inline]

osg::Matrixd osgUtil::SceneView::computeLeftEyeView ( const osg::Matrixd view  )  const [inline]

osg::Matrixd osgUtil::SceneView::computeRightEyeProjection ( const osg::Matrixd projection  )  const [inline]

osg::Matrixd osgUtil::SceneView::computeRightEyeView ( const osg::Matrixd view  )  const [inline]

virtual osg::Matrixd osgUtil::SceneView::computeLeftEyeProjectionImplementation ( const osg::Matrixd projection  )  const [virtual]

virtual osg::Matrixd osgUtil::SceneView::computeLeftEyeViewImplementation ( const osg::Matrixd view  )  const [virtual]

virtual osg::Matrixd osgUtil::SceneView::computeRightEyeProjectionImplementation ( const osg::Matrixd projection  )  const [virtual]

virtual osg::Matrixd osgUtil::SceneView::computeRightEyeViewImplementation ( const osg::Matrixd view  )  const [virtual]

virtual void osgUtil::SceneView::inheritCullSettings ( const osg::CullSettings settings  )  [inline, virtual]

Inherit the local cull settings variable from specified CullSettings object, according to the inheritance mask.

Reimplemented from osg::CullSettings.

virtual void osgUtil::SceneView::inheritCullSettings ( const osg::CullSettings settings,
unsigned int  inheritanceMask 
) [virtual]

Inherit the local cull settings variable from specified CullSettings object, according to the inheritance mask.

Reimplemented from osg::CullSettings.

virtual void osgUtil::SceneView::init (  )  [virtual]

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 intialized 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.

virtual void osgUtil::SceneView::update (  )  [virtual]

Do app traversal of attached scene graph using App NodeVisitor.

virtual void osgUtil::SceneView::cull (  )  [virtual]

Do cull traversal of attached scene graph using Cull NodeVisitor.

virtual void osgUtil::SceneView::draw (  )  [virtual]

Do draw traversal of draw bins generated by cull traversal.

unsigned int osgUtil::SceneView::getDynamicObjectCount (  )  const [inline]

Compute the number of dynamic objects that will be held in the rendering backend.

virtual void osgUtil::SceneView::releaseAllGLObjects (  )  [virtual]

Release all OpenGL objects from the scene graph, such as texture objects, display lists etc.

These released scene graphs placed in the respective delete GLObjects cache, which then need to be deleted in OpenGL by SceneView::flushAllDeleteGLObjects().

virtual void osgUtil::SceneView::flushAllDeletedGLObjects (  )  [virtual]

Flush all deleted OpenGL objects, such as texture objects, display lists etc.

virtual void osgUtil::SceneView::flushDeletedGLObjects ( double &  availableTime  )  [virtual]

Flush deleted OpenGL objects, such as texture objects, display lists etc within specified available time.

bool osgUtil::SceneView::getStats ( Statistics primStats  ) 

Extract stats for current draw list.

virtual bool osgUtil::SceneView::cullStage ( const osg::Matrixd projection,
const osg::Matrixd modelview,
osgUtil::CullVisitor cullVisitor,
osgUtil::StateGraph rendergraph,
osgUtil::RenderStage renderStage 
) [protected, virtual]

Do cull traversal of attached scene graph using Cull NodeVisitor.

Return true if computeNearFar has been done during the cull traversal.

const osg::Matrix osgUtil::SceneView::computeMVPW (  )  const [protected]

void osgUtil::SceneView::clearArea ( int  x,
int  y,
int  width,
int  height,
const osg::Vec4 color 
) [protected]


Member Data Documentation

osg::ref_ptr<osg::StateSet> osgUtil::SceneView::_localStateSet [protected]

osg::RenderInfo osgUtil::SceneView::_renderInfo [protected]

bool osgUtil::SceneView::_initCalled [protected]

osg::ref_ptr<osg::NodeVisitor> osgUtil::SceneView::_initVisitor [protected]

osg::ref_ptr<osg::NodeVisitor> osgUtil::SceneView::_updateVisitor [protected]

osg::ref_ptr<osgUtil::CullVisitor> osgUtil::SceneView::_cullVisitor [protected]

osg::ref_ptr<osgUtil::StateGraph> osgUtil::SceneView::_rendergraph [protected]

osg::ref_ptr<osgUtil::RenderStage> osgUtil::SceneView::_renderStage [protected]

osg::ref_ptr<ComputeStereoMatricesCallback> osgUtil::SceneView::_computeStereoMatricesCallback [protected]

osg::ref_ptr<osgUtil::CullVisitor> osgUtil::SceneView::_cullVisitorLeft [protected]

osg::ref_ptr<osgUtil::StateGraph> osgUtil::SceneView::_rendergraphLeft [protected]

osg::ref_ptr<osgUtil::RenderStage> osgUtil::SceneView::_renderStageLeft [protected]

osg::ref_ptr<osgUtil::CullVisitor> osgUtil::SceneView::_cullVisitorRight [protected]

osg::ref_ptr<osgUtil::StateGraph> osgUtil::SceneView::_rendergraphRight [protected]

osg::ref_ptr<osgUtil::RenderStage> osgUtil::SceneView::_renderStageRight [protected]

osg::ref_ptr<osg::CollectOccludersVisitor> osgUtil::SceneView::_collectOccludersVisitor [protected]

osg::ref_ptr<osg::FrameStamp> osgUtil::SceneView::_frameStamp [protected]

osg::observer_ptr<osg::Camera> osgUtil::SceneView::_camera [protected]

osg::ref_ptr<osg::Camera> osgUtil::SceneView::_cameraWithOwnership [protected]

osg::ref_ptr<osg::StateSet> osgUtil::SceneView::_globalStateSet [protected]

osg::ref_ptr<osg::Light> osgUtil::SceneView::_light [protected]

osg::ref_ptr<osg::DisplaySettings> osgUtil::SceneView::_displaySettings [protected]

FusionDistanceMode osgUtil::SceneView::_fusionDistanceMode [protected]

float osgUtil::SceneView::_fusionDistanceValue [protected]

LightingMode osgUtil::SceneView::_lightingMode [protected]

bool osgUtil::SceneView::_prioritizeTextures [protected]

bool osgUtil::SceneView::_requiresFlush [protected]

int osgUtil::SceneView::_activeUniforms [protected]

double osgUtil::SceneView::_previousFrameTime [protected]

double osgUtil::SceneView::_previousSimulationTime [protected]

bool osgUtil::SceneView::_redrawInterlacedStereoStencilMask [protected]

int osgUtil::SceneView::_interlacedStereoStencilWidth [protected]

int osgUtil::SceneView::_interlacedStereoStencilHeight [protected]

unsigned int osgUtil::SceneView::_dynamicObjectCount [protected]


The documentation for this class was generated from the following file:
Generated at Sun Oct 14 02:12:52 2007 for the OpenSceneGraph by doxygen 1.5.3.