Skip to content

Commit 59773a9

Browse files
authored
Merge pull request #37 from cortex-command-community/gl-updates
GL updates
2 parents 5353f45 + 6024e4b commit 59773a9

File tree

5 files changed

+104
-104
lines changed

5 files changed

+104
-104
lines changed

Data/Base.rte/Shaders/Blit8.frag

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@ in vec2 textureUV;
66
out vec4 FragColor;
77

88
uniform sampler2D rteTexture;
9-
uniform sampler1D rtePalette;
9+
uniform sampler2D rtePalette;
1010

1111
void main() {
1212
float colorIndex = texture(rteTexture, vec2(textureUV.x, -textureUV.y)).r;
13-
FragColor = texture(rtePalette, colorIndex);
13+
FragColor = texture(rtePalette, vec2(colorIndex, 0.0F));
1414
}

Data/Base.rte/Shaders/ScreenBlit.frag

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,5 +20,5 @@ void main() {
2020
vec4 guiColor = texture2DAA(rteGUITexture, textureUV);
2121
float guiSolid = step(0.00000001, guiColor.r + guiColor.g + guiColor.b);
2222
float blendRatio = max(guiColor.a, guiSolid);
23-
FragColor = (texture2DAA(rteTexture, textureUV) * (1 - blendRatio)) + guiColor * blendRatio;
23+
FragColor = (texture2DAA(rteTexture, textureUV) * (1.0F - blendRatio)) + guiColor * blendRatio;
2424
}

Source/Managers/FrameMan.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -587,8 +587,8 @@ void FrameMan::SaveScreenToBitmap() {
587587
return;
588588
}
589589

590-
glBindTexture(GL_TEXTURE_2D, g_WindowMan.GetScreenBufferTexture());
591-
glGetTexImage(GL_TEXTURE_2D, 0, GL_RGB, GL_UNSIGNED_BYTE, m_ScreenDumpBuffer->line[0]);
590+
GL_CHECK(glBindTexture(GL_TEXTURE_2D, g_WindowMan.GetScreenBufferTexture()));
591+
GL_CHECK(glGetTexImage(GL_TEXTURE_2D, 0, GL_RGB, GL_UNSIGNED_BYTE, m_ScreenDumpBuffer->line[0]));
592592
}
593593

594594
int FrameMan::SaveIndexedPNG(const char* fileName, BITMAP* bitmapToSave) const {

Source/Managers/PostProcessMan.cpp

Lines changed: 60 additions & 60 deletions
Original file line numberDiff line numberDiff line change
@@ -77,60 +77,60 @@ int PostProcessMan::Initialize() {
7777
}
7878

7979
void PostProcessMan::InitializeGLPointers() {
80-
glGenTextures(1, &m_BackBuffer8);
81-
glGenTextures(1, &m_BackBuffer32);
82-
glGenTextures(1, &m_Palette8Texture);
83-
glGenFramebuffers(1, &m_BlitFramebuffer);
84-
glGenFramebuffers(1, &m_PostProcessFramebuffer);
85-
glGenTextures(1, &m_PostProcessDepthBuffer);
86-
glGenVertexArrays(1, &m_VertexArray);
87-
glGenBuffers(1, &m_VertexBuffer);
88-
89-
glBindVertexArray(m_VertexArray);
90-
glBindBuffer(GL_ARRAY_BUFFER, m_VertexBuffer);
91-
glBufferData(GL_ARRAY_BUFFER, sizeof(c_Quad), c_Quad.data(), GL_STATIC_DRAW);
92-
glVertexAttribPointer(0, 2, GL_FLOAT, GL_FALSE, 4 * sizeof(float), nullptr);
93-
glEnableVertexAttribArray(0);
94-
glVertexAttribPointer(1, 2, GL_FLOAT, GL_FALSE, 4 * sizeof(float), (void*)(2 * sizeof(float)));
95-
glEnableVertexAttribArray(1);
96-
glBindVertexArray(0);
80+
GL_CHECK(glGenTextures(1, &m_BackBuffer8));
81+
GL_CHECK(glGenTextures(1, &m_BackBuffer32));
82+
GL_CHECK(glGenTextures(1, &m_Palette8Texture));
83+
GL_CHECK(glGenFramebuffers(1, &m_BlitFramebuffer));
84+
GL_CHECK(glGenFramebuffers(1, &m_PostProcessFramebuffer));
85+
GL_CHECK(glGenTextures(1, &m_PostProcessDepthBuffer));
86+
GL_CHECK(glGenVertexArrays(1, &m_VertexArray));
87+
GL_CHECK(glGenBuffers(1, &m_VertexBuffer));
88+
89+
GL_CHECK(glBindVertexArray(m_VertexArray));
90+
GL_CHECK(glBindBuffer(GL_ARRAY_BUFFER, m_VertexBuffer));
91+
GL_CHECK(glBufferData(GL_ARRAY_BUFFER, sizeof(c_Quad), c_Quad.data(), GL_STATIC_DRAW));
92+
GL_CHECK(glVertexAttribPointer(0, 2, GL_FLOAT, GL_FALSE, 4 * sizeof(float), nullptr));
93+
GL_CHECK(glEnableVertexAttribArray(0));
94+
GL_CHECK(glVertexAttribPointer(1, 2, GL_FLOAT, GL_FALSE, 4 * sizeof(float), (void*)(2 * sizeof(float))));
95+
GL_CHECK(glEnableVertexAttribArray(1));
96+
GL_CHECK(glBindVertexArray(0));
9797
}
9898

9999
void PostProcessMan::DestroyGLPointers() {
100-
glDeleteTextures(1, &m_BackBuffer8);
101-
glDeleteTextures(1, &m_BackBuffer32);
102-
glDeleteTextures(1, &m_Palette8Texture);
103-
glDeleteFramebuffers(1, &m_BlitFramebuffer);
100+
GL_CHECK(glDeleteTextures(1, &m_BackBuffer8));
101+
GL_CHECK(glDeleteTextures(1, &m_BackBuffer32));
102+
GL_CHECK(glDeleteTextures(1, &m_Palette8Texture));
103+
GL_CHECK(glDeleteFramebuffers(1, &m_BlitFramebuffer));
104104
for (auto& bitmapTexture: m_BitmapTextures) {
105-
glDeleteTextures(1, &bitmapTexture->m_Texture);
105+
GL_CHECK(glDeleteTextures(1, &bitmapTexture->m_Texture));
106106
}
107-
glDeleteFramebuffers(1, &m_PostProcessFramebuffer);
108-
glDeleteTextures(1, &m_PostProcessDepthBuffer);
109-
glDeleteVertexArrays(1, &m_VertexArray);
110-
glDeleteBuffers(1, &m_VertexBuffer);
107+
GL_CHECK(glDeleteFramebuffers(1, &m_PostProcessFramebuffer));
108+
GL_CHECK(glDeleteTextures(1, &m_PostProcessDepthBuffer));
109+
GL_CHECK(glDeleteVertexArrays(1, &m_VertexArray));
110+
GL_CHECK(glDeleteBuffers(1, &m_VertexBuffer));
111111
}
112112

113113
void PostProcessMan::CreateGLBackBuffers() {
114-
glBindTexture(GL_TEXTURE_2D, m_BackBuffer8);
115-
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, g_FrameMan.GetBackBuffer8()->w, g_FrameMan.GetBackBuffer8()->h, 0, GL_RED, GL_UNSIGNED_BYTE, 0);
116-
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
117-
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
118-
glBindTexture(GL_TEXTURE_2D, m_BackBuffer32);
119-
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, g_FrameMan.GetBackBuffer8()->w, g_FrameMan.GetBackBuffer8()->h, 0, GL_RED, GL_UNSIGNED_BYTE, 0);
120-
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
121-
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
122-
glBindTexture(GL_TEXTURE_2D, 0);
123-
glBindTexture(GL_TEXTURE_1D, m_Palette8Texture);
124-
glTexImage1D(GL_TEXTURE_1D, 0, GL_RGBA, c_PaletteEntriesNumber, 0, GL_RGBA, GL_UNSIGNED_INT, 0);
125-
glTexParameteri(GL_TEXTURE_1D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
126-
glTexParameteri(GL_TEXTURE_1D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
114+
GL_CHECK(glBindTexture(GL_TEXTURE_2D, m_BackBuffer8));
115+
GL_CHECK(glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, g_FrameMan.GetBackBuffer8()->w, g_FrameMan.GetBackBuffer8()->h, 0, GL_RGBA, GL_UNSIGNED_BYTE, 0));
116+
GL_CHECK(glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR));
117+
GL_CHECK(glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR));
118+
GL_CHECK(glBindTexture(GL_TEXTURE_2D, m_BackBuffer32));
119+
GL_CHECK(glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, g_FrameMan.GetBackBuffer8()->w, g_FrameMan.GetBackBuffer8()->h, 0, GL_RGBA, GL_UNSIGNED_BYTE, 0));
120+
GL_CHECK(glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR));
121+
GL_CHECK(glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR));
122+
GL_CHECK(glBindTexture(GL_TEXTURE_2D, 0));
123+
GL_CHECK(glBindTexture(GL_TEXTURE_2D, m_Palette8Texture));
124+
GL_CHECK(glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, c_PaletteEntriesNumber, 1, 0, GL_RGBA, GL_UNSIGNED_BYTE, 0));
125+
GL_CHECK(glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST));
126+
GL_CHECK(glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST));
127127
UpdatePalette();
128-
glActiveTexture(GL_TEXTURE0);
128+
GL_CHECK(glActiveTexture(GL_TEXTURE0));
129129
m_ProjectionMatrix = std::make_unique<glm::mat4>(glm::ortho(0.0F, static_cast<float>(g_FrameMan.GetBackBuffer8()->w), 0.0F, static_cast<float>(g_FrameMan.GetBackBuffer8()->h), -1.0F, 1.0F));
130130
}
131131

132132
void PostProcessMan::UpdatePalette() {
133-
glBindTexture(GL_TEXTURE_1D, m_Palette8Texture);
133+
GL_CHECK(glBindTexture(GL_TEXTURE_2D, m_Palette8Texture));
134134
std::array<unsigned int, c_PaletteEntriesNumber> palette;
135135
for (int i = 0; i < c_PaletteEntriesNumber; ++i) {
136136
if (i == g_MaskColor) {
@@ -139,22 +139,22 @@ void PostProcessMan::UpdatePalette() {
139139
}
140140
palette[i] = makeacol32(getr8(i), getg8(i), getb8(i), 255);
141141
}
142-
glTexSubImage1D(GL_TEXTURE_1D, 0, 0, c_PaletteEntriesNumber, GL_RGBA, GL_UNSIGNED_BYTE, palette.data());
143-
glTexParameteri(GL_TEXTURE_1D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
144-
glTexParameteri(GL_TEXTURE_1D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
142+
GL_CHECK(glTexSubImage2D(GL_TEXTURE_2D, 0, 0, 0, c_PaletteEntriesNumber, 1, GL_RGBA, GL_UNSIGNED_BYTE, palette.data()));
143+
GL_CHECK(glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST));
144+
GL_CHECK(glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST));
145145
}
146146

147147
void PostProcessMan::LazyInitBitmap(BITMAP* bitmap) {
148148
m_BitmapTextures.emplace_back(new GLBitmapInfo);
149-
glGenTextures(1, &m_BitmapTextures.back()->m_Texture);
149+
GL_CHECK(glGenTextures(1, &m_BitmapTextures.back()->m_Texture));
150150
bitmap->extra = reinterpret_cast<void*>(m_BitmapTextures.back().get());
151-
glPixelStorei(GL_UNPACK_ALIGNMENT, bitmap_color_depth(bitmap) == 8 ? 1 : 4);
152-
glActiveTexture(GL_TEXTURE0);
153-
glBindTexture(GL_TEXTURE_2D, reinterpret_cast<GLBitmapInfo*>(bitmap->extra)->m_Texture);
154-
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, bitmap->w, bitmap->h, 0, GL_RGBA, GL_UNSIGNED_BYTE, bitmap->line[0]);
155-
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_LINEAR);
156-
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
157-
glGenerateMipmap(GL_TEXTURE_2D);
151+
GL_CHECK(glPixelStorei(GL_UNPACK_ALIGNMENT, bitmap_color_depth(bitmap) == 8 ? 1 : 4));
152+
GL_CHECK(glActiveTexture(GL_TEXTURE0));
153+
GL_CHECK(glBindTexture(GL_TEXTURE_2D, reinterpret_cast<GLBitmapInfo*>(bitmap->extra)->m_Texture));
154+
GL_CHECK(glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, bitmap->w, bitmap->h, 0, GL_RGBA, GL_UNSIGNED_BYTE, bitmap->line[0]));
155+
GL_CHECK(glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_LINEAR));
156+
GL_CHECK(glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR));
157+
GL_CHECK(glGenerateMipmap(GL_TEXTURE_2D));
158158
}
159159

160160
void PostProcessMan::Destroy() {
@@ -380,12 +380,12 @@ void PostProcessMan::PostProcess() {
380380
GL_CHECK(glActiveTexture(GL_TEXTURE0));
381381
GL_CHECK(glBindTexture(GL_TEXTURE_2D, m_BackBuffer8));
382382
GL_CHECK(glPixelStorei(GL_UNPACK_ALIGNMENT, 1));
383-
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, g_FrameMan.GetBackBuffer8()->w, g_FrameMan.GetBackBuffer8()->h, 0, GL_RED, GL_UNSIGNED_BYTE, g_FrameMan.GetBackBuffer8()->line[0]);
383+
GL_CHECK(glTexImage2D(GL_TEXTURE_2D, 0, GL_R8, g_FrameMan.GetBackBuffer8()->w, g_FrameMan.GetBackBuffer8()->h, 0, GL_RED, GL_UNSIGNED_BYTE, g_FrameMan.GetBackBuffer8()->line[0]));
384384
GL_CHECK(glActiveTexture(GL_TEXTURE1));
385-
GL_CHECK(glBindTexture(GL_TEXTURE_1D, m_Palette8Texture));
385+
GL_CHECK(glBindTexture(GL_TEXTURE_2D, m_Palette8Texture));
386386
GL_CHECK(glBindFramebuffer(GL_DRAW_FRAMEBUFFER, m_BlitFramebuffer));
387387
GL_CHECK(glFramebufferTexture2D(GL_DRAW_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, m_BackBuffer32, 0));
388-
glViewport(0, 0, g_FrameMan.GetBackBuffer8()->w, g_FrameMan.GetBackBuffer8()->h);
388+
GL_CHECK(glViewport(0, 0, g_FrameMan.GetBackBuffer8()->w, g_FrameMan.GetBackBuffer8()->h));
389389
m_Blit8->Use();
390390
m_Blit8->SetInt(m_Blit8->GetTextureUniform(), 0);
391391
int paletteUniform = m_Blit8->GetUniformLocation("rtePalette");
@@ -404,7 +404,7 @@ void PostProcessMan::PostProcess() {
404404
GL_CHECK(glBlendColor(0.5F, 0.5F, 0.5F, 0.5F));
405405
GL_CHECK(glBindFramebuffer(GL_FRAMEBUFFER, m_PostProcessFramebuffer));
406406
GL_CHECK(glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, m_BackBuffer32, 0));
407-
glViewport(0, 0, g_FrameMan.GetBackBuffer8()->w, g_FrameMan.GetBackBuffer8()->h);
407+
GL_CHECK(glViewport(0, 0, g_FrameMan.GetBackBuffer8()->w, g_FrameMan.GetBackBuffer8()->h));
408408

409409
m_PostProcessShader->Use();
410410

@@ -483,8 +483,8 @@ void PostProcessMan::DrawPostScreenEffects() {
483483
float effectPosY = 0;
484484
float effectStrength = 0;
485485

486-
glActiveTexture(GL_TEXTURE0);
487-
glBindVertexArray(m_VertexArray);
486+
GL_CHECK(glActiveTexture(GL_TEXTURE0));
487+
GL_CHECK(glBindVertexArray(m_VertexArray));
488488
m_PostProcessShader->Use();
489489
m_PostProcessShader->SetInt(m_PostProcessShader->GetTextureUniform(), 0);
490490
m_PostProcessShader->SetMatrix4f(m_PostProcessShader->GetProjectionUniform(), *m_ProjectionMatrix);
@@ -505,10 +505,10 @@ void PostProcessMan::DrawPostScreenEffects() {
505505
transformMatrix = glm::rotate(transformMatrix, -postEffect.m_Angle, glm::vec3(0, 0, 1));
506506
transformMatrix = glm::scale(transformMatrix, glm::vec3(effectBitmap->w * 0.5f, effectBitmap->h * 0.5f, 1.0));
507507

508-
glBindTexture(GL_TEXTURE_2D, reinterpret_cast<GLBitmapInfo*>(postEffect.m_Bitmap->extra)->m_Texture);
508+
GL_CHECK(glBindTexture(GL_TEXTURE_2D, reinterpret_cast<GLBitmapInfo*>(postEffect.m_Bitmap->extra)->m_Texture));
509509
m_PostProcessShader->SetMatrix4f(m_PostProcessShader->GetTransformUniform(), transformMatrix);
510510

511-
glDrawArrays(GL_TRIANGLE_STRIP, 0, 4);
511+
GL_CHECK(glDrawArrays(GL_TRIANGLE_STRIP, 0, 4));
512512
}
513513
}
514514
}

Source/Managers/WindowMan.cpp

Lines changed: 39 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -77,11 +77,11 @@ WindowMan::WindowMan() {
7777
WindowMan::~WindowMan() = default;
7878

7979
void WindowMan::Destroy() {
80-
glDeleteTextures(1, &m_BackBuffer32Texture);
81-
glDeleteBuffers(1, &m_ScreenVBO);
82-
glDeleteVertexArrays(1, &m_ScreenVAO);
83-
glDeleteTextures(1, &m_ScreenBufferTexture);
84-
glDeleteFramebuffers(1, &m_ScreenBufferFBO);
80+
GL_CHECK(glDeleteTextures(1, &m_BackBuffer32Texture));
81+
GL_CHECK(glDeleteBuffers(1, &m_ScreenVBO));
82+
GL_CHECK(glDeleteVertexArrays(1, &m_ScreenVAO));
83+
GL_CHECK(glDeleteTextures(1, &m_ScreenBufferTexture));
84+
GL_CHECK(glDeleteFramebuffers(1, &m_ScreenBufferFBO));
8585
}
8686

8787
void WindowMan::Initialize() {
@@ -191,33 +191,33 @@ void WindowMan::InitializeOpenGL() {
191191
#else
192192
SDL_GL_SetSwapInterval(m_Fullscreen && m_EnableVSync ? 1 : 0);
193193
#endif
194-
glEnable(GL_BLEND);
195-
glEnable(GL_DEPTH_TEST);
196-
glGenBuffers(1, &m_ScreenVBO);
197-
glGenVertexArrays(1, &m_ScreenVAO);
198-
glBindVertexArray(m_ScreenVAO);
199-
glBindBuffer(GL_ARRAY_BUFFER, m_ScreenVBO);
200-
glBufferData(GL_ARRAY_BUFFER, sizeof(c_Quad), c_Quad.data(), GL_STATIC_DRAW);
201-
glVertexAttribPointer(0, 2, GL_FLOAT, GL_FALSE, 4 * sizeof(float), nullptr);
202-
glEnableVertexAttribArray(0);
203-
glVertexAttribPointer(1, 2, GL_FLOAT, GL_FALSE, 4 * sizeof(float), (void*)(2 * sizeof(float)));
204-
glEnableVertexAttribArray(1);
205-
glBindVertexArray(0);
206-
glGenTextures(1, &m_BackBuffer32Texture);
207-
glGenTextures(1, &m_ScreenBufferTexture);
208-
glGenFramebuffers(1, &m_ScreenBufferFBO);
194+
GL_CHECK(glEnable(GL_BLEND));
195+
GL_CHECK(glEnable(GL_DEPTH_TEST));
196+
GL_CHECK(glGenBuffers(1, &m_ScreenVBO));
197+
GL_CHECK(glGenVertexArrays(1, &m_ScreenVAO));
198+
GL_CHECK(glBindVertexArray(m_ScreenVAO));
199+
GL_CHECK(glBindBuffer(GL_ARRAY_BUFFER, m_ScreenVBO));
200+
GL_CHECK(glBufferData(GL_ARRAY_BUFFER, sizeof(c_Quad), c_Quad.data(), GL_STATIC_DRAW));
201+
GL_CHECK(glVertexAttribPointer(0, 2, GL_FLOAT, GL_FALSE, 4 * sizeof(float), nullptr));
202+
GL_CHECK(glEnableVertexAttribArray(0));
203+
GL_CHECK(glVertexAttribPointer(1, 2, GL_FLOAT, GL_FALSE, 4 * sizeof(float), (void*)(2 * sizeof(float))));
204+
GL_CHECK(glEnableVertexAttribArray(1));
205+
GL_CHECK(glBindVertexArray(0));
206+
GL_CHECK(glGenTextures(1, &m_BackBuffer32Texture));
207+
GL_CHECK(glGenTextures(1, &m_ScreenBufferTexture));
208+
GL_CHECK(glGenFramebuffers(1, &m_ScreenBufferFBO));
209209
TracyGpuContext;
210210
}
211211

212212
void WindowMan::CreateBackBufferTexture() {
213-
glBindTexture(GL_TEXTURE_2D, m_BackBuffer32Texture);
214-
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, m_ResX, m_ResY, 0, GL_RGBA, GL_UNSIGNED_BYTE, nullptr);
215-
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
216-
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
217-
glBindTexture(GL_TEXTURE_2D, m_ScreenBufferTexture);
218-
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, m_ResX, m_ResY, 0, GL_RGBA, GL_UNSIGNED_BYTE, nullptr);
219-
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
220-
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
213+
GL_CHECK(glBindTexture(GL_TEXTURE_2D, m_BackBuffer32Texture));
214+
GL_CHECK(glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, m_ResX, m_ResY, 0, GL_RGBA, GL_UNSIGNED_BYTE, nullptr));
215+
GL_CHECK(glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR));
216+
GL_CHECK(glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR));
217+
GL_CHECK(glBindTexture(GL_TEXTURE_2D, m_ScreenBufferTexture));
218+
GL_CHECK(glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, m_ResX, m_ResY, 0, GL_RGBA, GL_UNSIGNED_BYTE, nullptr));
219+
GL_CHECK(glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR));
220+
GL_CHECK(glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR));
221221
}
222222

223223
int WindowMan::GetWindowResX() {
@@ -684,28 +684,28 @@ void WindowMan::Update() {
684684
}
685685

686686
void WindowMan::ClearRenderer() {
687-
glBindFramebuffer(GL_FRAMEBUFFER, 0);
688-
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
687+
GL_CHECK(glBindFramebuffer(GL_FRAMEBUFFER, 0));
688+
GL_CHECK(glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT));
689689
g_FrameMan.ClearBackBuffer32();
690-
glActiveTexture(GL_TEXTURE0);
691-
glBindTexture(GL_TEXTURE_2D, 0);
692-
glActiveTexture(GL_TEXTURE1);
693-
glBindTexture(GL_TEXTURE_2D, 0);
690+
GL_CHECK(glActiveTexture(GL_TEXTURE0));
691+
GL_CHECK(glBindTexture(GL_TEXTURE_2D, 0));
692+
GL_CHECK(glActiveTexture(GL_TEXTURE1));
693+
GL_CHECK(glBindTexture(GL_TEXTURE_2D, 0));
694694
m_DrawPostProcessBuffer = false;
695695
}
696696

697697
void WindowMan::UploadFrame() {
698698
TracyGpuZone("Upload Frame");
699-
glDisable(GL_DEPTH_TEST);
699+
GL_CHECK(glDisable(GL_DEPTH_TEST));
700700

701701
GL_CHECK(glBindFramebuffer(GL_FRAMEBUFFER, m_ScreenBufferFBO));
702702
GL_CHECK(glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, m_ScreenBufferTexture, 0));
703703
GL_CHECK(glClearColor(0.0f, 0.0f, 0.0f, 1.0f));
704704
GL_CHECK(glClear(GL_COLOR_BUFFER_BIT));
705705
GL_CHECK(glActiveTexture(GL_TEXTURE0));
706-
glViewport(0, 0, m_ResX, m_ResY);
706+
GL_CHECK(glViewport(0, 0, m_ResX, m_ResY));
707707

708-
glEnable(GL_BLEND);
708+
GL_CHECK(glEnable(GL_BLEND));
709709
if (m_DrawPostProcessBuffer) {
710710
TracyGpuZone("Upload Post Process Buffer");
711711
GL_CHECK(glBindTexture(GL_TEXTURE_2D, g_PostProcessMan.GetPostProcessColorBuffer()));
@@ -715,7 +715,7 @@ void WindowMan::UploadFrame() {
715715
GL_CHECK(glTexSubImage2D(GL_TEXTURE_2D, 0, 0, 0, g_FrameMan.GetBackBuffer32()->w, g_FrameMan.GetBackBuffer32()->h, GL_RGBA, GL_UNSIGNED_BYTE, g_FrameMan.GetBackBuffer32()->line[0]));
716716
} else {
717717
TracyGpuZone("Upload no Post Process Buffer");
718-
glBindTexture(GL_TEXTURE_2D, 0);
718+
GL_CHECK(glBindTexture(GL_TEXTURE_2D, 0));
719719
GL_CHECK(glActiveTexture(GL_TEXTURE1));
720720
GL_CHECK(glBindTexture(GL_TEXTURE_2D, m_BackBuffer32Texture));
721721
GL_CHECK(glPixelStorei(GL_UNPACK_ALIGNMENT, 4));
@@ -738,7 +738,7 @@ void WindowMan::UploadFrame() {
738738
}
739739
if (m_MultiDisplayWindows.empty()) {
740740
TracyGpuZone("Swap Window");
741-
glViewport(m_PrimaryWindowViewport->x, m_PrimaryWindowViewport->y, m_PrimaryWindowViewport->w, m_PrimaryWindowViewport->h);
741+
GL_CHECK(glViewport(m_PrimaryWindowViewport->x, m_PrimaryWindowViewport->y, m_PrimaryWindowViewport->w, m_PrimaryWindowViewport->h));
742742
m_ScreenBlitShader->SetMatrix4f(m_ScreenBlitShader->GetTransformUniform(), glm::mat4(1.0f));
743743
GL_CHECK(glDrawArrays(GL_TRIANGLE_STRIP, 0, 4));
744744
SDL_GL_SwapWindow(m_PrimaryWindow.get());

0 commit comments

Comments
 (0)