VR-Forces 4.8 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtIndirectDefaultTextureCollectionPolicy.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2019 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvOsg/vrvOsg.h>
13 
16 
17 namespace osg
18 {
19  class StateSet;
20  class ExtendedMaterial;
21 }
22 
23 namespace makVrv
24 {
25  class DtIndirectGeometryTextures;
26 
31  {
32  protected:
33  // ! constructor
37 
38  public:
41 
42  private:
47 
48  public:
51  virtual void collectTextures(DtIndirectGeometryTextures* textures, const osg::StateSet* stateSet, const std::string &modelName) const;
52 
56  virtual const std::string& glslTextureDeclarationHashDefine(const DtIndirectEffectTexturesTemplate& effectTexturesState) const;
57  virtual void printHashDefineDetails(const DtIndirectEffectTexturesTemplate& effectTexturesState) const;
59 
60  protected:
61 
63  virtual void collectTextures(DtIndirectGeometryTextures* textures, const osg::StateSet* stateSet,
64  const osg::ExtendedMaterial* extendedMaterial, const std::string &modelName) const;
65 
67  void compareAndInsertHashDefine(std::stringstream& ss, int type, int effectTextureIdx) const;
68 
69  protected:
70  static const std::vector<DtEffectTextureType> theTextureTypes;
71  };
72 
75  {
76  public:
79 
82 
84  virtual DtIndirectTextureCollectionPolicy* create(DtDe& de);
85  };
86 }
Contains makVrv::DtEffectTextureType declaration.
static const std::vector< DtEffectTextureType > theTextureTypes
Definition: DtIndirectDefaultTextureCollectionPolicy.h:70
#define DT_DLL_VRVOSG
Definition: vrvOsg.h:23
creator for DtIndirectDefaultTextureCollectionPolicy
Definition: DtIndirectDefaultTextureCollectionPolicy.h:74
Abstract class to look in the stateset and collect textures specified via its template The effect tex...
Definition: DtIndirectTextureCollectionPolicy.h:38
Abstract class for creation of a particular texture collection policy.
Definition: DtIndirectTextureCollectionPolicy.h:89
specialization of DtIndirectTextureCollectionPolicy to collect textures for indirect rendering used b...
Definition: DtIndirectDefaultTextureCollectionPolicy.h:30
class to hold osg Textures (diffuse map texture + effect textures) basically just a list of osg textu...
Definition: DtIndirectGeometryTextures.h:27
Contains the DtIndirectTextureCollectionPolicy class declaration.
Contains DLL export macros.
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
Class that allows you to abstractly register effect texture types the effect texture types are client...
Definition: DtIndirectEffectTexturesTemplate.h:38

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)