13 #include <osg/OperationThread>
21 #include <tbb/concurrent_vector.h>
22 #include <tbb/mutex.h>
27 class DtOsgCullVisitor;
28 class DtDiGuyScenario;
30 class DtDiGuyOsgRootNode;
31 class DtDiGuyInstanceDrawable;
54 friend class DtInstanceManagerTboUpdaterCreator;
62 virtual void operator () (osg::Object* sv);
91 virtual void traverse(osg::NodeVisitor& nv);
93 virtual void setCullNeedsToRun(
bool needsToRun);
129 virtual void operator () (osg::Object* sv);
data that's passed around for culling
Definition: DtDiGuyOctreeCullGroup.h:35
DtDiGuyCullData myPrecullData
Definition: DtDiGuyOctreeCullGroup.h:155
DtDiGuyScenario & myScenario
Definition: DtDiGuyOctreeCullGroup.h:76
int myMaxThreadCount
Definition: DtDiGuyOctreeCullGroup.h:134
Definition: featureContext.h:37
DtDiGuyScenario & myScenario
Definition: DtDiGuyOctreeCullGroup.h:156
bool myOrthoCulling
Definition: DtDiGuyOctreeCullGroup.h:45
custom traversal and timings for diguy attach point
Definition: DtDiGuyOctreeCullGroup.h:83
DtDiGuyOctreeCullGroup & myGroup
Definition: DtDiGuyOctreeCullGroup.h:132
Contains DLL export macros.
async cull task started by DtDiguyPreCullJob
Definition: DtDiGuyOctreeCullGroup.h:141
DtDiGuyScenario & myScenario
Definition: DtDiGuyOctreeCullGroup.h:100
responsible for starting culling code off in a seperate thread when culling starts ...
Definition: DtDiGuyOctreeCullGroup.h:112
osg::Matrixd myProjectionMatrix
Definition: DtDiGuyOctreeCullGroup.h:39
osg::ref_ptr< DtDiGuyInstanceTboUpdaterJob > myTboMainThreadUpdaterJob
Definition: DtDiGuyOctreeCullGroup.h:101
osg::Vec3d myCameraPosition
Definition: DtDiGuyOctreeCullGroup.h:41
DtOsgCullVisitor will inspect the camera to see which visual mode is active. If the visual mode is a ...
Definition: DtOsgCullVisitor.h:27
DtDe & myDe
Definition: DtDiGuyOctreeCullGroup.h:75
bool myCullNeedsToRun
Definition: DtDiGuyOctreeCullGroup.h:105
osg::Matrixd myViewMatrix
Definition: DtDiGuyOctreeCullGroup.h:40
DtDiGuyCullData()
Definition: DtDiGuyOctreeCullGroup.h:37
DtDiGuyScenario & myScenario
Definition: DtDiGuyOctreeCullGroup.h:133
double myAltitude2D
Definition: DtDiGuyOctreeCullGroup.h:42
tbb::concurrent_vector< DtDiGuyOsgRootNode * > & myNoninstancedNodeArray
Definition: DtDiGuyOctreeCullGroup.h:103
unsigned int myTraversalNum
Definition: DtDiGuyOctreeCullGroup.h:44
float myCameraMag
Definition: DtDiGuyOctreeCullGroup.h:43
virtual tbb::task * execute()
runs the task
Class that renders all the diguy instance objects in one osg drawable, major performance improvement...
Definition: DtDiGuyInstanceDrawable.h:27
DtDiGuyCullAsyncTask(DtDiGuyOctreeCullGroup &group, DtDiGuyScenario &dtscenario, osg::Object *object)
creates the task
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:72
#define DT_DLL_VRVDIGUY
Definition: vrvDiGuy.h:21
DtDiGuyInstanceDrawable & myInstanceDrawable
Definition: DtDiGuyOctreeCullGroup.h:102
responsible for updating the TBO in the main thread spawned when data is ready
Definition: DtDiGuyOctreeCullGroup.h:50
tbb::mutex myAsyncMutex
Definition: DtDiGuyOctreeCullGroup.h:104
Owns a DiGuy scenario for the application.
Definition: DtDiGuyScenario.h:87
DtDiGuyOctreeCullGroup & myGroup
Definition: DtDiGuyOctreeCullGroup.h:154