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

shader configuration storage class. More...

Public Member Functions

 DtCullShaderConfig (bool viewFrustumCulling, bool lodChecking, bool useInstanceCount)
 
 DtCullShaderConfig ()
 Default constructor, all options set to true. More...
 
 ~DtCullShaderConfig ()
 Destructor - this is a non virtual container class so it doesn't need a virtual destructor. More...
 
 DtCullShaderConfig (const DtCullShaderConfig &other)
 Copy Constructor. More...
 
DtCullShaderConfigoperator= (const DtCullShaderConfig &other)
 Assignment Operator. More...
 
bool useInstanceCount (void) const
 getters for the configuration options More...
 
bool viewFrustumCulling (void) const
 
bool lodChecking (void) const
 
void setUseInstanceCount (bool val)
 setters for the configuration options More...
 
void setViewFrustumCulling (bool val)
 
void setLodChecking (bool val)
 

Protected Attributes

bool myViewFrustumCulling
 
bool myLodChecking
 
bool myUseInstanceCount
 

Detailed Description

shader configuration storage class.

Has 3 available options which are described in the constructor's comment it is a simple non virtual container class which is why there is no creator or virutal destructor

Constructor & Destructor Documentation

makVrv::DtCullShaderConfig::DtCullShaderConfig ( bool  viewFrustumCulling,
bool  lodChecking,
bool  useInstanceCount 
)
Parameters
viewFrustumCullingdetermines whether the internal cull shader will do the view frustum culling
lodCheckingdetermines whether whether the internal cull shader will do the lod checking
useInstanceCountadjusts whether the cull shader will optimize for (mostly) unique models across instances (as is the case with cdb gs instances for example), in which case set the useInstanceCount = false or (mostly) shared models, in which case set the useInstanceCount = true

Remarks: Its still (probably) faster to run the cull shader, so that it may quickly generate the indirect command buffer by redistributing the (possibly) out of order instances in a fast, parallelized fashion , than to use the cpu to do this

makVrv::DtCullShaderConfig::DtCullShaderConfig ( )

Default constructor, all options set to true.

makVrv::DtCullShaderConfig::~DtCullShaderConfig ( )

Destructor - this is a non virtual container class so it doesn't need a virtual destructor.

makVrv::DtCullShaderConfig::DtCullShaderConfig ( const DtCullShaderConfig other)

Copy Constructor.

Member Function Documentation

DtCullShaderConfig& makVrv::DtCullShaderConfig::operator= ( const DtCullShaderConfig other)

Assignment Operator.

bool makVrv::DtCullShaderConfig::useInstanceCount ( void  ) const

getters for the configuration options

bool makVrv::DtCullShaderConfig::viewFrustumCulling ( void  ) const
bool makVrv::DtCullShaderConfig::lodChecking ( void  ) const
void makVrv::DtCullShaderConfig::setUseInstanceCount ( bool  val)

setters for the configuration options

void makVrv::DtCullShaderConfig::setViewFrustumCulling ( bool  val)
void makVrv::DtCullShaderConfig::setLodChecking ( bool  val)

Member Data Documentation

bool makVrv::DtCullShaderConfig::myViewFrustumCulling
protected
bool makVrv::DtCullShaderConfig::myLodChecking
protected
bool makVrv::DtCullShaderConfig::myUseInstanceCount
protected

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

Document ID: Generated on Thu Aug 27 10:56:05 EDT 2020 from SVN revision 217100
Copyright © 2005-2020 MAK Technologies. All Rights Reserved (www.mak.com)