Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Pages
platform
Rendering
Materials
PackedDiffuseTransitionMaterial.h
1
// Copyright eeGeo Ltd (2012-2014), All Rights Reserved
2
3
#pragma once
4
5
#include "Types.h"
6
#include "PackedTransitionMaterial.h"
7
#include "IdTypes.h"
8
#include "Lighting.h"
9
#include "Rendering.h"
10
#include "PackedDiffuseTransitionShader.h"
11
#include "VectorMathDecl.h"
12
#include "TextureMinifyType.h"
13
#include <string>
14
15
16
namespace
Eegeo
17
{
18
namespace
Rendering
19
{
20
namespace
Materials
21
{
22
class
PackedDiffuseTransitionMaterial
:
public
PackedTransitionMaterial
23
{
24
public
:
25
PackedDiffuseTransitionMaterial
(
26
const
TMaterialId materialId,
27
const
std::string& name,
28
Shaders::PackedDiffuseTransitionShader
& shader,
29
const
Lighting::GlobalLighting
& lighting,
30
const
Lighting::GlobalFogging
& fogging,
31
AsyncTexturing::IAsyncTexture
& fromTextureId,
32
AsyncTexturing::IAsyncTexture
& toTextureId,
33
Rendering::TextureMinifyType textureMinifyType,
34
bool
useAlternativeAmbient,
35
bool
textureRepeat
36
);
37
38
~
PackedDiffuseTransitionMaterial
()
39
{
40
}
41
42
void
SetState(
Rendering::GLState
& glState)
const
;
43
void
SetStatePerRenderable(
const
Rendering::RenderableBase
* renderableBase,
Rendering::GLState
& glState)
const
;
44
45
void
SetFromDiffuseTexture(
AsyncTexturing::IAsyncTexture
& textureId) { m_fromTextureId = &textureId; }
46
AsyncTexturing::IAsyncTexture
& GetFromTextureId()
const
{
return
*m_fromTextureId; }
47
48
void
SetToDiffuseTexture(
AsyncTexturing::IAsyncTexture
& textureId) { m_toTextureId = &textureId; }
49
AsyncTexturing::IAsyncTexture
& GetToTextureId()
const
{
return
*m_toTextureId; }
50
51
private
:
52
Rendering::AsyncTexturing::IAsyncTexture
* m_fromTextureId;
53
Rendering::AsyncTexturing::IAsyncTexture
* m_toTextureId;
54
};
55
}
56
}
57
}
58
Generated on Sat Jun 10 2023 02:00:32 for eeGeo Platform SDK by
1.8.3.1