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;
52 friend class DtInstanceManagerTboUpdaterCreator;
60 virtual void operator () (osg::Object* sv);
86 virtual void traverse(osg::NodeVisitor& nv);
88 virtual void setCullNeedsToRun(
bool needsToRun);
124 virtual void operator () (osg::Object* sv);
data that's passed around for culling
Definition: DtDiGuyOctreeCullGroup.h:35
DtDiGuyCullData myPrecullData
Definition: DtDiGuyOctreeCullGroup.h:150
DtDiGuyScenario & myScenario
Definition: DtDiGuyOctreeCullGroup.h:73
int myMaxThreadCount
Definition: DtDiGuyOctreeCullGroup.h:129
Definition: featureContext.h:37
DtDiGuyScenario & myScenario
Definition: DtDiGuyOctreeCullGroup.h:151
custom traversal and timings for diguy attach point
Definition: DtDiGuyOctreeCullGroup.h:78
DtDiGuyOctreeCullGroup & myGroup
Definition: DtDiGuyOctreeCullGroup.h:127
Contains DLL export macros.
async cull task started by DtDiguyPreCullJob
Definition: DtDiGuyOctreeCullGroup.h:136
DtDiGuyScenario & myScenario
Definition: DtDiGuyOctreeCullGroup.h:95
responsible for starting culling code off in a seperate thread when culling starts ...
Definition: DtDiGuyOctreeCullGroup.h:107
osg::Matrixd myProjectionMatrix
Definition: DtDiGuyOctreeCullGroup.h:39
osg::ref_ptr< DtDiGuyInstanceTboUpdaterJob > myTboMainThreadUpdaterJob
Definition: DtDiGuyOctreeCullGroup.h:96
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:72
bool myCullNeedsToRun
Definition: DtDiGuyOctreeCullGroup.h:100
osg::Matrixd myViewMatrix
Definition: DtDiGuyOctreeCullGroup.h:40
DtDiGuyCullData()
Definition: DtDiGuyOctreeCullGroup.h:37
DtDiGuyScenario & myScenario
Definition: DtDiGuyOctreeCullGroup.h:128
tbb::concurrent_vector< DtDiGuyOsgRootNode * > & myNoninstancedNodeArray
Definition: DtDiGuyOctreeCullGroup.h:98
unsigned int myTraversalNum
Definition: DtDiGuyOctreeCullGroup.h:43
float myCameraMag
Definition: DtDiGuyOctreeCullGroup.h:42
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:26
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:70
#define DT_DLL_VRVDIGUY
Definition: vrvDiGuy.h:21
DtDiGuyInstanceDrawable & myInstanceDrawable
Definition: DtDiGuyOctreeCullGroup.h:97
responsible for updating the TBO in the main thread spawned when data is ready
Definition: DtDiGuyOctreeCullGroup.h:48
tbb::mutex myAsyncMutex
Definition: DtDiGuyOctreeCullGroup.h:99
Owns a DiGuy scenario for the application.
Definition: DtDiGuyScenario.h:87
DtDiGuyOctreeCullGroup & myGroup
Definition: DtDiGuyOctreeCullGroup.h:149