VR-Forces Development_Version Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members | Public Member Functions | Protected Member Functions | Protected Attributes
makVrv::DtCloudDrawable Class Reference

A drawable for drawing the cloud layer. More...

Inheritance diagram for makVrv::DtCloudDrawable:
Inheritance graph
[legend]

Public Member Functions

 DtCloudDrawable (DtSilverliningGroup *parent=0)
 CTOR.
 DtCloudDrawable (const DtCloudDrawable &copy, const osg::CopyOp &op)
 CopyCOTR.
virtual ~DtCloudDrawable ()
 DTOR.
 META_Object (vrvOsg, DtCloudDrawable) void setCrepuscularRays(bool enabled)
 Meta Functions.
void updateCubeMaps (bool fullRegenerate)
 Request an updated cube map with the next draw.
unsigned int getCubeMap (const osg::ref_ptr< osg::Camera > camera) const
 Returns the latest environmental cube map for a camera, or NULL.
unsigned int getPrimaryCubeMap () const
 Returns the latest environmental cube map for general use, or NULL.
virtual void drawImplementation (osg::RenderInfo &renderInfo) const
 Actually do the drawing.
void setGeocentricMode (bool mode)
 Indicate if we are in a geocentric terrain.

Protected Member Functions

void fadeCloudsWithAltitude (double altitudeMSL, SilverLining::Atmosphere *atm)
void updateCloudAltitudes (const osg::Vec3d &localPosition, SilverLining::Atmosphere *atm)
void updateShader (osg::Node *node, osg::State &state, SilverLining::Atmosphere *atm) const
void updateOpenGLState (osg::State &state, SilverLining::Atmosphere *atm, osg::Camera *cam) const
void setIsReflectionUniform (SilverLining::Atmosphere *atm, bool isReflection) const
bool computeHeightAboveTerrain (const osg::Vec3d &localPosition, double &heightOfGround)
void updateCloudLayerAltitudes (SilverLining::Atmosphere *atm)

Protected Attributes

std::vector< unsigned int > myUserShaderVector
DtSilverliningGroupmyParent
bool myCrepuscularRays
bool myGeocentricFlag
osg::Vec3d myLastHOTUpdatePos
bool myForceHOTUpdate
double myHOT
std::map
< SilverLining::CloudLayer
*, double > 
myOriginalAltitudesMap
std::map< osg::Camera
*, osg::Vec3d > 
myMutableLastCubeMapUpdateMap
std::map< const osg::ref_ptr
< osg::Camera >, bool
myMutableNeedsCubeMapFlagMap
std::map< const osg::ref_ptr
< osg::Camera >, unsigned int > 
myMutableCubeMaps
std::map< osg::Camera
*, unsigned int > 
myMutableCubeMapFaceCount
std::map< const osg::ref_ptr
< osg::Camera >, bool
myMutableNeedsCubeMapFullRegenerationMap
unsigned int myMutableLastFrameNum
unsigned int myMutablePrimaryCubeMap

Detailed Description

A drawable for drawing the cloud layer.

Constructor & Destructor Documentation

makVrv::DtCloudDrawable::DtCloudDrawable ( DtSilverliningGroup parent = 0)

CTOR.

makVrv::DtCloudDrawable::DtCloudDrawable ( const DtCloudDrawable copy,
const osg::CopyOp &  op 
)

CopyCOTR.

virtual makVrv::DtCloudDrawable::~DtCloudDrawable ( )
virtual

DTOR.

Member Function Documentation

makVrv::DtCloudDrawable::META_Object ( vrvOsg  ,
DtCloudDrawable   
)

Meta Functions.

Set whether crepuscular rays (sun rays) effects are on.

void makVrv::DtCloudDrawable::updateCubeMaps ( bool  fullRegenerate)

Request an updated cube map with the next draw.

unsigned int makVrv::DtCloudDrawable::getCubeMap ( const osg::ref_ptr< osg::Camera >  camera) const

Returns the latest environmental cube map for a camera, or NULL.

unsigned int makVrv::DtCloudDrawable::getPrimaryCubeMap ( ) const

Returns the latest environmental cube map for general use, or NULL.

virtual void makVrv::DtCloudDrawable::drawImplementation ( osg::RenderInfo &  renderInfo) const
virtual

Actually do the drawing.

void makVrv::DtCloudDrawable::setGeocentricMode ( bool  mode)

Indicate if we are in a geocentric terrain.

void makVrv::DtCloudDrawable::fadeCloudsWithAltitude ( double  altitudeMSL,
SilverLining::Atmosphere *  atm 
)
protected
void makVrv::DtCloudDrawable::updateCloudAltitudes ( const osg::Vec3d &  localPosition,
SilverLining::Atmosphere *  atm 
)
protected
void makVrv::DtCloudDrawable::updateShader ( osg::Node *  node,
osg::State &  state,
SilverLining::Atmosphere *  atm 
) const
protected
void makVrv::DtCloudDrawable::updateOpenGLState ( osg::State &  state,
SilverLining::Atmosphere *  atm,
osg::Camera *  cam 
) const
protected
void makVrv::DtCloudDrawable::setIsReflectionUniform ( SilverLining::Atmosphere *  atm,
bool  isReflection 
) const
protected
bool makVrv::DtCloudDrawable::computeHeightAboveTerrain ( const osg::Vec3d &  localPosition,
double &  heightOfGround 
)
protected
void makVrv::DtCloudDrawable::updateCloudLayerAltitudes ( SilverLining::Atmosphere *  atm)
protected

Member Data Documentation

std::vector<unsigned int> makVrv::DtCloudDrawable::myUserShaderVector
mutableprotected
DtSilverliningGroup* makVrv::DtCloudDrawable::myParent
protected
bool makVrv::DtCloudDrawable::myCrepuscularRays
protected
bool makVrv::DtCloudDrawable::myGeocentricFlag
protected
osg::Vec3d makVrv::DtCloudDrawable::myLastHOTUpdatePos
protected
bool makVrv::DtCloudDrawable::myForceHOTUpdate
protected
double makVrv::DtCloudDrawable::myHOT
protected
std::map<SilverLining::CloudLayer *, double> makVrv::DtCloudDrawable::myOriginalAltitudesMap
protected
std::map<osg::Camera *, osg::Vec3d> makVrv::DtCloudDrawable::myMutableLastCubeMapUpdateMap
mutableprotected
std::map<const osg::ref_ptr<osg::Camera>, bool> makVrv::DtCloudDrawable::myMutableNeedsCubeMapFlagMap
mutableprotected
std::map<const osg::ref_ptr<osg::Camera>, unsigned int> makVrv::DtCloudDrawable::myMutableCubeMaps
mutableprotected
std::map<osg::Camera *, unsigned int> makVrv::DtCloudDrawable::myMutableCubeMapFaceCount
mutableprotected
std::map<const osg::ref_ptr<osg::Camera>, bool> makVrv::DtCloudDrawable::myMutableNeedsCubeMapFullRegenerationMap
mutableprotected
unsigned int makVrv::DtCloudDrawable::myMutableLastFrameNum
mutableprotected
unsigned int makVrv::DtCloudDrawable::myMutablePrimaryCubeMap
mutableprotected

The documentation for this class was generated from the following file:

Document ID: Generated on Tue Mar 8 22:13:38 EST 2016 from SVN revision 162938
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)