![]() |
VR-Forces 4.10 Class Documentation
|
DtShaderEffectManager injects custom shaders into the scenes, uses DtShaderEffect objects to add rendering effects to the ground. More...

Classes | |
| struct | DtShaderEffectPerChannelData |
| Structure for holding per channel data for the effects. More... | |
| class | TextureAddressJob |
Public Member Functions | |
| virtual | ~DtShaderEffectManager () |
| DTOR. More... | |
| DtShaderEffectManager ()=delete | |
| unimplemented private default constructor More... | |
| DtShaderEffectManager (const DtShaderEffectManager &)=delete | |
| Copy Constructor not implemented – Copy not allowed. More... | |
| DtShaderEffectManager & | operator= (const DtShaderEffectManager &)=delete |
| Assignment Operator not implemented – Copy not allowed. More... | |
| virtual void | initializeEffects () |
| initializes or reinitializes the effects. More... | |
| virtual void | findTextureAddresses (osg::RenderInfo &renderInfo) |
| called by the main thread job periodically to check if the texture has been assigned an address. More... | |
| virtual TextureAddressJob * | createTextureAddressJob () |
| create the main thread job, wrapper function for the call to new so it can be overridden if we need to change the job class More... | |
| virtual void | update () |
| called by DtOsgRenderer::update(), updates the per frame uniforms for the shader effects and sets up IMGui More... | |
| virtual void | updateChannel (DtOsgChannel *channel, osg::Vec3d pos) |
| called by DtOsgChannel::update(), updates the per channel uniforms More... | |
| virtual void | registerWeatherEffectsObject (DtOsgWeatherEffectsObject *weatherEffectsObject) |
| called by the DtOsgWeatherEffectsObject constructor to register itself when it is created. More... | |
| virtual void | slot_reloadShader () |
| called when the signal_reloadShader is triggered. Marks the effect dirty so it can be recreated More... | |
| virtual void | slot_elevationalConfigurationUpdated (DtEnvironmentInterface::DtElevationalConfigurationRecord rec) |
| handle an elevational configuration update signal More... | |
| virtual DtOsgWeatherEffectsObject * | findWeatherEffectsObject () |
| Use to get the local settings for the weather effects. Currently only has snow parameters in it. More... | |
| virtual const DtOsgWeatherEffectsObject * | findWeatherEffectsObject () const |
| Use to get the local settings for the weather effects. Currently only has snow parameters in it. More... | |
| virtual void | releaseGLObjects (osg::State *state) |
| release the gl objects for this class More... | |
Public Member Functions inherited from makVrv::DtVirtualBaseClass | |
| DtVirtualBaseClass () | |
| Do nothing constructor. More... | |
| virtual | ~DtVirtualBaseClass () |
| Virtual do nothing destructor. More... | |
Static Public Member Functions | |
| static DtShaderEffectManager & | instance (DtDe &de) |
| Get/create instance of sky object manager. More... | |
| static const std::string & | theClassName () |
| Get the name this class is registered by. More... | |
Protected Types | |
| typedef std::set < DtShaderEffect * > | ShaderEffectSet |
| typedef std::map < osg::observer_ptr < osg::Camera > , DtShaderEffectPerChannelData * > | PerChannelDataMap |
| typedef osg::ref_ptr < osg::CoordinateSystemNode > | CoordinateSystemNodeRef |
Protected Member Functions | |
| DtShaderEffectManager (DtDe &de) | |
| constructor More... | |
| virtual void | updateImGui () |
| update the imgui widgets and readback any changes from them More... | |
| virtual void | updateUniforms () |
| update the uniforms that may need to be changed based on the imgui or regular gui inputs. More... | |
| virtual DtShaderEffectPerChannelData & | getOrCreatePerChannelData (osg::Camera *camera) |
| gets or creates the data associated with a channel More... | |
| virtual void | flushInvalidChannels () |
| check if the channel still is valid. If not then destroy the corrisponding shader effects More... | |
DtShaderEffectManager injects custom shaders into the scenes, uses DtShaderEffect objects to add rendering effects to the ground.
Currently has effects for rain and snow but more could be added for ice, sand, etc...
|
protected |
|
protected |
|
protected |
|
virtual |
DTOR.
|
delete |
unimplemented private default constructor
|
delete |
Copy Constructor not implemented – Copy not allowed.
|
protected |
constructor
|
delete |
Assignment Operator not implemented – Copy not allowed.
|
virtual |
initializes or reinitializes the effects.
Called by DtOsgRenderer at startup and whenever reload shaders is triggered reloads the shader changes if triggered from reload shaders but the texture is not reloaded off disk due to osgFileCache
|
virtual |
called by the main thread job periodically to check if the texture has been assigned an address.
|
virtual |
create the main thread job, wrapper function for the call to new so it can be overridden if we need to change the job class
|
virtual |
called by DtOsgRenderer::update(), updates the per frame uniforms for the shader effects and sets up IMGui
|
virtual |
called by DtOsgChannel::update(), updates the per channel uniforms
|
virtual |
called by the DtOsgWeatherEffectsObject constructor to register itself when it is created.
|
virtual |
called when the signal_reloadShader is triggered. Marks the effect dirty so it can be recreated
|
virtual |
handle an elevational configuration update signal
|
virtual |
Use to get the local settings for the weather effects. Currently only has snow parameters in it.
|
virtual |
Use to get the local settings for the weather effects. Currently only has snow parameters in it.
|
virtual |
release the gl objects for this class
|
static |
Get/create instance of sky object manager.
|
static |
Get the name this class is registered by.
|
protectedvirtual |
update the imgui widgets and readback any changes from them
|
protectedvirtual |
update the uniforms that may need to be changed based on the imgui or regular gui inputs.
|
protectedvirtual |
gets or creates the data associated with a channel
|
protectedvirtual |
check if the channel still is valid. If not then destroy the corrisponding shader effects
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |