aboutsummaryrefslogtreecommitdiff
path: root/engines/sword25/gfx/renderobjectmanager.cpp
diff options
context:
space:
mode:
authorjohndoe1232013-04-20 00:34:32 +0200
committerjohndoe1232013-04-20 00:34:32 +0200
commit4fc57dac8fd6865494d21acfddeb69ab7fb1ad5c (patch)
treeb94c1c72f00b06a44a78751f9a13a8528df2fb84 /engines/sword25/gfx/renderobjectmanager.cpp
parent176a3babc553d1d6eb2a57fddb0a9665fc4aaa71 (diff)
downloadscummvm-rg350-4fc57dac8fd6865494d21acfddeb69ab7fb1ad5c.tar.gz
scummvm-rg350-4fc57dac8fd6865494d21acfddeb69ab7fb1ad5c.tar.bz2
scummvm-rg350-4fc57dac8fd6865494d21acfddeb69ab7fb1ad5c.zip
SWORD25: Fix blitting code
- Rename collectRenderQueue to preRender - Only do forceRefresh() in Panel::setColor() and Text::setText() if the new values are different - Move child object resorting from RenderObject::render() into RenderObject::preRender()
Diffstat (limited to 'engines/sword25/gfx/renderobjectmanager.cpp')
-rw-r--r--engines/sword25/gfx/renderobjectmanager.cpp10
1 files changed, 3 insertions, 7 deletions
diff --git a/engines/sword25/gfx/renderobjectmanager.cpp b/engines/sword25/gfx/renderobjectmanager.cpp
index a8f8c3682c..994d9367ab 100644
--- a/engines/sword25/gfx/renderobjectmanager.cpp
+++ b/engines/sword25/gfx/renderobjectmanager.cpp
@@ -97,12 +97,11 @@ bool RenderObjectManager::render() {
// Die Render-Methode der Wurzel aufrufen. Dadurch wird das rekursive Rendern der Baumelemente angestoßen.
- uint32 renderDuration = g_system->getMillis();
-
_currQueue->clear();
- _rootPtr->collectRenderQueue(_currQueue);
+ _rootPtr->preRender(_currQueue);
_uta->clear();
+
// Add rectangles of objects which don't exist in this frame any more
for (RenderObjectQueue::iterator it = _prevQueue->begin(); it != _prevQueue->end(); ++it)
if (!_currQueue->exists(*it))
@@ -111,7 +110,7 @@ bool RenderObjectManager::render() {
for (RenderObjectQueue::iterator it = _currQueue->begin(); it != _currQueue->end(); ++it)
if (!_prevQueue->exists(*it))
_uta->addRect((*it)._bbox);
-
+
RectangleList *updateRects = _uta->getRectangles();
Common::Array<int> updateRectsMinZ;
@@ -148,9 +147,6 @@ bool RenderObjectManager::render() {
SWAP(_currQueue, _prevQueue);
- renderDuration = g_system->getMillis() - renderDuration;
- //debug("renderDuration: %3.5f", renderDuration / 1000.0f);
-
return true;
}