18 #include <osg/RenderInfo>
56 virtual void init(
int gridSize,
float patchSize);
59 virtual void draw(osg::RenderInfo& renderInfo)
const;
63 virtual void updateAlphaFade(
double time);
68 virtual void cullUpdate(
const osg::Vec3d& camPos,
DtJobSplitter* jobSplitter);
72 virtual void setTransform(
const osg::Vec3d& position);
75 virtual const osg::Vec3d& position()
const;
78 virtual const float* skeleton()
const;
84 virtual void getBonePosition(
int boneIndex,
float patchSize, osg::Vec3d& position);
89 virtual void setBoneHeight(
int boneIndex,
float height);
93 virtual void setDesiredAlphaFade(
float value);
97 virtual void setAlphaFade(
float value);
100 virtual float alphaFade()
const;
104 virtual void SetCulled(
bool culled);
107 virtual bool culled()
const;
112 virtual void setBoneHeightExtents(
float min,
float max);
117 virtual void getBoneHeightExtents(
float& min,
float& max);
120 virtual void computeBoneHeightExtents();
124 virtual void runSort(
const osg::Vec3& localCamPos);
130 virtual void computeSortDepth(
const osg::Vec3& camPos);
133 virtual void fillSortedIndices();
141 static int theSortBackToFront(
const void* arg0,
const void* arg1);
144 static void theSortJob(
void* data);
230 static const std::string& theClassName();
DT_DLL_EXAMPLESCENEROOTPLUGIN void init(DtDe &anIG)
bool myCulled
Definition: DtGroundFogPatch.h:192
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
unsigned short myVertexStart
Definition: DtGroundFogPatch.h:164
float myBoneHeightMax
Definition: DtGroundFogPatch.h:194
DtGroundFogPatch * myPatch
Definition: DtGroundFogPatch.h:178
double myLastTime
Definition: DtGroundFogPatch.h:189
#define DT_DLL_VRVOSG
Definition: vrvOsg.h:23
unsigned short * myIndices
Definition: DtGroundFogPatch.h:183
DtDe & myDe
Definition: DtGroundFogPatch.h:233
osg::Vec3d myPosition
Definition: DtGroundFogPatch.h:188
this class is used to split work up between threads.
Definition: DtJobSplitter.h:64
an object used to represent 1 patch of a patchy ground fog system. The patch is made up of cells in a...
Definition: DtGroundFogPatch.h:33
int myCellCount
Definition: DtGroundFogPatch.h:186
Contains makVrv::DtVirtualBaseClass class.
Contains makVrv::DtJobSplitter class.
SortJobData mySortJobData
Definition: DtGroundFogPatch.h:198
DtJobSplitterJob mySortJob
Definition: DtGroundFogPatch.h:199
unsigned short myIndiceCount
Definition: DtGroundFogPatch.h:182
int mySortDepth
Definition: DtGroundFogPatch.h:163
float myAlphaFade
Definition: DtGroundFogPatch.h:190
creator for DtGroundFogPatch
Definition: DtGroundFogPatch.h:204
a cell in the voxel grid
Definition: DtGroundFogPatch.h:153
SortJobData()
Definition: DtGroundFogPatch.h:171
Cell()
Definition: DtGroundFogPatch.h:155
int mySortDepth
Definition: DtGroundFogPatch.h:148
A generic structure to hold data for a job for use with DtJobSplitter.
Definition: DtJobSplitter.h:26
Cell * myCells
Definition: DtGroundFogPatch.h:185
Contains DLL export macros.
osg::Vec3 myCenter
Definition: DtGroundFogPatch.h:165
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:76
osg::Vec3 myCameraPos
Definition: DtGroundFogPatch.h:179
a structure to hold data for a sorting job
Definition: DtGroundFogPatch.h:169
float myAlphaFadeDesired
Definition: DtGroundFogPatch.h:191
float myBoneHeightMin
Definition: DtGroundFogPatch.h:193