Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Pages
platform
Debug
DebugRendering
Renderers
DebugLineRendererScreenSpace.h
1
// Copyright (c) 2014 eeGeo. All rights reserved.
2
3
#pragma once
4
5
#include "VectorMath.h"
6
#include "DynamicBuffer.h"
7
#include "Rendering.h"
8
#include "AllVertexTypes.h"
9
#include "Streaming.h"
10
#include "CameraFrustumStreamingVolume.h"
11
#include "DebugLineRenderable.h"
12
#include "IRenderableFilter.h"
13
14
namespace
Eegeo
15
{
16
namespace
DebugRendering
17
{
18
namespace
Renderers
19
{
20
class
DebugLineRendererScreenSpace
:
public
Rendering::IRenderableFilter
21
{
22
23
struct
DebugLineScreenSpace
24
{
25
v4
Color;
26
v2
P0;
27
v2
P1;
28
float
Lifetime;
29
};
30
31
public
:
32
DebugLineRendererScreenSpace
(
Rendering::Materials::IMaterial
* material,
33
const
Rendering::VertexLayouts::VertexBinding
& vertexBinding,
34
int
vertexBufferSize,
35
float
lineWidth);
36
37
~
DebugLineRendererScreenSpace
();
38
39
void
SetLineWidth(
float
lineWidth);
40
41
void
DrawLine(
42
const
v2
& screenPointA,
43
const
v2
& screenPointB,
44
const
v4
& color,
45
const
float
lifetime = 0.0f
46
);
47
48
void
Update(
float
dt);
49
void
GenerateGeometry();
50
51
void
EnqueueRenderables(
const
Rendering::RenderContext
& renderContext,
Rendering::RenderQueue
& renderQueue);
52
53
void
SetDepthEnabled(
const
bool
depthEnabled);
54
55
private
:
56
57
std::vector<DebugLineScreenSpace> m_drawData;
58
59
DebugLineRenderable
* m_pDebugLineRenderable;
60
};
61
}
62
}
63
}
64
65
Generated on Sat Jun 10 2023 02:00:30 for eeGeo Platform SDK by
1.8.3.1