![]() |
VR-Forces 5.0.3 Developer's Guide
|
A drawable for drawing the cloud layer.

Public Member Functions | |
| DtCloudDrawable (const DtCloudDrawable ©, const osg::CopyOp &op) | |
| virtual | ~DtCloudDrawable () |
| virtual osg::Object * | cloneType () const |
| virtual osg::Object * | clone (const osg::CopyOp ©op) const |
| virtual void | slot_channelDestroyed (DtChannelManager *channelManager, DtChannel *channel) |
| virtual unsigned int | findCubeMap (const osg::ref_ptr< const osg::Camera > osgCamera) const |
| virtual void | drawImplementation (osg::RenderInfo &renderInfo) const |
| virtual void | setGeocentricMode (bool mode) |
| virtual void | cleanupCloudLayer (SilverLining::Atmosphere *atmosphere, unsigned int layerHandle) |
| virtual DtSilverLiningCubeMapManager * | cubeMapManager () |
Public Attributes | |
| friend | DtCloudDrawableCreator |
Protected Member Functions | |
| DtCloudDrawable (DtDe &de, DtSilverliningGroup *parent) | |
| virtual void | fadeCloudsWithAltitude (const osg::Vec3d &osgCameraPosition, SilverLining::CloudLayer *layer, SilverLining::ThreadCameraStreamData *tcsData) |
| virtual void | fadeCloudsWithAltitude (const osg::Vec3d &osgCameraPosition, SilverLining::Atmosphere *atmosphere, SilverLining::ThreadCameraStreamData *tcsData) |
| virtual void | updateCloudAltitudes (const osg::Vec3d &osgCameraPosition, SilverLining::Atmosphere *atmosphere, SilverLining::ThreadCameraStreamData *tcsData) |
| virtual void | updateShader (osg::Node *node, osg::State &state, SilverLining::Atmosphere *atmosphere, SilverLining::ThreadCameraStreamData *tcsData) const |
| virtual void | updateOpenGLState (osg::State &state, SilverLining::Atmosphere *atmosphere, osg::Camera *osgCamera, SilverLining::ThreadCameraStreamData *tcsData) const |
| virtual void | setIsReflectionUniform (const osg::State &state, SilverLining::Atmosphere *atm, bool isReflection, SilverLining::ThreadCameraStreamData *tcsData) const |
| virtual void | connectSingals () |
| virtual void | initUniforms () |
| virtual void | disconnectSignals () |
| virtual void | slot_environmentChanged (const std::string &name) |
| virtual bool | computeHeightAboveTerrain (const osg::Vec3d &localPosition, double &heightOfGround) const |
| virtual void | updateCloudLayerAltitudes (SilverLining::Atmosphere *atmosphere, SilverLining::ThreadCameraStreamData *tcsData) |
| virtual void | updateCubeMap (SilverLining::Atmosphere *atmosphere, SilverLining::ThreadCameraStreamData *tcsData, const osg::Camera *osgCamera, const osg::Vec3d &osgCameraPosition, osg::State &state) |
| virtual bool | updateDepthTextureIfNecessary (osg::RenderInfo &renderInfo, SilverLining::Atmosphere *atmosphere) const |
| virtual bool | anyLayerNeedsDepthTexture (void) const |
| virtual void | unbindDepthTexture (osg::RenderInfo &renderInfo) const |
| virtual void | updateSoftnessAndSmoothCloudsFromImGui () const |
| virtual void | slot_coordinateSystemChanged () |
Private Member Functions | |
| DtCloudDrawable & | operator= (const DtCloudDrawable &rhs)=delete |
| makVrv::DtCloudDrawable::DtCloudDrawable | ( | const DtCloudDrawable & | copy, |
| const osg::CopyOp & | op | ||
| ) |
CopyCOTR.
|
virtual |
DTOR.
|
protected |
CTOR.
|
privatedelete |
not allowed
|
inlinevirtual |
required functions for derriving from osg::Drawable
|
inlinevirtual |
|
virtual |
connected to the signal_channelToBeDestroyed to cleanup the camera map
|
virtual |
Returns the latest environmental cube map for a camera, or NULL.
|
virtual |
Actually do the drawing.
|
virtual |
Indicate if we are in a geocentric terrain.
|
virtual |
Used to cleanup any SilverLining::CloudLayer specific state that the drawable has. currently only removes the entry in the default altitude map.
|
virtual |
get the cube map manager
|
protectedvirtual |
fade clouds depending on the altitude, for a given layer
|
protectedvirtual |
fade clouds depending on the altitude for all layers; calls the method above for each layer
|
protectedvirtual |
update cloud altitudes
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
Connects all the signals, Non-virtual, called in the ctor.
|
protectedvirtual |
setup uniforms
|
protectedvirtual |
Disconnects all the signals, called in the dtor.
|
protectedvirtual |
Slot when the environment is changed, for example, change from cloudy to snowy.
| name | The new name of the environment |
|
protectedvirtual |
compute height above terrain
|
protectedvirtual |
update cloud layer altitude
|
protectedvirtual |
update cube map
|
protectedvirtual |
Copy the depth buffer from the currently bound frame buffer to a texture that the clouds can use for smoothing clouds near other objects. Returns true if the depth texture was actually updated and bound.
|
protectedvirtual |
Whether any cloud layer needs the depth texture (e.g. stratocumulus always needs it)
|
protectedvirtual |
After the drawable is done with the depth texture we need to unbind it so SLI is fast.
|
protectedvirtual |
|
protectedvirtual |
slot for when the coordinate system changes
| friend makVrv::DtCloudDrawable::DtCloudDrawableCreator |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
This flag is used to skip updating the altitude when an environment changed, since the actual change for silver lining happen in next frame.
|
protected |
|
mutableprotected |
mutable due to osg drawImplementation limitations. Used to setup uniforms so they the opengl calls are not called directly in this class.
|
mutableprotected |
|
mutableprotected |
|
mutableprotected |
|
mutableprotected |
|
mutableprotected |
|
mutableprotected |
|
mutableprotected |
|
protected |
|
protected |
|
mutableprotected |
mutable due to osg drawImplementation limitations. Used for imgui settings for cloud smoothing.
|
mutableprotected |
|
mutableprotected |
|
protected |
|
protected |
|
protected |
|
protected |
local clone of the system wide coordinate system. for thread safety.
|
protected |