[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