VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions
makVrv::DtVariableRateShadingImageUpdater Class Reference

Base class for GPU updates of the variable rate shading image Draw a full screen quad using a shader and provides a mechanism for end users to specify the shader to use and setup uniforms etc.

Inheritance diagram for makVrv::DtVariableRateShadingImageUpdater:
Inheritance graph
[legend]

Public Member Functions

 DtVariableRateShadingImageUpdater (DtDe &de, DtVariableRateShadingImage *vrsImage)
 
virtual void drawImplementation (osg::RenderInfo &info) const
 
virtual void releaseGLObjects (osg::State *state) const
 
virtual void shouldUpdate (bool shouldUpdate)
 
virtual void restoreLastFboTarget (GLenum fboTarget)
 

Protected Member Functions

virtual ~DtVariableRateShadingImageUpdater ()
 
virtual void update (osg::State *state) const
 
virtual void initProgram (osg::State *state) const
 

Protected Attributes

DtDemyDe
 
DtVariableRateShadingImagemyVariableRateShadingImage
 
DtGlProgrammyProgram
 
std::string myVertexShaderSource
 
std::string myFragmentShaderSource
 
osg::ref_ptr< osg::StateSet > myVrsFillStateSet
 
bool myShouldUpdate
 
GLenum myRestoreFboTarget
 

Private Member Functions

 DtVariableRateShadingImageUpdater ()=delete
 
 DtVariableRateShadingImageUpdater (const DtVariableRateShadingImageUpdater &other)=delete
 
DtVariableRateShadingImageUpdateroperator= (const DtVariableRateShadingImageUpdater &other)=delete
 

Constructor & Destructor Documentation

makVrv::DtVariableRateShadingImageUpdater::DtVariableRateShadingImageUpdater ( )
privatedelete

not allowed

makVrv::DtVariableRateShadingImageUpdater::DtVariableRateShadingImageUpdater ( const DtVariableRateShadingImageUpdater other)
privatedelete

Copy Constructor not implemented – Copy Not Allowed.

makVrv::DtVariableRateShadingImageUpdater::DtVariableRateShadingImageUpdater ( DtDe de,
DtVariableRateShadingImage vrsImage 
)

CTOR.

virtual makVrv::DtVariableRateShadingImageUpdater::~DtVariableRateShadingImageUpdater ( )
protectedvirtual

DTOR.

Member Function Documentation

DtVariableRateShadingImageUpdater& makVrv::DtVariableRateShadingImageUpdater::operator= ( const DtVariableRateShadingImageUpdater other)
privatedelete

Assignment Operator Not implemented – Assignment Not Allowed.

virtual void makVrv::DtVariableRateShadingImageUpdater::drawImplementation ( osg::RenderInfo &  info) const
virtual

draw the vrs image update pass

virtual void makVrv::DtVariableRateShadingImageUpdater::releaseGLObjects ( osg::State *  state) const
virtual

frees resources on context release

virtual void makVrv::DtVariableRateShadingImageUpdater::shouldUpdate ( bool  shouldUpdate)
virtual

flags if the vrs image should be updated

virtual void makVrv::DtVariableRateShadingImageUpdater::restoreLastFboTarget ( GLenum  fboTarget)
virtual

/brief set the fb rebind target type for resetting the last applied fbo (0 to not rebind)

virtual void makVrv::DtVariableRateShadingImageUpdater::update ( osg::State *  state) const
protectedvirtual

pre draw callback so concrete implementations can update uniforms etc at this point the shader will be bound

Reimplemented in makVrv::DtVrsGazeMapUpdater.

virtual void makVrv::DtVariableRateShadingImageUpdater::initProgram ( osg::State *  state) const
protectedvirtual

called by draw if program is null so concrete implementation can create program

Reimplemented in makVrv::DtVrsGazeMapUpdater.

Member Data Documentation

DtDe& makVrv::DtVariableRateShadingImageUpdater::myDe
protected
DtVariableRateShadingImage* makVrv::DtVariableRateShadingImageUpdater::myVariableRateShadingImage
protected

handle to the vrs images so we can bind it's textures fbo

DtGlProgram* makVrv::DtVariableRateShadingImageUpdater::myProgram
mutableprotected

shader to update the vrs texture image

std::string makVrv::DtVariableRateShadingImageUpdater::myVertexShaderSource
mutableprotected

vertex shader source

std::string makVrv::DtVariableRateShadingImageUpdater::myFragmentShaderSource
mutableprotected

fragment shader source

osg::ref_ptr<osg::StateSet> makVrv::DtVariableRateShadingImageUpdater::myVrsFillStateSet
mutableprotected

state set to encapsulate state changes when doing vrs fill

bool makVrv::DtVariableRateShadingImageUpdater::myShouldUpdate
mutableprotected

should we update on the next drawImplementation

GLenum makVrv::DtVariableRateShadingImageUpdater::myRestoreFboTarget
protected

the framebuffer target to bind last fbo to


The documentation for this class was generated from the following file:

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)