Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Pages
platform
Modules
Map
Layers
ShadowPresentationModule.h
1
// Copyright eeGeo Ltd (2012-2014), All Rights Reserved
2
3
#pragma once
4
5
#include "Types.h"
6
#include "Modules.h"
7
#include "Rendering.h"
8
#include "Lighting.h"
9
#include "Streaming.h"
10
#include "Culling.h"
11
12
namespace
Eegeo
13
{
14
namespace
Modules
15
{
16
namespace
Map
17
{
18
namespace
Layers
19
{
20
class
ShadowPresentationModule
:
protected
Eegeo::NonCopyable
21
{
22
public
:
23
24
ShadowPresentationModule
(
Rendering::Shaders::ShaderIdGenerator
& shaderIdGenerator,
25
Rendering::Materials::MaterialIdGenerator
& materialIdGenerator,
26
Rendering::GlBufferPool
& glBufferPool,
27
Rendering::VertexLayouts::VertexLayoutPool
& vertexLayoutPool,
28
Rendering::VertexLayouts::VertexBindingPool
& vertexBindingPool,
29
Rendering::Filters::RenderableRepository
& renderableRepository,
30
Rendering::Shaders::ColorShader
& colorShader,
31
Lighting::GlobalShadowing
& globalShadowing,
32
Rendering::Scene::SceneElementRepository<Rendering::Renderables::PackedRenderable>
& shadowSceneElementRepository,
33
const
Rendering::EnvironmentFlatteningService
& environmentFlatteningService,
34
Culling::CullingVolumeVisibilityUpdater
& cullingVolumeVisibilityUpdater);
35
36
~
ShadowPresentationModule
();
37
38
static
ShadowPresentationModule
* Create(
Core::RenderingModule
& renderingModule,
39
Core::LightingModule
& lightingModule,
40
ShadowModelModule
& shadowModelModule,
41
const
Rendering::EnvironmentFlatteningService
& environmentFlatteningService,
42
Culling::CullingVolumeVisibilityUpdater
& cullingVolumeVisibilityUpdater);
43
44
Rendering::Filters::PackedRenderableFilter
& GetShadowRenderableFilter()
const
;
45
Rendering::Materials::ShadowMaterial
& GetShadowOverlayMaterial()
const
;
46
Rendering::Renderables::WorldMeshRenderable
& GetShadowOverlayRenderable()
const
;
47
private
:
48
Rendering::Filters::ShadowPackedRenderableFilter
* m_pShadowPackedRenderableFilter;
49
Rendering::Materials::ShadowMaterial
* m_pShadowOverlayMaterial;
50
Rendering::Renderables::WorldMeshRenderable
* m_pShadowOverlayRenderable;
51
};
52
}
53
}
54
}
55
}
Generated on Sat Jun 10 2023 02:00:31 for eeGeo Platform SDK by
1.8.3.1