[Scummvm-git-logs] scummvm master -> a14c5b0ac8396382ccb0ca542fb050271955ee56

aquadran noreply at scummvm.org
Sun Sep 28 20:33:27 UTC 2025


This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://api.github.com/repos/scummvm/scummvm .

Summary:
a14c5b0ac8 WINTERMUTE: Small cleanup in 3d renderer


Commit: a14c5b0ac8396382ccb0ca542fb050271955ee56
    https://github.com/scummvm/scummvm/commit/a14c5b0ac8396382ccb0ca542fb050271955ee56
Author: Paweł Kołodziejski (aquadran at gmail.com)
Date: 2025-09-28T22:33:23+02:00

Commit Message:
WINTERMUTE: Small cleanup in 3d renderer

Changed paths:
    engines/wintermute/base/gfx/base_renderer3d.h
    engines/wintermute/base/gfx/opengl/base_render_opengl3d.cpp
    engines/wintermute/base/gfx/opengl/base_render_opengl3d.h
    engines/wintermute/base/gfx/opengl/base_render_opengl3d_shader.cpp
    engines/wintermute/base/gfx/opengl/base_render_opengl3d_shader.h
    engines/wintermute/base/gfx/opengl/base_surface_opengl3d.h


diff --git a/engines/wintermute/base/gfx/base_renderer3d.h b/engines/wintermute/base/gfx/base_renderer3d.h
index 97994e24957..d606fba40a0 100644
--- a/engines/wintermute/base/gfx/base_renderer3d.h
+++ b/engines/wintermute/base/gfx/base_renderer3d.h
@@ -77,13 +77,13 @@ public:
 	virtual bool enableShadows() = 0;
 	virtual bool disableShadows() = 0;
 	virtual bool stencilSupported() = 0;
-	virtual bool invalidateTexture(BaseSurfaceOpenGL3D *texture) = 0;
+	virtual bool invalidateTexture(BaseSurface *texture) = 0;
 
 	virtual void setSpriteBlendMode(Graphics::TSpriteBlendMode blendMode, bool forceChange = false) = 0;
 
 	virtual bool invalidateDeviceObjects() = 0;
 	virtual bool restoreDeviceObjects() = 0;
-	BaseSurfaceOpenGL3D *_lastTexture;
+	BaseSurface *_lastTexture;
 	bool fade(uint16 alpha) override;
 	bool drawSprite(BaseSurface *texture, const Common::Rect32 &rect, float zoomX, float zoomY, const DXVector2 &pos,
 	                uint32 color, bool alphaDisable, Graphics::TSpriteBlendMode blendMode, bool mirrorX, bool mirrorY);
diff --git a/engines/wintermute/base/gfx/opengl/base_render_opengl3d.cpp b/engines/wintermute/base/gfx/opengl/base_render_opengl3d.cpp
index 012ae45c0b2..2fcade07025 100644
--- a/engines/wintermute/base/gfx/opengl/base_render_opengl3d.cpp
+++ b/engines/wintermute/base/gfx/opengl/base_render_opengl3d.cpp
@@ -52,10 +52,6 @@ BaseRenderer3D *makeOpenGL3DRenderer(BaseGame *inGame) {
 }
 
 BaseRenderOpenGL3D::BaseRenderOpenGL3D(BaseGame *inGame) : BaseRenderer3D(inGame) {
-	setDefaultAmbientLightColor();
-
-	_lightPositions.resize(getMaxActiveLights());
-	_lightDirections.resize(getMaxActiveLights());
 }
 
 BaseRenderOpenGL3D::~BaseRenderOpenGL3D() {
@@ -122,6 +118,10 @@ bool BaseRenderOpenGL3D::initRenderer(int width, int height, bool windowed) {
 
 	_game->_supportsRealTimeShadows = true;
 
+	setDefaultAmbientLightColor();
+	_lightPositions.resize(getMaxActiveLights());
+	_lightDirections.resize(getMaxActiveLights());
+
 	return true;
 }
 
@@ -774,7 +774,7 @@ int BaseRenderOpenGL3D::getMaxActiveLights() {
 	return maxLightCount;
 }
 
-bool BaseRenderOpenGL3D::invalidateTexture(BaseSurfaceOpenGL3D *texture) {
+bool BaseRenderOpenGL3D::invalidateTexture(BaseSurface *texture) {
 	if (_lastTexture == texture)
 		_lastTexture = nullptr;
 
diff --git a/engines/wintermute/base/gfx/opengl/base_render_opengl3d.h b/engines/wintermute/base/gfx/opengl/base_render_opengl3d.h
index ad2031653c9..8e2e4af61f9 100644
--- a/engines/wintermute/base/gfx/opengl/base_render_opengl3d.h
+++ b/engines/wintermute/base/gfx/opengl/base_render_opengl3d.h
@@ -74,7 +74,7 @@ public:
 	BaseRenderOpenGL3D(BaseGame *inGame = nullptr);
 	~BaseRenderOpenGL3D() override;
 
-	bool invalidateTexture(BaseSurfaceOpenGL3D *texture) override;
+	bool invalidateTexture(BaseSurface *texture) override;
 
 	bool invalidateDeviceObjects() override;
 	bool restoreDeviceObjects() override;
diff --git a/engines/wintermute/base/gfx/opengl/base_render_opengl3d_shader.cpp b/engines/wintermute/base/gfx/opengl/base_render_opengl3d_shader.cpp
index 4ef5c58d315..637449ff382 100644
--- a/engines/wintermute/base/gfx/opengl/base_render_opengl3d_shader.cpp
+++ b/engines/wintermute/base/gfx/opengl/base_render_opengl3d_shader.cpp
@@ -52,7 +52,6 @@ BaseRenderer3D *makeOpenGL3DShaderRenderer(BaseGame *inGame) {
 }
 
 BaseRenderOpenGL3DShader::BaseRenderOpenGL3DShader(BaseGame *inGame) : BaseRenderer3D(inGame) {
-	setDefaultAmbientLightColor();
 	_alphaRef = 0;
 }
 
@@ -206,6 +205,8 @@ bool BaseRenderOpenGL3DShader::initRenderer(int width, int height, bool windowed
 
 	_game->_supportsRealTimeShadows = true;
 
+	setDefaultAmbientLightColor();
+
 	return true;
 }
 
@@ -869,7 +870,7 @@ int BaseRenderOpenGL3DShader::getMaxActiveLights() {
 	return 8;
 }
 
-bool BaseRenderOpenGL3DShader::invalidateTexture(BaseSurfaceOpenGL3D *texture) {
+bool BaseRenderOpenGL3DShader::invalidateTexture(BaseSurface *texture) {
 	if (_lastTexture == texture)
 		_lastTexture = nullptr;
 
diff --git a/engines/wintermute/base/gfx/opengl/base_render_opengl3d_shader.h b/engines/wintermute/base/gfx/opengl/base_render_opengl3d_shader.h
index e1631ef2c3e..5dc422f2812 100644
--- a/engines/wintermute/base/gfx/opengl/base_render_opengl3d_shader.h
+++ b/engines/wintermute/base/gfx/opengl/base_render_opengl3d_shader.h
@@ -76,7 +76,7 @@ public:
 	BaseRenderOpenGL3DShader(BaseGame *inGame = nullptr);
 	~BaseRenderOpenGL3DShader() override;
 
-	bool invalidateTexture(BaseSurfaceOpenGL3D *texture) override;
+	bool invalidateTexture(BaseSurface *texture) override;
 
 	bool invalidateDeviceObjects() override;
 	bool restoreDeviceObjects() override;
diff --git a/engines/wintermute/base/gfx/opengl/base_surface_opengl3d.h b/engines/wintermute/base/gfx/opengl/base_surface_opengl3d.h
index 97f87ee0d97..de769a77046 100644
--- a/engines/wintermute/base/gfx/opengl/base_surface_opengl3d.h
+++ b/engines/wintermute/base/gfx/opengl/base_surface_opengl3d.h
@@ -35,7 +35,7 @@ class BaseRenderer3D;
 
 class BaseSurfaceOpenGL3D : public BaseSurface {
 public:
-	BaseSurfaceOpenGL3D(BaseGame* game, BaseRenderer3D* renderer);
+	BaseSurfaceOpenGL3D(BaseGame *game, BaseRenderer3D *renderer);
 	~BaseSurfaceOpenGL3D();
 
 	bool invalidate() override;




More information about the Scummvm-git-logs mailing list