[Scummvm-git-logs] scummvm master -> 1c13b1a0eeb986c58c4393ec4190a1d2c103a2fb
aquadran
noreply at scummvm.org
Sat Jul 2 21:03:04 UTC 2022
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:
1c13b1a0ee WINTERMUTE: WME3D: Restore 'renderModel' method
Commit: 1c13b1a0eeb986c58c4393ec4190a1d2c103a2fb
https://github.com/scummvm/scummvm/commit/1c13b1a0eeb986c58c4393ec4190a1d2c103a2fb
Author: PaweÅ KoÅodziejski (aquadran at gmail.com)
Date: 2022-07-02T23:03:00+02:00
Commit Message:
WINTERMUTE: WME3D: Restore 'renderModel' method
Changed paths:
engines/wintermute/ad/ad_actor_3dx.h
engines/wintermute/base/base_object.cpp
engines/wintermute/base/base_object.h
diff --git a/engines/wintermute/ad/ad_actor_3dx.h b/engines/wintermute/ad/ad_actor_3dx.h
index a2716a0a09e..63c09d57e63 100644
--- a/engines/wintermute/ad/ad_actor_3dx.h
+++ b/engines/wintermute/ad/ad_actor_3dx.h
@@ -59,7 +59,7 @@ public:
uint32 getAnimTransitionTime(char *from, char *to) override;
BaseArray<BaseAnimationTransitionTime *> _transitionTimes;
- virtual bool renderModel();
+ virtual bool renderModel() override;
uint32 _defaultTransTime;
uint32 _defaultStopTransTime;
diff --git a/engines/wintermute/base/base_object.cpp b/engines/wintermute/base/base_object.cpp
index 10cd3aed088..aa6aa3234ce 100644
--- a/engines/wintermute/base/base_object.cpp
+++ b/engines/wintermute/base/base_object.cpp
@@ -39,6 +39,7 @@
#include "engines/wintermute/base/base_engine.h"
#include "engines/wintermute/base/base_surface_storage.h"
#include "engines/wintermute/base/gfx/base_surface.h"
+#include "engines/wintermute/base/gfx/base_renderer3d.h"
#include "engines/wintermute/base/gfx/x/modelx.h"
#include "engines/wintermute/wintermute.h"
#endif
@@ -1391,6 +1392,19 @@ bool BaseObject::getMatrix(Math::Matrix4 *modelMatrix, Math::Vector3d *posVect)
*modelMatrix = translation * rotation * scale;
return true;
}
+
+//////////////////////////////////////////////////////////////////////////
+bool BaseObject::renderModel() {
+ Math::Matrix4 objectMat;
+ getMatrix(&objectMat);
+
+ _gameRef->_renderer3D->setWorldTransform(objectMat);
+
+ if (_modelX)
+ return _modelX->render();
+ else
+ return false;
+}
#endif
} // End of namespace Wintermute
diff --git a/engines/wintermute/base/base_object.h b/engines/wintermute/base/base_object.h
index 9639c0d7e07..6c1160a60b3 100644
--- a/engines/wintermute/base/base_object.h
+++ b/engines/wintermute/base/base_object.h
@@ -87,6 +87,9 @@ protected:
char *_soundEvent;
public:
Graphics::TSpriteBlendMode _blendMode;
+#ifdef ENABLE_WME3D
+ virtual bool renderModel();
+#endif
virtual bool afterMove();
float _scale;
uint32 _alphaColor;
More information about the Scummvm-git-logs
mailing list