RenderStage
Go to the documentation of this file.
/* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2006 Robert Osfield
*
* This library is open source and may be redistributed and/or modified under
* the terms of the OpenSceneGraph Public License (OSGPL) version 0.0 or
* (at your option) any later version. The full license is in LICENSE file
* included with this distribution, and on the openscenegraph.org website.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* OpenSceneGraph Public License for more details.
*/
#ifndef OSGUTIL_RENDERSTAGE
#define OSGUTIL_RENDERSTAGE 1
#include <osg/ColorMask>
#include <osg/Viewport>
#include <osg/Texture>
#include <osg/FrameBufferObject>
#include <osg/Camera>
#include <osgUtil/RenderBin>
#include <osgUtil/PositionalStateContainer>
namespace osgUtil {
class OSGUTIL_EXPORT RenderStage : public RenderBin
{
public:
typedef std::pair< int , osg::ref_ptr<RenderStage> > RenderStageOrderPair;
typedef std::list< RenderStageOrderPair > RenderStageList;
RenderStage();
RenderStage(SortMode mode);
RenderStage(const RenderStage& rhs,const osg::CopyOp& copyop=osg::CopyOp::SHALLOW_COPY);
virtual osg::Object* cloneType() const { return new RenderStage(); }
virtual osg::Object* clone(const osg::CopyOp& copyop) const { return new RenderStage(*this,copyop); } // note only implements a clone of type.
virtual bool isSameKindAs(const osg::Object* obj) const { return dynamic_cast<const RenderStage*>(obj)!=0L; }
virtual const char* className() const { return "RenderStage"; }
virtual void reset();
void setDrawBuffer(GLenum buffer, bool applyMask = true ) { _drawBuffer = buffer; setDrawBufferApplyMask( applyMask ); }
GLenum getDrawBuffer() const { return _drawBuffer; }
bool getDrawBufferApplyMask() const { return _drawBufferApplyMask; }
void setDrawBufferApplyMask( bool applyMask ) { _drawBufferApplyMask = applyMask; }
void setReadBuffer(GLenum buffer, bool applyMask = true) { _readBuffer = buffer; setReadBufferApplyMask( applyMask ); }
GLenum getReadBuffer() const { return _readBuffer; }
bool getReadBufferApplyMask() const { return _readBufferApplyMask; }
void setReadBufferApplyMask( bool applyMask ) { _readBufferApplyMask = applyMask; }
void setViewport(osg::Viewport* viewport) { _viewport = viewport; }
const osg::Viewport* getViewport() const { return _viewport.get(); }
osg::Viewport* getViewport() { return _viewport.get(); }
void setInitialViewMatrix(const osg::RefMatrix* matrix) { _initialViewMatrix = matrix; }
const osg::RefMatrix* getInitialViewMatrix() { return _initialViewMatrix.get(); }
void setClearMask(GLbitfield mask) { _clearMask = mask; }
GLbitfield getClearMask() const { return _clearMask; }
void setColorMask(osg::ColorMask* cm) { _colorMask = cm; }
osg::ColorMask* getColorMask() { return _colorMask.get(); }
const osg::ColorMask* getColorMask() const { return _colorMask.get(); }
void setClearColor(const osg::Vec4& color) { _clearColor=color; }
const osg::Vec4& getClearColor() const { return _clearColor; }
void setClearAccum(const osg::Vec4& color) { _clearAccum=color; }
const osg::Vec4& getClearAccum() const { return _clearAccum; }
void setClearDepth(double depth) { _clearDepth=depth; }
double getClearDepth() const { return _clearDepth; }
void setClearStencil(int stencil) { _clearStencil=stencil; }
int getClearStencil() const { return _clearStencil; }
void setCamera(osg::Camera* camera) { if (_camera!=camera) { _camera = camera; _cameraRequiresSetUp = true; } }
osg::Camera* getCamera() { return _camera.get(); }
const osg::Camera* getCamera() const { return _camera.get(); }
void setCameraRequiresSetUp(bool flag) { _cameraRequiresSetUp = flag; }
bool getCameraRequiresSetUp() const { return _cameraRequiresSetUp; }
void setCameraAttachmentMapCount(unsigned int v) { _cameraAttachmentMapModifiedCount = v; }
unsigned int getCameraAttachmentMapCount() { return _cameraAttachmentMapModifiedCount; }
void runCameraSetUp(osg::RenderInfo& renderInfo);
void setTexture(osg::Texture* texture, unsigned int level = 0, unsigned int face=0) { _texture = texture; _level = level; _face = face; }
osg::Texture* getTexture() { return _texture.get(); }
void setImage(osg::Image* image) { _image = image; }
osg::Image* getImage() { return _image.get(); }
void setImageReadPixelFormat(GLenum format) { _imageReadPixelFormat = format; }
GLenum getImageReadPixelFormat() const { return _imageReadPixelFormat; }
void setImageReadPixelDataType(GLenum type) { _imageReadPixelDataType = type; }
GLenum getImageReadPixelDataType() const { return _imageReadPixelDataType; }
void setFrameBufferObject(osg::FrameBufferObject* fbo) { _fbo = fbo; }
osg::FrameBufferObject* getFrameBufferObject() { return _fbo.get(); }
const osg::FrameBufferObject* getFrameBufferObject() const { return _fbo.get(); }
void setMultisampleResolveFramebufferObject(osg::FrameBufferObject* fbo);
osg::FrameBufferObject* getMultisampleResolveFramebufferObject() { return _resolveFbo.get(); }
const osg::FrameBufferObject* getMultisampleResolveFramebufferObject() const { return _resolveFbo.get(); }
void setDisableFboAfterRender(bool disable) {_disableFboAfterRender = disable;}
bool getDisableFboAfterRender() const {return _disableFboAfterRender;}
void setGraphicsContext(osg::GraphicsContext* context) { _graphicsContext = context; }
osg::GraphicsContext* getGraphicsContext() { return _graphicsContext.get(); }
const osg::GraphicsContext* getGraphicsContext() const { return _graphicsContext.get(); }
void setInheritedPositionalStateContainerMatrix(const osg::Matrix& matrix) { _inheritedPositionalStateContainerMatrix = matrix; }
const osg::Matrix& getInheritedPositionalStateContainerMatrix() const { return _inheritedPositionalStateContainerMatrix; }
void setInheritedPositionalStateContainer(PositionalStateContainer* rsl) { _inheritedPositionalStateContainer = rsl; }
PositionalStateContainer* getInheritedPositionalStateContainer() { return _inheritedPositionalStateContainer.get(); }
void setPositionalStateContainer(PositionalStateContainer* rsl) { _renderStageLighting = rsl; }
PositionalStateContainer* getPositionalStateContainer() const
{
if (!_renderStageLighting.valid()) _renderStageLighting = new PositionalStateContainer;
return _renderStageLighting.get();
}
virtual void addPositionedAttribute(osg::RefMatrix* matrix,const osg::StateAttribute* attr)
{
getPositionalStateContainer()->addPositionedAttribute(matrix,attr);
}
virtual void addPositionedTextureAttribute(unsigned int textureUnit, osg::RefMatrix* matrix,const osg::StateAttribute* attr)
{
getPositionalStateContainer()->addPositionedTextureAttribute(textureUnit, matrix,attr);
}
void copyTexture(osg::RenderInfo& renderInfo);
virtual void sort();
virtual void drawPreRenderStages(osg::RenderInfo& renderInfo,RenderLeaf*& previous);
virtual void draw(osg::RenderInfo& renderInfo,RenderLeaf*& previous);
virtual void drawInner(osg::RenderInfo& renderInfo,RenderLeaf*& previous, bool& doCopyTexture);
virtual void drawPostRenderStages(osg::RenderInfo& renderInfo,RenderLeaf*& previous);
virtual void drawImplementation(osg::RenderInfo& renderInfo,RenderLeaf*& previous);
void addToDependencyList(RenderStage* rs) { addPreRenderStage(rs); }
void addPreRenderStage(RenderStage* rs, int order = 0);
void addPostRenderStage(RenderStage* rs, int order = 0);
const RenderStageList& getPreRenderList() const { return _preRenderList; }
RenderStageList& getPreRenderList() { return _preRenderList; }
const RenderStageList& getPostRenderList() const { return _postRenderList; }
RenderStageList& getPostRenderList() { return _postRenderList; }
bool getStats(Statistics& stats) const;
virtual unsigned int computeNumberOfDynamicRenderLeaves() const;
struct Attachment
{
osg::ref_ptr<osg::Image> _image;
GLenum _imageReadPixelFormat;
GLenum _imageReadPixelDataType;
};
void attach(osg::Camera::BufferComponent buffer, osg::Image* image);
void collateReferencesToDependentCameras();
void clearReferencesToDependentCameras();
virtual void releaseGLObjects(osg::State* state= 0) const;
protected:
virtual ~RenderStage();
typedef std::vector< osg::ref_ptr<osg::Camera> > Cameras;
bool _stageDrawnThisFrame;
RenderStageList _preRenderList;
RenderStageList _postRenderList;
Cameras _dependentCameras;
// viewport x,y,width,height.
osg::ref_ptr<osg::Viewport> _viewport;
osg::ref_ptr<const osg::RefMatrix> _initialViewMatrix;
GLenum _drawBuffer;
bool _drawBufferApplyMask;
GLenum _readBuffer;
bool _readBufferApplyMask;
GLbitfield _clearMask;
osg::ref_ptr<osg::ColorMask> _colorMask;
osg::Vec4 _clearColor;
osg::Vec4 _clearAccum;
double _clearDepth;
int _clearStencil;
bool _cameraRequiresSetUp;
unsigned int _cameraAttachmentMapModifiedCount;
osg::observer_ptr<osg::Camera> _camera;
osg::ref_ptr<osg::Texture> _texture;
unsigned int _level;
unsigned int _face;
osg::ref_ptr<osg::Image> _image;
GLenum _imageReadPixelFormat;
GLenum _imageReadPixelDataType;
std::map< osg::Camera::BufferComponent, Attachment> _bufferAttachmentMap;
osg::ref_ptr<osg::FrameBufferObject> _fbo;
osg::ref_ptr<osg::FrameBufferObject> _resolveFbo;
osg::ref_ptr<osg::GraphicsContext> _graphicsContext;
bool _disableFboAfterRender;
mutable osg::Matrix _inheritedPositionalStateContainerMatrix;
mutable osg::ref_ptr<PositionalStateContainer> _inheritedPositionalStateContainer;
mutable osg::ref_ptr<PositionalStateContainer> _renderStageLighting;
};
}
#endif
Camera
ColorMask
FrameBufferObject
PositionalStateContainer
RenderBin
Texture
Viewport
osgUtil::PositionalStateContainer
Definition PositionalStateContainer:30
osgUtil::RenderBin::RenderBin
RenderBin()
osgUtil::RenderBin::SortMode
SortMode
Definition RenderBin:42
osgUtil::RenderLeaf
Definition RenderLeaf:34
osgUtil::RenderStage::_cameraRequiresSetUp
bool _cameraRequiresSetUp
Definition RenderStage:300
osgUtil::RenderStage::setMultisampleResolveFramebufferObject
void setMultisampleResolveFramebufferObject(osg::FrameBufferObject *fbo)
osgUtil::RenderStage::RenderStage
RenderStage()
osgUtil::RenderStage::drawPostRenderStages
virtual void drawPostRenderStages(osg::RenderInfo &renderInfo, RenderLeaf *&previous)
osgUtil::RenderStage::setCamera
void setCamera(osg::Camera *camera)
Definition RenderStage:141
osgUtil::RenderStage::~RenderStage
virtual ~RenderStage()
osgUtil::RenderStage::reset
virtual void reset()
osgUtil::RenderStage::addPositionedAttribute
virtual void addPositionedAttribute(osg::RefMatrix *matrix, const osg::StateAttribute *attr)
Definition RenderStage:210
osgUtil::RenderStage::RenderStageOrderPair
std::pair< int, osg::ref_ptr< RenderStage > > RenderStageOrderPair
Definition RenderStage:41
osgUtil::RenderStage::_renderStageLighting
osg::ref_ptr< PositionalStateContainer > _renderStageLighting
Definition RenderStage:321
osgUtil::RenderStage::_cameraAttachmentMapModifiedCount
unsigned int _cameraAttachmentMapModifiedCount
Definition RenderStage:301
osgUtil::RenderStage::getPostRenderList
const RenderStageList & getPostRenderList() const
Definition RenderStage:244
osgUtil::RenderStage::getGraphicsContext
osg::GraphicsContext * getGraphicsContext()
Definition RenderStage:190
osgUtil::RenderStage::_clearAccum
osg::Vec4 _clearAccum
Definition RenderStage:296
osgUtil::RenderStage::addPostRenderStage
void addPostRenderStage(RenderStage *rs, int order=0)
osgUtil::RenderStage::getFrameBufferObject
const osg::FrameBufferObject * getFrameBufferObject() const
Definition RenderStage:172
osgUtil::RenderStage::getDisableFboAfterRender
bool getDisableFboAfterRender() const
Definition RenderStage:187
osgUtil::RenderStage::getImageReadPixelFormat
GLenum getImageReadPixelFormat() const
Definition RenderStage:162
osgUtil::RenderStage::computeNumberOfDynamicRenderLeaves
virtual unsigned int computeNumberOfDynamicRenderLeaves() const
osgUtil::RenderStage::getStats
bool getStats(Statistics &stats) const
osgUtil::RenderStage::getGraphicsContext
const osg::GraphicsContext * getGraphicsContext() const
Definition RenderStage:191
osgUtil::RenderStage::getDrawBuffer
GLenum getDrawBuffer() const
Definition RenderStage:61
osgUtil::RenderStage::Cameras
std::vector< osg::ref_ptr< osg::Camera > > Cameras
Definition RenderStage:277
osgUtil::RenderStage::copyTexture
void copyTexture(osg::RenderInfo &renderInfo)
osgUtil::RenderStage::getImageReadPixelDataType
GLenum getImageReadPixelDataType() const
Definition RenderStage:165
osgUtil::RenderStage::sort
virtual void sort()
osgUtil::RenderStage::_drawBufferApplyMask
bool _drawBufferApplyMask
Definition RenderStage:290
osgUtil::RenderStage::_readBufferApplyMask
bool _readBufferApplyMask
Definition RenderStage:292
osgUtil::RenderStage::getPostRenderList
RenderStageList & getPostRenderList()
Definition RenderStage:245
osgUtil::RenderStage::setInheritedPositionalStateContainerMatrix
void setInheritedPositionalStateContainerMatrix(const osg::Matrix &matrix)
Definition RenderStage:196
osgUtil::RenderStage::drawPreRenderStages
virtual void drawPreRenderStages(osg::RenderInfo &renderInfo, RenderLeaf *&previous)
osgUtil::RenderStage::addPreRenderStage
void addPreRenderStage(RenderStage *rs, int order=0)
osgUtil::RenderStage::getInheritedPositionalStateContainerMatrix
const osg::Matrix & getInheritedPositionalStateContainerMatrix() const
Definition RenderStage:197
osgUtil::RenderStage::getCamera
const osg::Camera * getCamera() const
Definition RenderStage:143
osgUtil::RenderStage::setCameraRequiresSetUp
void setCameraRequiresSetUp(bool flag)
Definition RenderStage:145
osgUtil::RenderStage::setTexture
void setTexture(osg::Texture *texture, unsigned int level=0, unsigned int face=0)
Definition RenderStage:155
osgUtil::RenderStage::setImageReadPixelFormat
void setImageReadPixelFormat(GLenum format)
Definition RenderStage:161
osgUtil::RenderStage::releaseGLObjects
virtual void releaseGLObjects(osg::State *state=0) const
osgUtil::RenderStage::getCameraRequiresSetUp
bool getCameraRequiresSetUp() const
Definition RenderStage:146
osgUtil::RenderStage::setDrawBuffer
void setDrawBuffer(GLenum buffer, bool applyMask=true)
Definition RenderStage:58
osgUtil::RenderStage::setCameraAttachmentMapCount
void setCameraAttachmentMapCount(unsigned int v)
Definition RenderStage:148
osgUtil::RenderStage::getImage
osg::Image * getImage()
Definition RenderStage:159
osgUtil::RenderStage::_initialViewMatrix
osg::ref_ptr< const osg::RefMatrix > _initialViewMatrix
Definition RenderStage:287
osgUtil::RenderStage::getPreRenderList
RenderStageList & getPreRenderList()
Definition RenderStage:242
osgUtil::RenderStage::getClearDepth
double getClearDepth() const
Definition RenderStage:131
osgUtil::RenderStage::_stageDrawnThisFrame
bool _stageDrawnThisFrame
Definition RenderStage:279
osgUtil::RenderStage::addToDependencyList
void addToDependencyList(RenderStage *rs)
Definition RenderStage:235
osgUtil::RenderStage::_texture
osg::ref_ptr< osg::Texture > _texture
Definition RenderStage:304
osgUtil::RenderStage::_graphicsContext
osg::ref_ptr< osg::GraphicsContext > _graphicsContext
Definition RenderStage:316
osgUtil::RenderStage::_clearStencil
int _clearStencil
Definition RenderStage:298
osgUtil::RenderStage::drawImplementation
virtual void drawImplementation(osg::RenderInfo &renderInfo, RenderLeaf *&previous)
osgUtil::RenderStage::clone
virtual osg::Object * clone(const osg::CopyOp &copyop) const
Definition RenderStage:50
osgUtil::RenderStage::setInitialViewMatrix
void setInitialViewMatrix(const osg::RefMatrix *matrix)
Definition RenderStage:94
osgUtil::RenderStage::setInheritedPositionalStateContainer
void setInheritedPositionalStateContainer(PositionalStateContainer *rsl)
Definition RenderStage:199
osgUtil::RenderStage::drawInner
virtual void drawInner(osg::RenderInfo &renderInfo, RenderLeaf *&previous, bool &doCopyTexture)
osgUtil::RenderStage::getFrameBufferObject
osg::FrameBufferObject * getFrameBufferObject()
Definition RenderStage:171
osgUtil::RenderStage::getClearStencil
int getClearStencil() const
Definition RenderStage:138
osgUtil::RenderStage::getReadBufferApplyMask
bool getReadBufferApplyMask() const
Definition RenderStage:78
osgUtil::RenderStage::getReadBuffer
GLenum getReadBuffer() const
Definition RenderStage:75
osgUtil::RenderStage::_postRenderList
RenderStageList _postRenderList
Definition RenderStage:281
osgUtil::RenderStage::getTexture
osg::Texture * getTexture()
Definition RenderStage:156
osgUtil::RenderStage::setGraphicsContext
void setGraphicsContext(osg::GraphicsContext *context)
Definition RenderStage:189
osgUtil::RenderStage::attach
void attach(osg::Camera::BufferComponent buffer, osg::Image *image)
osgUtil::RenderStage::_viewport
osg::ref_ptr< osg::Viewport > _viewport
Definition RenderStage:286
osgUtil::RenderStage::setFrameBufferObject
void setFrameBufferObject(osg::FrameBufferObject *fbo)
Definition RenderStage:170
osgUtil::RenderStage::_image
osg::ref_ptr< osg::Image > _image
Definition RenderStage:308
osgUtil::RenderStage::_bufferAttachmentMap
std::map< osg::Camera::BufferComponent, Attachment > _bufferAttachmentMap
Definition RenderStage:312
osgUtil::RenderStage::setViewport
void setViewport(osg::Viewport *viewport)
Definition RenderStage:85
osgUtil::RenderStage::clearReferencesToDependentCameras
void clearReferencesToDependentCameras()
osgUtil::RenderStage::runCameraSetUp
void runCameraSetUp(osg::RenderInfo &renderInfo)
osgUtil::RenderStage::isSameKindAs
virtual bool isSameKindAs(const osg::Object *obj) const
Definition RenderStage:51
osgUtil::RenderStage::setClearMask
void setClearMask(GLbitfield mask)
Definition RenderStage:101
osgUtil::RenderStage::_dependentCameras
Cameras _dependentCameras
Definition RenderStage:283
osgUtil::RenderStage::cloneType
virtual osg::Object * cloneType() const
Definition RenderStage:49
osgUtil::RenderStage::setDrawBufferApplyMask
void setDrawBufferApplyMask(bool applyMask)
Definition RenderStage:67
osgUtil::RenderStage::_disableFboAfterRender
bool _disableFboAfterRender
Definition RenderStage:317
osgUtil::RenderStage::_camera
osg::observer_ptr< osg::Camera > _camera
Definition RenderStage:302
osgUtil::RenderStage::getCamera
osg::Camera * getCamera()
Definition RenderStage:142
osgUtil::RenderStage::getInitialViewMatrix
const osg::RefMatrix * getInitialViewMatrix()
Definition RenderStage:97
osgUtil::RenderStage::getColorMask
const osg::ColorMask * getColorMask() const
Definition RenderStage:109
osgUtil::RenderStage::className
virtual const char * className() const
Definition RenderStage:52
osgUtil::RenderStage::getMultisampleResolveFramebufferObject
const osg::FrameBufferObject * getMultisampleResolveFramebufferObject() const
Definition RenderStage:181
osgUtil::RenderStage::getClearAccum
const osg::Vec4 & getClearAccum() const
Definition RenderStage:124
osgUtil::RenderStage::RenderStage
RenderStage(SortMode mode)
osgUtil::RenderStage::getClearColor
const osg::Vec4 & getClearColor() const
Definition RenderStage:117
osgUtil::RenderStage::_resolveFbo
osg::ref_ptr< osg::FrameBufferObject > _resolveFbo
Definition RenderStage:315
osgUtil::RenderStage::_inheritedPositionalStateContainer
osg::ref_ptr< PositionalStateContainer > _inheritedPositionalStateContainer
Definition RenderStage:320
osgUtil::RenderStage::_colorMask
osg::ref_ptr< osg::ColorMask > _colorMask
Definition RenderStage:294
osgUtil::RenderStage::getPreRenderList
const RenderStageList & getPreRenderList() const
Definition RenderStage:241
osgUtil::RenderStage::_clearMask
GLbitfield _clearMask
Definition RenderStage:293
osgUtil::RenderStage::_inheritedPositionalStateContainerMatrix
osg::Matrix _inheritedPositionalStateContainerMatrix
Definition RenderStage:319
osgUtil::RenderStage::_clearColor
osg::Vec4 _clearColor
Definition RenderStage:295
osgUtil::RenderStage::setClearColor
void setClearColor(const osg::Vec4 &color)
Definition RenderStage:114
osgUtil::RenderStage::getColorMask
osg::ColorMask * getColorMask()
Definition RenderStage:108
osgUtil::RenderStage::setColorMask
void setColorMask(osg::ColorMask *cm)
Definition RenderStage:107
osgUtil::RenderStage::setPositionalStateContainer
void setPositionalStateContainer(PositionalStateContainer *rsl)
Definition RenderStage:202
osgUtil::RenderStage::getMultisampleResolveFramebufferObject
osg::FrameBufferObject * getMultisampleResolveFramebufferObject()
Definition RenderStage:180
osgUtil::RenderStage::_face
unsigned int _face
Definition RenderStage:306
osgUtil::RenderStage::getDrawBufferApplyMask
bool getDrawBufferApplyMask() const
Definition RenderStage:64
osgUtil::RenderStage::getViewport
const osg::Viewport * getViewport() const
Definition RenderStage:88
osgUtil::RenderStage::getInheritedPositionalStateContainer
PositionalStateContainer * getInheritedPositionalStateContainer()
Definition RenderStage:200
osgUtil::RenderStage::getClearMask
GLbitfield getClearMask() const
Definition RenderStage:104
osgUtil::RenderStage::setClearStencil
void setClearStencil(int stencil)
Definition RenderStage:135
osgUtil::RenderStage::_imageReadPixelDataType
GLenum _imageReadPixelDataType
Definition RenderStage:310
osgUtil::RenderStage::_fbo
osg::ref_ptr< osg::FrameBufferObject > _fbo
Definition RenderStage:314
osgUtil::RenderStage::setClearDepth
void setClearDepth(double depth)
Definition RenderStage:128
osgUtil::RenderStage::RenderStage
RenderStage(const RenderStage &rhs, const osg::CopyOp &copyop=osg::CopyOp::SHALLOW_COPY)
osgUtil::RenderStage::setReadBuffer
void setReadBuffer(GLenum buffer, bool applyMask=true)
Definition RenderStage:72
osgUtil::RenderStage::_preRenderList
RenderStageList _preRenderList
Definition RenderStage:280
osgUtil::RenderStage::getCameraAttachmentMapCount
unsigned int getCameraAttachmentMapCount()
Definition RenderStage:149
osgUtil::RenderStage::setImageReadPixelDataType
void setImageReadPixelDataType(GLenum type)
Definition RenderStage:164
osgUtil::RenderStage::draw
virtual void draw(osg::RenderInfo &renderInfo, RenderLeaf *&previous)
osgUtil::RenderStage::setReadBufferApplyMask
void setReadBufferApplyMask(bool applyMask)
Definition RenderStage:81
osgUtil::RenderStage::_drawBuffer
GLenum _drawBuffer
Definition RenderStage:289
osgUtil::RenderStage::_level
unsigned int _level
Definition RenderStage:305
osgUtil::RenderStage::_imageReadPixelFormat
GLenum _imageReadPixelFormat
Definition RenderStage:309
osgUtil::RenderStage::setDisableFboAfterRender
void setDisableFboAfterRender(bool disable)
Definition RenderStage:186
osgUtil::RenderStage::collateReferencesToDependentCameras
void collateReferencesToDependentCameras()
osgUtil::RenderStage::setImage
void setImage(osg::Image *image)
Definition RenderStage:158
osgUtil::RenderStage::getPositionalStateContainer
PositionalStateContainer * getPositionalStateContainer() const
Definition RenderStage:204
osgUtil::RenderStage::_clearDepth
double _clearDepth
Definition RenderStage:297
osgUtil::RenderStage::setClearAccum
void setClearAccum(const osg::Vec4 &color)
Definition RenderStage:121
osgUtil::RenderStage::RenderStageList
std::list< RenderStageOrderPair > RenderStageList
Definition RenderStage:42
osgUtil::RenderStage::addPositionedTextureAttribute
virtual void addPositionedTextureAttribute(unsigned int textureUnit, osg::RefMatrix *matrix, const osg::StateAttribute *attr)
Definition RenderStage:215
osgUtil::RenderStage::getViewport
osg::Viewport * getViewport()
Definition RenderStage:91
osgUtil::RenderStage::_readBuffer
GLenum _readBuffer
Definition RenderStage:291
osgUtil::Statistics
Definition Statistics:48
osg::Camera
Definition Camera:45
osg::Camera::BufferComponent
BufferComponent
Definition Camera:326
osg::ColorMask
Definition ColorMask:25
osg::CopyOp
Definition CopyOp:41
osg::CopyOp::SHALLOW_COPY
@ SHALLOW_COPY
Definition CopyOp:47
osg::FrameBufferObject
Definition FrameBufferObject:321
osg::GraphicsContext
Definition GraphicsContext:30
osg::Image
Definition Image:179
osg::Object
Definition Object:61
osg::RenderInfo
Definition RenderInfo:28
osg::StateAttribute
Definition StateAttribute:77
osg::State
Definition State:80
osg::Texture
Definition Texture:422
osg::Viewport
Definition Viewport:24
osg::observer_ptr
Definition observer_ptr:39
osg::ref_ptr
Definition ref_ptr:32
osgUtil
Definition NodeVisitor:25
osg::Matrix
Matrixd Matrix
Definition Matrix:27
osg::Vec4
Vec4f Vec4
Definition Vec4:21
osg::RefMatrix
RefMatrixd RefMatrix
Definition Matrix:28
OSGUTIL_EXPORT
#define OSGUTIL_EXPORT
Definition osgUtil/Export:40
osgUtil::RenderStage::Attachment
Definition RenderStage:254
osgUtil::RenderStage::Attachment::_image
osg::ref_ptr< osg::Image > _image
Definition RenderStage:255
osgUtil::RenderStage::Attachment::_imageReadPixelDataType
GLenum _imageReadPixelDataType
Definition RenderStage:257
osgUtil::RenderStage::Attachment::_imageReadPixelFormat
GLenum _imageReadPixelFormat
Definition RenderStage:256