19 #include <osg/ref_ptr>
20 #include <osg/OperationThread>
80 virtual void operator () (osg::Object* sv);
83 virtual void release();
129 virtual void initialize();
132 virtual void releaseGLObjects(osg::State* state);
139 virtual bool bindFogFroxelTexture(
const int unit,
const unsigned int renderContextId);
143 virtual void resetVolumes();
154 virtual void addVolume(
const osg::Vec3d& position,
155 const osg::Matrixf& rotation,
const float width,
const float length,
156 const float height,
const float density);
159 virtual void updateForView(
const osg::Matrixf& projMat,
const osg::Matrixd& viewMat);
162 virtual float maxGridDistance()
const;
170 virtual void slot_reloadShaders();
int myCubeDataUniformLoc
Definition: DtWeatherFogFroxelGrid.h:102
const char * creatorTypeName< DtWeatherFogFroxelGrid >(void)
template specialization for the creator (pass the class being created to the creatorTypeName template...
Definition: DtWeatherFogFroxelGrid.h:44
int myViewInvMatUniformLoc
Definition: DtWeatherFogFroxelGrid.h:98
DtVirtualBaseClassCreator< DtWeatherFogFroxelGrid > DtWeatherFogFroxelGridCreator
creator
Definition: DtWeatherFogFroxelGrid.h:37
float width
Definition: DtWeatherFogFroxelGrid.h:189
The DtOsgRenderer is the component responsible for rendering 3D images onto the screen via OpenSceneG...
Definition: DtOsgRenderer.h:87
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
float length
Definition: DtWeatherFogFroxelGrid.h:190
DtOsgRenderer & myOsgRenderer
Definition: DtWeatherFogFroxelGrid.h:197
Definition: DtWeatherFogFroxelGrid.h:59
osg::Matrixd myViewMat
Definition: DtWeatherFogFroxelGrid.h:205
float height
Definition: DtWeatherFogFroxelGrid.h:191
osg::ref_ptr< FroxelGenerationJob > myFroxelGenerationJob
Definition: DtWeatherFogFroxelGrid.h:202
#define DT_DLL_VRVOSG
Definition: vrvOsg.h:23
osg::ref_ptr< osg::Texture3D > myVoxelTexture
Definition: DtWeatherFogFroxelGrid.h:200
DtDe & myDe
Definition: DtWeatherFogFroxelGrid.h:195
int myBoxPosUniformLoc
Definition: DtWeatherFogFroxelGrid.h:99
Volume()
Definition: DtWeatherFogFroxelGrid.h:177
osg::Matrixf rotation
Definition: DtWeatherFogFroxelGrid.h:188
unsigned int GLuint
Definition: DtGlTextureBufferObject.h:17
A convenience class to represent an OpenGL Shader Program.
Definition: DtGlProgram.h:65
int myReverseZUniformLoc
Definition: DtWeatherFogFroxelGrid.h:95
int myProjInvMatUniformLoc
Definition: DtWeatherFogFroxelGrid.h:97
Variadic templated creator class for defining a DtVirtualBaseClass creator that is automatically regi...
Definition: DtVirtualBaseClassCreator.h:22
int myBoxRotUniformLoc
Definition: DtWeatherFogFroxelGrid.h:100
float density
Definition: DtWeatherFogFroxelGrid.h:192
DtWeatherFogFroxelGrid & myWeatherFogFroxelGrid
Definition: DtWeatherFogFroxelGrid.h:91
Contains makVrv::DtVirtualBaseClass class.
DtGlProgram * myComputeProgram
Definition: DtWeatherFogFroxelGrid.h:93
osg::Vec3d position
Definition: DtWeatherFogFroxelGrid.h:187
DtWeatherFogFroxelGrid uses a frustum voxel grid to compute density/translucency at voxel locations b...
Definition: DtWeatherFogFroxelGrid.h:52
DtDe & myDe
Definition: DtWeatherFogFroxelGrid.h:90
std::vector< Volume * > myVolumes
Definition: DtWeatherFogFroxelGrid.h:207
GLuint myVoxelTextureId
Definition: DtWeatherFogFroxelGrid.h:199
int myActiveVolumes
Definition: DtWeatherFogFroxelGrid.h:208
int myOutputTextureUniformLoc
Definition: DtWeatherFogFroxelGrid.h:94
int myProjMatUniformLoc
Definition: DtWeatherFogFroxelGrid.h:96
A structure used to define a volume (bounds, transform, density).
Definition: DtWeatherFogFroxelGrid.h:175
Contains DLL export macros.
int myBoxSizeUniformLoc
Definition: DtWeatherFogFroxelGrid.h:101
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:70
Contains makVrv::DtOsgRenderer class.
float myMaxGridDistance
Definition: DtWeatherFogFroxelGrid.h:210
osg::Matrixf myProjMat
Definition: DtWeatherFogFroxelGrid.h:204
friend DtWeatherFogFroxelGridCreator
Definition: DtWeatherFogFroxelGrid.h:56