13 #include <osg/Drawable>
31 class DtGlRenderTexture;
34 struct DtCrepuscularRaysParameters;
78 virtual void reloadShaders();
81 virtual void drawImplementation(osg::RenderInfo& renderInfo)
const;
92 virtual void setSize(
int width,
int height);
95 virtual void setOcclusionTexture(
osg::Texture* inputTex);
101 virtual void setVisible(
bool visible) { myVisible = visible; }
102 virtual bool visible()
const {
return myVisible; }
108 virtual void initRenderTextures()
const;
111 virtual void downSample4xPass(osg::State* state)
const;
114 virtual void volumetricRaysPass(osg::State* state)
const;
117 virtual void compositeRaysPass(osg::State* state)
const;
120 virtual void createComputeProgramIfNecessary(VOLUMETRIC_PASS pass,
const std::string& path,
const std::string& name)
const;
123 virtual void createProgramIfNecessary(VOLUMETRIC_PASS pass,
const std::string& path,
const std::string& prefixName)
const;
126 virtual void initializeUniformLocations(VOLUMETRIC_PASS pass)
const;
129 virtual void zeroOutUniformLocations();
143 mutable unsigned int myMutablePrograms[PASSES_SIZE];
Diagonal crossing liens.
Definition: DtTacticalGraphicUtilities.h:93
Definition: DtVolumetricDrawable.h:51
osg::ref_ptr< osg::Texture > myOcclusionTex
Definition: DtVolumetricDrawable.h:135
int myChannelHeight
Definition: DtVolumetricDrawable.h:133
const char * creatorTypeName< DtVolumetricDrawable >(void)
creator class
Definition: DtVolumetricDrawable.h:41
int myMutableBaseTextureLoc
Definition: DtVolumetricDrawable.h:153
int myChannelWidth
Definition: DtVolumetricDrawable.h:132
struture used to exhchange/communicate various crepuscular rays parameters
Definition: DtCrepuscularRaysParameters.h:20
bool myVisible
Definition: DtVolumetricDrawable.h:141
friend DtVolumetricDrawableCreator
friended, to access constructor above
Definition: DtVolumetricDrawable.h:64
Definition: DtVolumetricDrawable.h:52
Contains makVrv::DtCrepuscularRaysParameters structure.
Definition: DtVirtualBaseClassCreator.h:14
int myMutableVolumetricTextureLoc
Definition: DtVolumetricDrawable.h:154
Definition: DtPostProcessorDrawable.h:23
int myMutableSlLightColorLoc
Definition: DtVolumetricDrawable.h:149
osg::ref_ptr< osg::Texture > myBaseTex
Definition: DtVolumetricDrawable.h:136
virtual bool visible() const
Definition: DtVolumetricDrawable.h:102
virtual void setVisible(bool visible)
set/get visibility
Definition: DtVolumetricDrawable.h:101
int myMutableSlLightPositionOnScreenLoc
Definition: DtVolumetricDrawable.h:147
class used to render crepuscular rays during the post processor camera draw
Definition: DtVolumetricDrawable.h:45
#define DT_DLL_VRVPOSTPROCESSOR
Definition: vrvPostProcessor.h:19
This file contains the declaration of the class DtPostProcessorDrawable which is used for rendering p...
Contains DLL export macros.
DtGlTexture * myMutableDownSampledOcclusionTexture
Definition: DtVolumetricDrawable.h:138
int myMutableSlOutputScaleLoc
Definition: DtVolumetricDrawable.h:150
int myMutableBaseStrengthLoc
Definition: DtVolumetricDrawable.h:152
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
int myMutableSlParametersLoc
Definition: DtVolumetricDrawable.h:148
A helper classes for creating a RTT target, optionally including depth buffer.
Definition: DtGlTexture.h:20
DtVirtualBaseClassCreator< DtVolumetricDrawable > DtVolumetricDrawableCreator
Definition: DtVolumetricDrawable.h:36
VOLUMETRIC_PASS
Definition: DtVolumetricDrawable.h:48
DtGlTexture * myMutableVolumetricRaysBuffer
Definition: DtVolumetricDrawable.h:139
DtCrepuscularRaysParameters myParameters
Definition: DtVolumetricDrawable.h:145