aboutsummaryrefslogtreecommitdiff
path: root/src/libui_sdl
diff options
context:
space:
mode:
authorStapleButter <thetotalworm@gmail.com>2019-05-31 12:25:16 +0200
committerStapleButter <thetotalworm@gmail.com>2019-05-31 12:25:16 +0200
commit1a3314f0bdda811ee6db43f3fb467401b4f69d55 (patch)
tree39e5eb2a9304b306c3c61578d1a36975c155edf7 /src/libui_sdl
parent464b1169165b2e4d866c033e4c3288c9742539a8 (diff)
GL: don't draw the screens when nothing is running
Diffstat (limited to 'src/libui_sdl')
-rw-r--r--src/libui_sdl/main.cpp51
1 files changed, 27 insertions, 24 deletions
diff --git a/src/libui_sdl/main.cpp b/src/libui_sdl/main.cpp
index 6cc6c50..c351a04 100644
--- a/src/libui_sdl/main.cpp
+++ b/src/libui_sdl/main.cpp
@@ -396,35 +396,38 @@ void GLScreen_DrawScreen()
glClearColor(0, 0, 0, 1);
glClear(GL_COLOR_BUFFER_BIT);
- int frontbuf = GPU::FrontBuffer;
- glActiveTexture(GL_TEXTURE0);
- glBindTexture(GL_TEXTURE_2D, GL_ScreenTexture);
-
- if (GPU::Framebuffer[frontbuf][0] && GPU::Framebuffer[frontbuf][1])
+ if (RunningSomething)
{
- if (GPU3D::Renderer == 0)
- {
- glTexSubImage2D(GL_TEXTURE_2D, 0, 0, 0, 256, 192, GL_RGBA_INTEGER,
- GL_UNSIGNED_BYTE, GPU::Framebuffer[frontbuf][0]);
- glTexSubImage2D(GL_TEXTURE_2D, 0, 0, 192, 256, 192, GL_RGBA_INTEGER,
- GL_UNSIGNED_BYTE, GPU::Framebuffer[frontbuf][1]);
- }
- else
+ int frontbuf = GPU::FrontBuffer;
+ glActiveTexture(GL_TEXTURE0);
+ glBindTexture(GL_TEXTURE_2D, GL_ScreenTexture);
+
+ if (GPU::Framebuffer[frontbuf][0] && GPU::Framebuffer[frontbuf][1])
{
- glTexSubImage2D(GL_TEXTURE_2D, 0, 0, 0, 256*3 + 1, 192, GL_RGBA_INTEGER,
- GL_UNSIGNED_BYTE, GPU::Framebuffer[frontbuf][0]);
- glTexSubImage2D(GL_TEXTURE_2D, 0, 0, 192, 256*3 + 1, 192, GL_RGBA_INTEGER,
- GL_UNSIGNED_BYTE, GPU::Framebuffer[frontbuf][1]);
+ if (GPU3D::Renderer == 0)
+ {
+ glTexSubImage2D(GL_TEXTURE_2D, 0, 0, 0, 256, 192, GL_RGBA_INTEGER,
+ GL_UNSIGNED_BYTE, GPU::Framebuffer[frontbuf][0]);
+ glTexSubImage2D(GL_TEXTURE_2D, 0, 0, 192, 256, 192, GL_RGBA_INTEGER,
+ GL_UNSIGNED_BYTE, GPU::Framebuffer[frontbuf][1]);
+ }
+ else
+ {
+ glTexSubImage2D(GL_TEXTURE_2D, 0, 0, 0, 256*3 + 1, 192, GL_RGBA_INTEGER,
+ GL_UNSIGNED_BYTE, GPU::Framebuffer[frontbuf][0]);
+ glTexSubImage2D(GL_TEXTURE_2D, 0, 0, 192, 256*3 + 1, 192, GL_RGBA_INTEGER,
+ GL_UNSIGNED_BYTE, GPU::Framebuffer[frontbuf][1]);
+ }
}
- }
- glActiveTexture(GL_TEXTURE1);
- if (GPU3D::Renderer != 0)
- GPU3D::GLRenderer::SetupAccelFrame();
+ glActiveTexture(GL_TEXTURE1);
+ if (GPU3D::Renderer != 0)
+ GPU3D::GLRenderer::SetupAccelFrame();
- glBindBuffer(GL_ARRAY_BUFFER, GL_ScreenVertexBufferID);
- glBindVertexArray(GL_ScreenVertexArrayID);
- glDrawArrays(GL_TRIANGLES, 0, 4*3);
+ glBindBuffer(GL_ARRAY_BUFFER, GL_ScreenVertexBufferID);
+ glBindVertexArray(GL_ScreenVertexArrayID);
+ glDrawArrays(GL_TRIANGLES, 0, 4*3);
+ }
glFlush();
uiGLSwapBuffers(GLContext);