13 #ifndef DtCloudDrawable_H_
14 #define DtCloudDrawable_H_
19 #include <osg/Drawable>
22 namespace SilverLining
30 class DtSilverliningGroup;
51 void setCrepuscularRays(
bool enabled);
54 void updateCubeMaps(
bool fullRegenerate);
57 unsigned int getCubeMap(
const osg::ref_ptr<osg::Camera> camera)
const;
60 unsigned int getPrimaryCubeMap()
const;
63 virtual void drawImplementation(osg::RenderInfo& renderInfo)
const;
66 void setGeocentricMode(
bool mode);
70 void fadeCloudsWithAltitude(
double altitudeMSL, SilverLining::Atmosphere *atm);
71 void updateCloudAltitudes(
const osg::Vec3d& localPosition, SilverLining::Atmosphere *atm);
74 void updateShader(osg::Node *node,
const osg::State& state, SilverLining::Atmosphere *atm)
const;
75 void updateOpenGLState(osg::State &state, SilverLining::Atmosphere *atm, osg::Camera *cam)
const;
76 void setIsReflectionUniform(SilverLining::Atmosphere* atm,
bool isReflection)
const;
100 bool computeHeightAboveTerrain(
const osg::Vec3d& localPosition,
double& heightOfGround);
101 void updateCloudLayerAltitudes(SilverLining::Atmosphere* atm);