Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

osgUtil::RenderStage Class Reference

Inheritance diagram for osgUtil::RenderStage:

osgUtil::RenderBin osg::Object osg::Referenced osgUtil::RenderToTextureStage List of all members.

Public Member Functions

 RenderStage ()
 RenderStage (SortMode mode)
 RenderStage (const RenderStage &rhs, const osg::CopyOp &copyop=osg::CopyOp::SHALLOW_COPY)
virtual osg::ObjectcloneType () const
virtual osg::Objectclone (const osg::CopyOp &copyop) const
virtual bool isSameKindAs (const osg::Object *obj) const
virtual const char * className () const
virtual void reset ()
void setViewport (osg::Viewport *viewport)
const osg::ViewportgetViewport () const
osg::ViewportgetViewport ()
void setClearMask (GLbitfield mask)
GLbitfield getClearMask () const
void setColorMask (osg::ColorMask *cm)
osg::ColorMaskgetColorMask ()
const osg::ColorMaskgetColorMask () const
void setClearColor (const osg::Vec4 &color)
const osg::Vec4getClearColor () const
void setClearAccum (const osg::Vec4 &color)
const osg::Vec4getClearAccum () const
void setClearDepth (double depth)
double getClearDepth () const
void setClearStencil (int stencil)
int getClearStencil () const
void setRenderStageLighting (RenderStageLighting *rsl)
RenderStageLightinggetRenderStageLighting () const
virtual void addPositionedAttribute (osg::RefMatrix *matrix, const osg::StateAttribute *attr)
virtual void addPositionedTextureAttribute (unsigned int textureUnit, osg::RefMatrix *matrix, const osg::StateAttribute *attr)
virtual void drawPreRenderStages (osg::State &state, RenderLeaf *&previous)
virtual void draw (osg::State &state, RenderLeaf *&previous)
virtual void drawImplementation (osg::State &state, RenderLeaf *&previous)
void addToDependencyList (RenderStage *rs)
bool getStats (Statistics *primStats)

Protected Types

typedef std::vector< osg::ref_ptr<
RenderStage > > 
DependencyList

Protected Member Functions

virtual ~RenderStage ()

Protected Attributes

bool _stageDrawnThisFrame
DependencyList _dependencyList
osg::ref_ptr< osg::Viewport_viewport
GLbitfield _clearMask
osg::ref_ptr< osg::ColorMask_colorMask
osg::Vec4 _clearColor
osg::Vec4 _clearAccum
double _clearDepth
int _clearStencil
osg::ref_ptr< RenderStageLighting_renderStageLighting

Detailed Description

RenderStage base class. Used for encapsulate a complete stage in rendering - setting up of viewport, the projection and model matrices and rendering the RenderBin's enclosed with this RenderStage. RenderStage also has a dependency list of other RenderStages, each of which must be called before the rendering of this stage. These 'pre' rendering stages are used for advanced rendering techniques like multistage pixel shading or impostors.


Member Typedef Documentation

typedef std::vector< osg::ref_ptr<RenderStage> > osgUtil::RenderStage::DependencyList [protected]
 


Constructor & Destructor Documentation

osgUtil::RenderStage::RenderStage  ) 
 

osgUtil::RenderStage::RenderStage SortMode  mode  ) 
 

osgUtil::RenderStage::RenderStage const RenderStage rhs,
const osg::CopyOp copyop = osg::CopyOp::SHALLOW_COPY
 

virtual osgUtil::RenderStage::~RenderStage  )  [protected, virtual]
 


Member Function Documentation

virtual void osgUtil::RenderStage::addPositionedAttribute osg::RefMatrix matrix,
const osg::StateAttribute attr
[inline, virtual]
 

virtual void osgUtil::RenderStage::addPositionedTextureAttribute unsigned int  textureUnit,
osg::RefMatrix matrix,
const osg::StateAttribute attr
[inline, virtual]
 

void osgUtil::RenderStage::addToDependencyList RenderStage rs  ) 
 

virtual const char* osgUtil::RenderStage::className  )  const [inline, virtual]
 

return the name of the object's class type. Must be defined by derived classes.

Reimplemented from osgUtil::RenderBin.

Reimplemented in osgUtil::RenderToTextureStage.

virtual osg::Object* osgUtil::RenderStage::clone const osg::CopyOp copyop  )  const [inline, virtual]
 

Clone an object, with Object* return type. Must be defined by derived classes.

Reimplemented from osgUtil::RenderBin.

Reimplemented in osgUtil::RenderToTextureStage.

virtual osg::Object* osgUtil::RenderStage::cloneType  )  const [inline, virtual]
 

Clone the type of an object, with Object* return type. Must be defined by derived classes.

Reimplemented from osgUtil::RenderBin.

Reimplemented in osgUtil::RenderToTextureStage.

virtual void osgUtil::RenderStage::draw osg::State state,
RenderLeaf *&  previous
[virtual]
 

Reimplemented from osgUtil::RenderBin.

Reimplemented in osgUtil::RenderToTextureStage.

virtual void osgUtil::RenderStage::drawImplementation osg::State state,
RenderLeaf *&  previous
[virtual]
 

Reimplemented from osgUtil::RenderBin.

virtual void osgUtil::RenderStage::drawPreRenderStages osg::State state,
RenderLeaf *&  previous
[virtual]
 

const osg::Vec4& osgUtil::RenderStage::getClearAccum  )  const [inline]
 

Get the clear accum.

const osg::Vec4& osgUtil::RenderStage::getClearColor  )  const [inline]
 

Get the clear color.

double osgUtil::RenderStage::getClearDepth  )  const [inline]
 

Get the clear depth.

GLbitfield osgUtil::RenderStage::getClearMask  )  const [inline]
 

Get the clear mask.

int osgUtil::RenderStage::getClearStencil  )  const [inline]
 

Get the clear color.

const osg::ColorMask* osgUtil::RenderStage::getColorMask  )  const [inline]
 

osg::ColorMask* osgUtil::RenderStage::getColorMask  )  [inline]
 

RenderStageLighting* osgUtil::RenderStage::getRenderStageLighting  )  const [inline]
 

bool osgUtil::RenderStage::getStats Statistics primStats  ) 
 

Extract stats for current draw list.

Reimplemented from osgUtil::RenderBin.

osg::Viewport* osgUtil::RenderStage::getViewport  )  [inline]
 

Get the viewport.

const osg::Viewport* osgUtil::RenderStage::getViewport  )  const [inline]
 

Get the const viewport.

virtual bool osgUtil::RenderStage::isSameKindAs const osg::Object obj  )  const [inline, virtual]
 

Reimplemented from osgUtil::RenderBin.

Reimplemented in osgUtil::RenderToTextureStage.

virtual void osgUtil::RenderStage::reset  )  [virtual]
 

Reimplemented from osgUtil::RenderBin.

Reimplemented in osgUtil::RenderToTextureStage.

void osgUtil::RenderStage::setClearAccum const osg::Vec4 color  )  [inline]
 

Set the clear accum used in glClearAccum(..). glClearAcumm is only called if mask & GL_ACCUM_BUFFER_BIT is true.

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

Set the clear color used in glClearColor(..). glClearColor is only called if mask & GL_COLOR_BUFFER_BIT is true

void osgUtil::RenderStage::setClearDepth double  depth  )  [inline]
 

Set the clear depth used in glClearDepth(..). Defaults to 1.0 glClearDepth is only called if mask & GL_DEPTH_BUFFER_BIT is true.

void osgUtil::RenderStage::setClearMask GLbitfield  mask  )  [inline]
 

Set the clear mask used in glClear(..). Defaults to GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT.

void osgUtil::RenderStage::setClearStencil int  stencil  )  [inline]
 

Set the clear stencil value used in glClearStencil(). Defaults to 0; glClearStencil is only called if mask & GL_STENCIL_BUFFER_BIT is true

void osgUtil::RenderStage::setColorMask osg::ColorMask cm  )  [inline]
 

void osgUtil::RenderStage::setRenderStageLighting RenderStageLighting rsl  )  [inline]
 

void osgUtil::RenderStage::setViewport osg::Viewport viewport  )  [inline]
 

Set the viewport.


Member Data Documentation

osg::Vec4 osgUtil::RenderStage::_clearAccum [protected]
 

osg::Vec4 osgUtil::RenderStage::_clearColor [protected]
 

double osgUtil::RenderStage::_clearDepth [protected]
 

GLbitfield osgUtil::RenderStage::_clearMask [protected]
 

int osgUtil::RenderStage::_clearStencil [protected]
 

osg::ref_ptr<osg::ColorMask> osgUtil::RenderStage::_colorMask [protected]
 

DependencyList osgUtil::RenderStage::_dependencyList [protected]
 

osg::ref_ptr<RenderStageLighting> osgUtil::RenderStage::_renderStageLighting [mutable, protected]
 

bool osgUtil::RenderStage::_stageDrawnThisFrame [protected]
 

osg::ref_ptr<osg::Viewport> osgUtil::RenderStage::_viewport [protected]
 


The documentation for this class was generated from the following file:
Generated on Wed Jun 7 08:31:09 2006 for OpenSceneGraph by  doxygen 1.4.4