Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Pages
platform
Resources
Interiors
InteriorsDiffuseSpecularMaterialFactory.h
1
// Copyright eeGeo Ltd (2012-2014), All Rights Reserved
2
3
#pragma once
4
5
#include "Interiors.h"
6
#include "IInteriorsMaterialFactory.h"
7
#include "Types.h"
8
#include "IdTypes.h"
9
#include "Lighting.h"
10
11
#include <string>
12
13
namespace
Eegeo
14
{
15
namespace
Resources
16
{
17
namespace
Interiors
18
{
19
class
InteriorsDiffuseSpecularMaterialFactory
:
public
IInteriorsMaterialFactory
,
private
Eegeo::NonCopyable
20
{
21
public
:
22
23
24
InteriorsDiffuseSpecularMaterialFactory
(
Rendering::Materials::MaterialIdGenerator
& materialIdGenerator,
25
const
InteriorsDiffuseSpecularShader
& interiorsDiffuseSpecularShader,
26
const
Lighting::GlobalLighting
& globalLighting,
27
IInteriorsMaterialAssignmentObserver
& materialAssignmentObserver,
28
IInteriorsTextureResourceProvider
& interiorsTextureResourceProvider);
29
30
Eegeo::Rendering::Materials::IMaterial
* TryCreate(
const
std::string& interiorName,
31
const
InteriorMaterialData
& interiorMaterialData);
32
33
34
private
:
35
Rendering::Materials::MaterialIdGenerator
& m_materialIdGenerator;
36
const
InteriorsDiffuseSpecularShader
& m_interiorsDiffuseSpecularShader;
37
const
Lighting::GlobalLighting
& m_globalLighting;
38
IInteriorsMaterialAssignmentObserver
& m_materialAssignmentObserver;
39
IInteriorsTextureResourceProvider
& m_interiorsTextureResourceProvider;
40
};
41
}
42
}
43
}
Generated on Sat Jun 10 2023 02:00:33 for eeGeo Platform SDK by
1.8.3.1