VR-Forces 5.0.3 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes
makVrv::DtIndirectLimitTextureStrategy Class Reference

This class is passed as a pointer to DtIndirectTextureProcessor. The processor then uses this in conjunction with the system wide limits (for entity/terrain) to further 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.

Inheritance diagram for makVrv::DtIndirectLimitTextureStrategy:
Inheritance graph
[legend]

Public Member Functions

virtual ~DtIndirectLimitTextureStrategy ()
 
 DtIndirectLimitTextureStrategy ()=delete
 
DtIndirectLimitTextureStrategyoperator= (const DtIndirectLimitTextureStrategy &rhs)=delete
 
 DtIndirectLimitTextureStrategy (const DtIndirectLimitTextureStrategy &rhs)=delete
 
virtual
DtIndirectTextureLimitAdjustedMipMap 
adjustStartMipMapLevel (const osg::ref_ptr< osg::Image > &osgImage) const
 
virtual void excludeTexture (const std::string &textureFileAbsolutePath)
 
virtual bool isExcluded (const std::string &textureFileAbsolutePath) const
 
virtual bool needsMaxTextureResolutionComputation (void) const
 

Public Attributes

friend DtIndirectLimitTextureStrategyCreator
 

Protected Member Functions

 DtIndirectLimitTextureStrategy (DtDe &de, const DtVector2< int > &limitTexturesResolution)
 
virtual
DtIndirectTextureLimitAdjustedMipMap 
adjustStartMipMapLevel (const osg::ref_ptr< osg::Image > &osgImage, const DtVector2< int > &limit) const
 

Protected Attributes

DtDemyDe
 
const DtVector2< intmyLimitTexturesResolution
 
std::unordered_set< std::string > myExcludedTextureFiles
 

Constructor & Destructor Documentation

virtual makVrv::DtIndirectLimitTextureStrategy::~DtIndirectLimitTextureStrategy ( )
virtual

destructor

makVrv::DtIndirectLimitTextureStrategy::DtIndirectLimitTextureStrategy ( )
delete

not allowed

makVrv::DtIndirectLimitTextureStrategy::DtIndirectLimitTextureStrategy ( const DtIndirectLimitTextureStrategy rhs)
delete

not allowed

makVrv::DtIndirectLimitTextureStrategy::DtIndirectLimitTextureStrategy ( DtDe de,
const DtVector2< int > &  limitTexturesResolution 
)
protected

constructor. only creator can created

Member Function Documentation

DtIndirectLimitTextureStrategy& makVrv::DtIndirectLimitTextureStrategy::operator= ( const DtIndirectLimitTextureStrategy rhs)
delete

not allowed

virtual DtIndirectTextureLimitAdjustedMipMap makVrv::DtIndirectLimitTextureStrategy::adjustStartMipMapLevel ( const osg::ref_ptr< osg::Image > &  osgImage) const
virtual

osgImage 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 void makVrv::DtIndirectLimitTextureStrategy::excludeTexture ( const std::string &  textureFileAbsolutePath)
virtual

specifically exclude a texture from an reduction

virtual bool makVrv::DtIndirectLimitTextureStrategy::isExcluded ( const std::string &  textureFileAbsolutePath) const
virtual

is a texture excluded by this strategy

virtual bool makVrv::DtIndirectLimitTextureStrategy::needsMaxTextureResolutionComputation ( void  ) const
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 DtIndirectTextureLimitAdjustedMipMap makVrv::DtIndirectLimitTextureStrategy::adjustStartMipMapLevel ( const osg::ref_ptr< osg::Image > &  osgImage,
const DtVector2< int > &  limit 
) const
protectedvirtual

Member Data Documentation

friend makVrv::DtIndirectLimitTextureStrategy::DtIndirectLimitTextureStrategyCreator

only creator can create

DtDe& makVrv::DtIndirectLimitTextureStrategy::myDe
protected
const DtVector2<int> makVrv::DtIndirectLimitTextureStrategy::myLimitTexturesResolution
protected
std::unordered_set<std::string> makVrv::DtIndirectLimitTextureStrategy::myExcludedTextureFiles
protected

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

Document ID: Generated on Thu Jun 1 17:58:13 EDT 2023 from SVN revision 255404
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)