[Scummvm-git-logs] scummvm master -> 2c685d82e863de929037e05c2cbc5c0478e06a51
aquadran
aquadran at gmail.com
Sat Feb 13 14:44:13 UTC 2021
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
2c685d82e8 ICB: Remove SDL/OPENGL leftovers from surface manager
Commit: 2c685d82e863de929037e05c2cbc5c0478e06a51
https://github.com/scummvm/scummvm/commit/2c685d82e863de929037e05c2cbc5c0478e06a51
Author: PaweÅ KoÅodziejski (aquadran at users.sourceforge.net)
Date: 2021-02-13T15:44:08+01:00
Commit Message:
ICB: Remove SDL/OPENGL leftovers from surface manager
Changed paths:
engines/icb/surface_manager.cpp
engines/icb/surface_manager.h
diff --git a/engines/icb/surface_manager.cpp b/engines/icb/surface_manager.cpp
index 72f71ae4c0..35293d6d2c 100644
--- a/engines/icb/surface_manager.cpp
+++ b/engines/icb/surface_manager.cpp
@@ -42,22 +42,6 @@
namespace ICB {
-#if defined (SDL_BACKEND) && defined (ENABLE_OPENGL)
-PFNGLGENFRAMEBUFFERSEXTPROC glGenFramebuffers;
-PFNGLDELETEFRAMEBUFFERSEXTPROC glDeleteFramebuffers;
-PFNGLBINDFRAMEBUFFEREXTPROC glBindFramebuffer;
-PFNGLCHECKFRAMEBUFFERSTATUSEXTPROC glCheckFramebufferStatus;
-PFNGLFRAMEBUFFERTEXTURE2DEXTPROC glFramebufferTexture2D;
-PFNGLGENRENDERBUFFERSEXTPROC glGenRenderbuffers;
-PFNGLDELETERENDERBUFFERSEXTPROC glDeleteRenderbuffers;
-PFNGLBINDRENDERBUFFEREXTPROC glBindRenderbuffer;
-PFNGLFRAMEBUFFERRENDERBUFFEREXTPROC glFramebufferRenderbuffer;
-PFNGLRENDERBUFFERSTORAGEEXTPROC glRenderbufferStorage;
-
-GLuint g_RGBFrameBuffer;
-
-#endif
-
#define FIRST_CLIENT_SURFACE 2
uint32 working_buffer_id;
@@ -172,18 +156,6 @@ _surface_manager::~_surface_manager() {
//sdl_screen->free();
//delete sdl_screen;
-#ifndef ENABLE_OPENGL
-#ifdef USE_SDL_DIRECTLY
- if (sdl_screen_texture)
- SDL_DestroyTexture(sdl_screen_texture);
- if (sdl_renderer)
- SDL_DestroyRenderer(sdl_renderer);
-#endif
-#else
- glDeleteFramebuffers(1, &RGBFrameBufferTexture);
- glDeleteTextures(1, &RGBFrameBufferTexture);
- glDeleteTextures(1, &sdlTextureId);
-#endif
// Finished
Zdebug("*SURFACE_MANAGER* Surface Manager Destroyed");
}
@@ -205,71 +177,6 @@ uint32 _surface_manager::Init_direct_draw() {
Fatal_error("Initialise Graphics::Surface::create failed");
}
-#ifndef ENABLE_OPENGL
-#ifdef USE_SDL_DIRECTLY
- sdl_renderer = SDL_CreateRenderer(sdl_window, -1, 0);
- if (!sdl_renderer) {
- SDL_Quit();
- Fatal_error("Initialise SDL_CreateRenderer failed");
- }
-
- sdl_screen_texture = SDL_CreateTexture(sdl_renderer, SDL_PIXELFORMAT_RGB888, SDL_TEXTUREACCESS_STREAMING, 640, 480);
- if (!sdl_screen_texture) {
- SDL_Quit();
- Fatal_error("Initialise SDL_CreateTexture failed");
- }
-#endif
-#else
- if (!SDL_GL_ExtensionSupported("GL_EXT_framebuffer_object")) {
- SDL_Quit();
- Fatal_error("GL_EXT_framebuffer_object not supported!");
- }
- glGenFramebuffers = (PFNGLGENFRAMEBUFFERSEXTPROC)SDL_GL_GetProcAddress("glGenFramebuffers");
- glDeleteFramebuffers = (PFNGLDELETEFRAMEBUFFERSEXTPROC)SDL_GL_GetProcAddress("glDeleteFramebuffers");
- glBindFramebuffer = (PFNGLBINDFRAMEBUFFEREXTPROC)SDL_GL_GetProcAddress("glBindFramebuffer");
- glCheckFramebufferStatus = (PFNGLCHECKFRAMEBUFFERSTATUSEXTPROC)SDL_GL_GetProcAddress("glCheckFramebufferStatus");
- glFramebufferTexture2D = (PFNGLFRAMEBUFFERTEXTURE2DEXTPROC)SDL_GL_GetProcAddress("glFramebufferTexture2D");
- glGenRenderbuffers = (PFNGLGENRENDERBUFFERSEXTPROC)SDL_GL_GetProcAddress("glGenRenderbuffers");
- glDeleteRenderbuffers = (PFNGLDELETERENDERBUFFERSEXTPROC)SDL_GL_GetProcAddress("glDeleteRenderbuffers");
- glBindRenderbuffer = (PFNGLBINDRENDERBUFFEREXTPROC)SDL_GL_GetProcAddress("glBindRenderbuffer");
- glFramebufferRenderbuffer = (PFNGLFRAMEBUFFERRENDERBUFFEREXTPROC)SDL_GL_GetProcAddress("glFramebufferRenderbuffer");
- glRenderbufferStorage = (PFNGLRENDERBUFFERSTORAGEEXTPROC)SDL_GL_GetProcAddress("glRenderbufferStorage");
-
- glGenTextures(1, &RGBFrameBufferTexture);
- glBindTexture(GL_TEXTURE_2D, RGBFrameBufferTexture);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
- glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, 640, 480, 0, GL_RGBA, GL_UNSIGNED_BYTE, 0);
-
- glGenFramebuffers(1, &RGBFrameBuffer);
- glBindFramebuffer(GL_FRAMEBUFFER, RGBFrameBuffer);
- glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, RGBFrameBufferTexture, 0);
- if (glCheckFramebufferStatus(GL_FRAMEBUFFER) != GL_FRAMEBUFFER_COMPLETE) {
- SDL_Quit();
- Fatal_error("glCheckFramebufferStatus: status is not complete!");
- }
- glGenRenderbuffers(1, &renderBuffer);
- glBindRenderbuffer(GL_RENDERBUFFER, renderBuffer);
- glRenderbufferStorage(GL_RENDERBUFFER, GL_DEPTH_COMPONENT24, 1024, 512);
- glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_RENDERBUFFER, renderBuffer);
-
- glBindRenderbuffer(GL_RENDERBUFFER, 0);
- glBindTexture(GL_TEXTURE_2D, 0);
- glBindFramebuffer(GL_FRAMEBUFFER, 0);
- g_RGBFrameBuffer = RGBFrameBuffer;
-
- glGenTextures(1, &sdlTextureId);
- glBindTexture(GL_TEXTURE_2D, sdlTextureId);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);
- glTexImage2D(GL_TEXTURE_2D, 0, 4, sdl_screen->w, sdl_screen->h, 0, GL_BGRA, GL_UNSIGNED_INT_8_8_8_8_REV, sdl_screen->getBasePtr(0, 0));
-
-#endif
-
// Make our back buffer type affair
m_Surfaces[0] = new _surface;
m_Surfaces[0]->m_locked = false;
@@ -343,70 +250,6 @@ void _surface_manager::Flip() {
flipTime = GetMicroTimer();
-#ifdef ENABLE_OPENGL
- glMatrixMode(GL_PROJECTION);
- glPushMatrix();
- glLoadIdentity();
- glOrtho(0, 1.0, 1.0, 0, 0, 1);
-
- glMatrixMode(GL_MODELVIEW);
- glPushMatrix();
- glLoadIdentity();
-
- glMatrixMode(GL_TEXTURE);
- glPushMatrix();
- glLoadIdentity();
-
- glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
-
- glColor4f(1.0, 1.0, 1.0, 1.0);
-
- glDepthMask(GL_FALSE);
-
- glEnable(GL_TEXTURE_2D);
- glBindTexture(GL_TEXTURE_2D, sdlTextureId);
- glTexSubImage2D(GL_TEXTURE_2D, 0, 0, 0, sdl_screen->w, sdl_screen->h, GL_BGRA, GL_UNSIGNED_INT_8_8_8_8_REV, sdl_screen->getBasePtr(0, 0));
-
- glBegin(GL_QUADS);
- glTexCoord2i(0, 0);
- glVertex2i(0, 0);
-
- glTexCoord2i(sdl_screen->w - 1, 0);
- glVertex2i(sdl_screen->w - 1, 0);
-
- glTexCoord2i(sdl_screen->w - 1, sdl_screen->h - 1);
- glVertex2i(sdl_screen->w - 1, sdl_screen->h - 1);
-
- glTexCoord2i(0, sdl_screen->h - 1);
- glVertex2i(0, sdl_screen->h - 1);
- glEnd();
-
- glDepthMask(GL_TRUE);
- glDisable(GL_TEXTURE_2D);
-
- glMatrixMode(GL_PROJECTION);
- glPopMatrix();
-
- glMatrixMode(GL_MODELVIEW);
- glPopMatrix();
-
- glMatrixMode(GL_TEXTURE);
- glPopMatrix();
-
- SDL_GL_SwapWindow(sdl_window);
-#else
-#ifdef USE_SDL_DIRECTLY
- void *pixels;
- int pitch;
- if (SDL_LockTexture(sdl_screen_texture, NULL, &pixels, &pitch) < 0) {
- Fatal_error("_surface_manager::Flip() Failed Lock texture");
- }
- memcpy(pixels, sdl_screen->pixels, pitch * sdl_screen->h);
-
- SDL_UnlockTexture(sdl_screen_texture);
- SDL_RenderCopy(sdl_renderer, sdl_screen_texture, NULL, NULL);
- SDL_RenderPresent(sdl_renderer);
-#else
Graphics::BlitImage *blitImage = Graphics::tglGenBlitImage();
Graphics::tglUploadBlitImage(blitImage, *sdl_screen, 0, false);
Graphics::tglBlitFast(blitImage, 0, 0);
@@ -415,8 +258,7 @@ void _surface_manager::Flip() {
0, 0, _zb->xsize, _zb->ysize);
g_system->updateScreen();
Graphics::tglDeleteBlitImage(blitImage);
-#endif
-#endif
+
flipTime = GetMicroTimer() - flipTime;
PrintDebugLabel(NULL, 0x00000000);
diff --git a/engines/icb/surface_manager.h b/engines/icb/surface_manager.h
index d861bdf2f5..f0c1e30462 100644
--- a/engines/icb/surface_manager.h
+++ b/engines/icb/surface_manager.h
@@ -33,10 +33,6 @@
#include "engines/icb/common/px_assert.h"
#include "engines/icb/common/px_types.h"
-#ifdef ENABLE_OPENGL
-#include <SDL_opengl.h>
-#endif
-
#include "graphics/surface.h"
#include "graphics/pixelbuffer.h"
@@ -62,11 +58,6 @@ extern uint32 bg_buffer_id;
// Define this here so we can get rid of the <ddraw.h> include
#define DDBLT_KEYSRC 0x00008000l
-#if defined (SDL_BACKEND) && defined (ENABLE_OPENGL)
-extern PFNGLBINDFRAMEBUFFEREXTPROC glBindFramebuffer;
-extern GLuint g_RGBFrameBuffer;
-#endif
-
class _surface {
public:
Graphics::Surface *m_dds;
@@ -84,12 +75,6 @@ class _surface_manager {
private:
Graphics::Surface *sdl_screen;
TinyGL::FrameBuffer *_zb;
-#if defined (SDL_BACKEND) && defined (ENABLE_OPENGL)
- GLuint RGBFrameBufferTexture;
- GLuint RGBFrameBuffer;
- GLuint renderBuffer;
- GLuint sdlTextureId;
-#endif
LRECT m_screen_rect; // The screen rectangle
public:
rcAutoPtrArray<_surface> m_Surfaces; // List of client surface
More information about the Scummvm-git-logs
mailing list