All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
UnityInteriorsMaterialProviderFactory.h
1 #pragma once
2 
3 #include "UnityCallbacks.h"
4 #include "IInteriorsMaterialProviderFactory.h"
5 #include "UnityAsyncTextureLoader.h"
6 
7 namespace Eegeo
8 {
9  namespace Unity
10  {
11  class UnityMaterialToTextureMap;
12 
14  {
15  public:
16 
18 
19  virtual Resources::Interiors::Materials::IInteriorsMaterialFactoryProvider* CreateInteriorsMaterialProvider(
20  Rendering::Shaders::ShaderIdGenerator& shaderIdGenerator,
21  Rendering::Materials::MaterialIdGenerator& materialIdGenerator,
22  const Lighting::GlobalLighting& globalLighting,
26  const Helpers::ITimeProvider& timeProvider) override;
27 
28  virtual Resources::Interiors::IInteriorsTextureResourceBuilder* CreateInteriorsTextureResourceBuilder(
31  Resources::CityThemes::ICityThemesService& cityThemesService) override;
32 
33  virtual Resources::Interiors::IInteriorsCubeTextureResourceBuilder* CreateInteriorsCubeTextureResourceBuilder(
36  Resources::CityThemes::ICityThemesService& cityThemesService) override;
37 
38  private:
39 
40  UnityAsyncTextureLoader& m_textureLoader;
41  const UnityCallbacks m_unityCallbacks;
42  };
43  }
44 }
45 
46