CSEngine
Loading...
Searching...
No Matches
SEnvironmentMgr.h
1
//
2
// Created by ounols on 19. 5. 4.
3
//
4
#pragma once
5
6
#include "STexture.h"
7
8
namespace
CSE {
9
10
class
GLProgramHandle;
11
12
class
SEnvironmentMgr
{
13
public
:
14
SEnvironmentMgr
();
15
16
~SEnvironmentMgr
();
17
18
void
RenderPBREnvironment();
19
20
void
RenderBRDFLUT();
21
22
void
ReleaseRenderingResources();
23
24
int
BindPBREnvironmentMap(
const
GLProgramHandle
* handle,
int
textureLayout)
const
;
25
int
BindBRDFLUT(
const
GLProgramHandle
* handle,
int
textureLayout)
const
;
26
27
static
unsigned
int
GetWidth();
28
static
unsigned
int
* GetPointerWidth();
29
30
static
void
SetWidth(
unsigned
int
width);
31
32
static
unsigned
int
GetHeight();
33
static
unsigned
int
* GetPointerHeight();
34
35
static
void
SetHeight(
unsigned
int
height);
36
37
static
void
RenderPlaneVAO();
38
static
void
RenderCubeVAO();
39
40
static
void
ReleaseVAO();
41
42
private
:
43
void
LoadCubeVAO();
44
45
void
LoadPlaneVAO();
46
47
48
49
private
:
50
static
unsigned
int
m_width;
51
static
unsigned
int
m_height;
52
53
GLProgramHandle
* m_equirectangularToCubemapShader;
54
GLProgramHandle
* m_irradianceShader;
55
GLProgramHandle
* m_prefilterShader;
56
GLProgramHandle
* m_brdfShader;
57
58
STexture
* m_hdrTexture;
59
STexture
* m_envCubemap;
60
STexture
* m_irradianceMap;
61
STexture
* m_prefilterMap;
62
STexture
* m_brdfMap;
63
64
unsigned
int
m_cubeVBO;
65
static
unsigned
int
m_cubeVAO;
66
unsigned
int
m_planeVBO;
67
static
unsigned
int
m_planeVAO;
68
69
unsigned
int
m_captureFBO = 0;
70
unsigned
int
m_captureRBO = 0;
71
};
72
}
CSE::GLProgramHandle
Definition
GLProgramHandle.h:57
CSE::SEnvironmentMgr
Definition
SEnvironmentMgr.h:12
CSE::STexture
Definition
STexture.h:14
Util
Render
SEnvironmentMgr.h
Generated on Thu Sep 18 2025 14:35:37 for CSEngine by
1.12.0