![]() |
VR-Forces Developer's Guide
|
The indirect system uses this in conjunction with the system wide limits (for entity/terrain) to clamp hi-res textures. Currently: -terrains use this class with a limit of DtDeInitializer::limitTerrainTextures() -see DtStealthCommandLineProcessor::limitEntityTexturesArg or DtVantageIgCommandLineProcessor::limitEntityTexturesArg -entities use a modified version of this class with a proportional limit of DtDeInitializer::limitEntityTextures() -see DtStealthCommandLineProcessor::limitTerrainTexturesArg or DtVantageIgCommandLineProcessor::limitTerrainTexturesArg.

Public Types | |
| enum | Type { TERRAIN = 1001, NO_STRATEGY = -1001 } |
Public Member Functions | |
| virtual | ~DtIndirectLimitTextureStrategy () |
| DtIndirectLimitTextureStrategy ()=delete | |
| DtIndirectLimitTextureStrategy & | operator= (const DtIndirectLimitTextureStrategy &rhs)=delete |
| DtIndirectLimitTextureStrategy (const DtIndirectLimitTextureStrategy &rhs)=delete | |
| virtual DtIndirectTextureLimitAdjustedMipMap | adjustStartMipMapLevel (const DtIndirectImagePrototype *vrvImage) const |
| virtual void | excludeTexture (const std::string &textureFileAbsolutePath) |
| virtual bool | isExcluded (const std::string &textureFileAbsolutePath) const |
| virtual bool | needsMaxTextureResolutionComputation (void) const |
| virtual int | type (void) const |
Public Attributes | |
| friend | DtIndirectLimitTextureStrategyCreator |
Protected Member Functions | |
| DtIndirectLimitTextureStrategy (DtDe &de, const DtVector2< int > &limitTexturesResolution) | |
| virtual DtIndirectTextureLimitAdjustedMipMap | adjustStartMipMapLevel (const DtIndirectImagePrototype *vrvImage, const DtVector2< int > &limit) const |
Protected Attributes | |
| DtDe & | myDe |
| const DtVector2< int > | myLimitTexturesResolution |
| std::unordered_set< std::string > | myExcludedTextureFiles |
|
virtual |
destructor
|
delete |
not allowed
|
delete |
not allowed
|
protected |
constructor. only creator can created
|
delete |
not allowed
|
virtual |
vrvImage is the incoming image to limit Returns the mipmap details of where the image should be started to read from, such that the resulting texture is adjusted to this limit, per the limitation strategy In other words, the texture is clamped to myLimitTexturesResolution
Reimplemented in makVrv::DtIndirectEntityLimitTextureStrategy.
|
virtual |
specifically exclude a texture from an reduction
|
virtual |
is a texture excluded by this strategy
|
virtual |
whether needs max texture computation for each model (used in the aggregator) by default is false. only true for entity strategies
Reimplemented in makVrv::DtIndirectEntityLimitTextureStrategy.
|
virtual |
This is 0, 1, 5, -1 (or the model set for entities) or TERRAIN otherwise (terrain) and NO_STRATEGY if no strategy.
Reimplemented in makVrv::DtIndirectEntityLimitTextureStrategy.
|
protectedvirtual |
| friend makVrv::DtIndirectLimitTextureStrategy::DtIndirectLimitTextureStrategyCreator |
only creator can create
|
protected |
|
protected |