![]() |
VR-Forces 4.8 Class Documentation
|
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... | |
| DtCullShaderConfig & | operator= (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 |
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
| makVrv::DtCullShaderConfig::DtCullShaderConfig | ( | bool | viewFrustumCulling, |
| bool | lodChecking, | ||
| bool | useInstanceCount | ||
| ) |
| viewFrustumCulling | determines whether the internal cull shader will do the view frustum culling |
| lodChecking | determines whether whether the internal cull shader will do the lod checking |
| useInstanceCount | adjusts 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.
| 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 | ) |
|
protected |
|
protected |
|
protected |