All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
InteriorsMaterialFactoryProvider.h
1 #pragma once
2 
3 #include "Interiors.h"
4 #include "InteriorsMaterials.h"
5 #include "Rendering.h"
6 #include "Lighting.h"
7 #include "IInteriorsMaterialFactoryProvider.h"
8 #include "ITimeProvider.h"
9 
10 namespace Eegeo
11 {
12  namespace Resources
13  {
14  namespace Interiors
15  {
16  namespace Materials
17  {
19  {
20  public:
21 
23  Rendering::Shaders::ShaderIdGenerator& shaderIdGenerator,
24  Rendering::Materials::MaterialIdGenerator& materialIdGenerator,
25  const Lighting::GlobalLighting& globalLighting,
29  const Helpers::ITimeProvider& timeProvider);
30 
32 
33  Resources::Interiors::IInteriorsMaterialFactory& GetInteriorsAggregateMaterialFactory() const override;
34 
35  Resources::Interiors::InteriorsStencilMirrorMaskShader& GetInteriorsStencilMirrorMaskShader() override;
36 
37  private:
38 
39  Resources::Interiors::InteriorsShader* m_pInteriorsShader;
40  Resources::Interiors::InteriorsDiffuseTexturedShader* m_pInteriorsDiffuseTexturedShader;
41  Resources::Interiors::InteriorsDiffuseTexturedNoVCShader* m_pInteriorsDiffuseTexturedNoVCShader;
42  Resources::Interiors::InteriorsDiffuseSpecularShader* m_pInteriorsDiffuseSpecularShader;
43  Resources::Interiors::InteriorsDiffuseTranslucentShader* m_pInteriorsDiffuseTranslucentShader;
44  Resources::Interiors::InteriorsCubeMappedShader* m_pInteriorsCubeMappedShader;
45  Resources::Interiors::InteriorsCubeMappedAnimatedUVShader* m_pInteriorsCubeMappedAnimatedUVShader;
46  Resources::Interiors::InteriorsChromeShader* m_pInteriorsChromeShader;
47  Resources::Interiors::InteriorsStencilMirrorShader* m_pInteriorsStencilMirrorShader;
48  Resources::Interiors::InteriorsStencilMirrorMaskShader* m_pInteriorsStencilMirrorMaskShader;
49 
50  Resources::Interiors::IInteriorsMaterialFactory* m_pInteriorsMaterialFactory;
51  Resources::Interiors::IInteriorsMaterialFactory* m_pInteriorsDiffuseTexturedMaterialFactory;
52  Resources::Interiors::IInteriorsMaterialFactory* m_pInteriorsDiffuseTexturedNoVCMaterialFactory;
53  Resources::Interiors::IInteriorsMaterialFactory* m_pInteriorsDiffuseSpecularMaterialFactory;
54  Resources::Interiors::InteriorsDiffuseTranslucentMaterialFactory* m_pInteriorsDiffuseTranslucentMaterialFactory;
55  Resources::Interiors::IInteriorsMaterialFactory* m_pInteriorsCubeMappedMaterialFactory;
56  Resources::Interiors::IInteriorsMaterialFactory* m_pInteriorsCubeMappedAnimatedUVMaterialFactory;
57  Resources::Interiors::IInteriorsMaterialFactory* m_pInteriorsChromeMaterialFactory;
58  Resources::Interiors::IInteriorsMaterialFactory* m_pInteriorsReflectionMaterialFactory;
59  Resources::Interiors::IInteriorsMaterialFactory* m_pInteriorsStencilMirrorMaterialFactory;
60  Resources::Interiors::IInteriorsMaterialFactory* m_pInteriorsStencilMirrorMaskMaterialFactory;
61  Resources::Interiors::InteriorsDefaultMaterialFactory* m_pInteriorsDefaultMaterialFactory;
62  Resources::Interiors::IInteriorsMaterialFactory* m_pDynamicContentInteriorsMaterialFactory;
63  Resources::Interiors::IInteriorsMaterialPrioritizedFactory* m_pInteriorsAggregateMaterialFactory;
64 
65 
66  };
67  }
68  }
69  }
70 }
71 
72 
73