[Scummvm-git-logs] scummvm master -> c2529c1945c6664e9f4fca4b874a6455c8efbbcf
digitall
noreply at scummvm.org
Tue Jul 11 23:20:33 UTC 2023
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:
c2529c1945 WATCHMAKER: Fix Remaining GCC Compiler Warnings
Commit: c2529c1945c6664e9f4fca4b874a6455c8efbbcf
https://github.com/scummvm/scummvm/commit/c2529c1945c6664e9f4fca4b874a6455c8efbbcf
Author: D G Turner (digitall at scummvm.org)
Date: 2023-07-12T00:20:23+01:00
Commit Message:
WATCHMAKER: Fix Remaining GCC Compiler Warnings
Changed paths:
engines/watchmaker/3d/geometry.cpp
engines/watchmaker/classes/do_camera.cpp
engines/watchmaker/render.cpp
engines/watchmaker/render.h
engines/watchmaker/t3d.h
diff --git a/engines/watchmaker/3d/geometry.cpp b/engines/watchmaker/3d/geometry.cpp
index fd6acef4695..48100fc8087 100644
--- a/engines/watchmaker/3d/geometry.cpp
+++ b/engines/watchmaker/3d/geometry.cpp
@@ -654,7 +654,7 @@ void t3dCreateProceduralSky(void) {
tab = new uint8[MaxSetDimX * MaxSetDimY * 3]{};
if (!SkySurface) // rReleaseBitmapDirect( SkySurface );
- SkySurface = (gTexture *)rCreateSurface(256, 256, rTEXTURESURFACE);
+ SkySurface = (gTexture *)rCreateSurfaceP(256, 256, rTEXTURESURFACE);
p = (unsigned short *)rLockSurfaceDirect(SkySurface, (unsigned int *)&pitch);
pitch /= 2;
diff --git a/engines/watchmaker/classes/do_camera.cpp b/engines/watchmaker/classes/do_camera.cpp
index ccecdd1c9be..5320ae13cb2 100644
--- a/engines/watchmaker/classes/do_camera.cpp
+++ b/engines/watchmaker/classes/do_camera.cpp
@@ -171,7 +171,7 @@ void HandleCameraCarrello(t3dBODY *croom) {
// Se e' appena partito il carrello
if (!bCameraCarrello) {
- memcpy(&CameraCarrello, t3dCurCamera, sizeof(CameraCarrello));
+ CameraCarrello = *t3dCurCamera;
t3dCurCamera = &CameraCarrello;
}
@@ -868,9 +868,9 @@ void StartAnimCamera(WGame &game) {
LastCamera = t3dCurCamera;
DestCamera = PickCamera(t3dCurRoom, t3dCurCameraIndex);
-
- memcpy(&AnimCamera, DestCamera, sizeof(AnimCamera));
+ AnimCamera = *DestCamera;
t3dCurCamera = &AnimCamera;
+
game._renderer->setCurCameraViewport(t3dCurCamera->Fov, bSuperView);
bCameraCarrello = FALSE;
diff --git a/engines/watchmaker/render.cpp b/engines/watchmaker/render.cpp
index ddca011e452..f49ad13cda8 100644
--- a/engines/watchmaker/render.cpp
+++ b/engines/watchmaker/render.cpp
@@ -127,6 +127,11 @@ int rCreateSurface(unsigned int dimx, unsigned int dimy, unsigned char flags) {
return 0;
}
+void *rCreateSurfaceP(unsigned int dimx, unsigned int dimy, unsigned char flags) {
+ warning("STUBBED: rCreateSurfaceP");
+ return nullptr;
+}
+
VertexBuffer rCreateVertexBuffer(unsigned int num) {
//warning("STUBBED: rCreateVertexBuffer");
return VertexBuffer();
diff --git a/engines/watchmaker/render.h b/engines/watchmaker/render.h
index 15bf9fda093..46a37ca95c7 100644
--- a/engines/watchmaker/render.h
+++ b/engines/watchmaker/render.h
@@ -152,6 +152,7 @@ void rReleaseBitmap(int i);
void rReleaseBitmapDirect(gTexture *b);
void rSetLoaderFlags(unsigned int NewLoaderFlags);
int rCreateSurface(unsigned int dimx, unsigned int dimy, unsigned char flags);
+void *rCreateSurfaceP(unsigned int dimx, unsigned int dimy, unsigned char flags);
char *rGetBitmapName(unsigned int id);
void rSetBitmapName(unsigned int id, const char *s);
unsigned char *rLockSurface(int surf, unsigned int *pitch);
diff --git a/engines/watchmaker/t3d.h b/engines/watchmaker/t3d.h
index 4076dd1df53..f2086165cf1 100644
--- a/engines/watchmaker/t3d.h
+++ b/engines/watchmaker/t3d.h
@@ -196,23 +196,41 @@ public:
};
struct t3dCAMERA {
- t3dV3F Source; // camera eye
- t3dV3F Target; // camera target
- t3dV3F MaxTarget; // original 3dsmax target
- t3dV3F NormalizedDir; // cam direction
- t3dF32 Fov = 0.0f; // cam field of view
- t3dV2F Center; // cam center
- t3dM3X3F Matrix; // cam view matrix
- t3dF32 NearClipPlane = 0.0f, FarClipPlane = 0.0f; // camera planes
- uint8 NumAvailablePaths() const {
- return CameraPaths.size(); // num camera paths
+ t3dV3F Source; // camera eye
+ t3dV3F Target; // camera target
+ t3dV3F MaxTarget; // original 3dsmax target
+ t3dV3F NormalizedDir; // cam direction
+ t3dF32 Fov; // cam field of view
+ t3dV2F Center; // cam center
+ t3dM3X3F Matrix; // cam view matrix
+ t3dF32 NearClipPlane, FarClipPlane; // camera planes
+ uint8 Index; // cam index 9in room
+ Common::Array<t3dPathCamera> CameraPaths;
+
+ uint8 NumAvailablePaths() const {
+ return CameraPaths.size();
}
- uint8 Index = 0; // cam index 9in room
- Common::Array<t3dPathCamera> CameraPaths; // paths list
+
public:
- t3dCAMERA() = default;
+ t3dCAMERA() {
+ reset();
+ }
+
explicit t3dCAMERA(Common::SeekableReadStream &stream);
+ void reset() {
+ Source = t3dV3F();
+ Target = t3dV3F();
+ MaxTarget = t3dV3F();
+ NormalizedDir = t3dV3F();
+ Fov = 0.0f;
+ Center = t3dV2F();
+ Matrix = t3dM3X3F();
+ NearClipPlane = 0.0f, FarClipPlane = 0.0f;
+ Index = 0;
+ CameraPaths.clear();
+ }
+
void normalizedSight();
};
More information about the Scummvm-git-logs
mailing list