Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Pages
platform
Modules
CollisionVisualizationModule.h
1
// Copyright eeGeo Ltd (2012-2023), All Rights Reserved
2
3
#pragma once
4
5
#include "Types.h"
6
#include "Modules.h"
7
#include "Rendering.h"
8
#include "Collision.h"
9
#include "Camera.h"
10
11
#include "CollisionVisualization.h"
12
#include "MaterialSelectionControllerConfig.h"
13
#include "ICallback.h"
14
15
16
namespace
Eegeo
17
{
18
namespace
Modules
19
{
20
class
CollisionVisualizationModule
:
private
Eegeo::NonCopyable
21
{
22
public
:
23
static
CollisionVisualizationModule
* Create(
const
Core::RenderingModule
& renderingModule,
24
Rendering::EnvironmentFlatteningService
& environmentFlatteningService,
25
Eegeo::Collision::AggregateCollisionBvhProvider
& aggregateCollisionBvhProvider,
26
const
Map::Layers::BuildingModelModule
& buildingModelModule,
27
const
Eegeo::CollisionVisualization::MaterialSelectionControllerConfig
& materialSelectionControllerConfig);
28
29
static
Eegeo::CollisionVisualization::MaterialSelectionControllerConfig
MakeDefaultConfig();
30
31
~
CollisionVisualizationModule
();
32
33
CollisionVisualization::CollisionVisualizationRenderableFactory
& GetRenderableFactory()
const
;
34
35
CollisionVisualization::CollisionVisualizationRenderer
& GetRenderer()
const
;
36
37
CollisionVisualization::MaterialSelectionController
& GetMaterialSelectionController()
const
;
38
39
CollisionVisualization::CollisionVisualizationMaterial
& GetCollisionVisualizationMaterial()
const
;
40
41
void
Update(
float
frameDeltaTimeSeconds);
42
void
Draw(
const
Eegeo::Camera::RenderCamera
& renderCamera);
43
44
private
:
45
CollisionVisualizationModule
(
const
Core::RenderingModule
& renderingModule,
46
Rendering::EnvironmentFlatteningService
& environmentFlatteningService,
47
Eegeo::Collision::AggregateCollisionBvhProvider
& aggregateCollisionBvhProvider,
48
const
Map::Layers::BuildingModelModule
& buildingModelModule,
49
const
CollisionVisualization::MaterialSelectionControllerConfig
& materialSelectionControllerConfig);
50
51
CollisionVisualization::CollisionVisualizationRenderableFactory
* m_pCollisionVisualizationRenderableFactory;
52
CollisionVisualization::CollisionVisualizationRenderer
* m_pCollisionVisualizationRenderer;
53
CollisionVisualization::CollisionVisualizationMaterial
* m_pCollisionVisualizationMaterial;
54
Rendering::Shaders::ClippedUniformColoredShader
* m_pCollisionVisualizationShader;
55
56
CollisionVisualization::MaterialSelectionRenderableFactory
* m_pMaterialSelectionRenderableFactory;
57
CollisionVisualization::MaterialSelectionModel
* m_pMaterialSelectionModel;
58
CollisionVisualization::MaterialSelectionController
* m_pMaterialSelectionController;
59
CollisionVisualization::CollisionStreamingObserver
* m_pCollisionStreamingObserver;
60
};
61
}
62
}
Generated on Sat Jun 10 2023 02:00:31 for eeGeo Platform SDK by
1.8.3.1