CSEngine
Loading...
Searching...
No Matches
DeferredRenderGroup.h
1
#pragma once
2
3
#include <unordered_map>
4
#include "../../Util/Render/SRenderGroup.h"
5
6
namespace
CSE {
7
8
class
SGBuffer;
9
class
LightMgr;
10
class
SShaderGroup;
11
15
class
DeferredRenderGroup
:
public
SRenderGroup
{
16
private
:
17
typedef
std::unordered_map<SShaderGroup*, SGBuffer*> GBufferLayer;
18
19
public
:
24
explicit
DeferredRenderGroup
(
const
RenderMgr
& renderMgr);
25
26
~DeferredRenderGroup
()
override
;
27
32
void
RegisterObject
(
SIRender
*
object
)
override
;
33
38
void
RemoveObjects
(
SIRender
*
object
)
override
;
39
44
void
RenderAll
(
const
CameraBase
& camera)
const override
;
45
51
void
RenderGbuffer
(
const
CameraBase
& camera,
const
SGBuffer
& gbuffer,
const
SShaderGroup
& shaders)
const
;
52
56
void
SetViewport
();
57
61
void
Exterminate
()
override
;
62
63
private
:
64
GBufferLayer m_gbufferLayer;
65
66
unsigned
int
* m_width =
nullptr
;
67
unsigned
int
* m_height =
nullptr
;
68
69
LightMgr
* m_lightMgr =
nullptr
;
70
};
71
}
CSE::CameraBase
Definition
CameraBase.h:8
CSE::DeferredRenderGroup
Definition
DeferredRenderGroup.h:15
CSE::DeferredRenderGroup::RenderGbuffer
void RenderGbuffer(const CameraBase &camera, const SGBuffer &gbuffer, const SShaderGroup &shaders) const
Definition
DeferredRenderGroup.cpp:60
CSE::DeferredRenderGroup::Exterminate
void Exterminate() override
Definition
DeferredRenderGroup.cpp:136
CSE::DeferredRenderGroup::RegisterObject
void RegisterObject(SIRender *object) override
Definition
DeferredRenderGroup.cpp:24
CSE::DeferredRenderGroup::SetViewport
void SetViewport()
Definition
DeferredRenderGroup.cpp:129
CSE::DeferredRenderGroup::RemoveObjects
void RemoveObjects(SIRender *object) override
Definition
DeferredRenderGroup.cpp:40
CSE::DeferredRenderGroup::RenderAll
void RenderAll(const CameraBase &camera) const override
Definition
DeferredRenderGroup.cpp:51
CSE::LightMgr
Definition
LightMgr.h:17
CSE::RenderMgr
Class for managing rendering operations.
Definition
RenderMgr.h:21
CSE::SGBuffer
Definition
SGBuffer.h:12
CSE::SIRender
Definition
RenderInterfaces.h:39
CSE::SRenderGroup
Definition
SRenderGroup.h:7
CSE::SShaderGroup
Definition
SShaderGroup.h:10
Manager
Render
DeferredRenderGroup.h
Generated on Fri Nov 22 2024 01:09:31 for CSEngine by
1.9.8