From 42e6ed383b5ede9fc156ae9ef1f2c48c4418b628 Mon Sep 17 00:00:00 2001 From: Joel Teichroeb Date: Sun, 3 Aug 2014 11:58:12 -0700 Subject: [PATCH 1/2] GRIM: Remove and refactor drawPrimitives --- engines/grim/grim.cpp | 22 +++++++--------------- engines/grim/grim.h | 1 - 2 files changed, 7 insertions(+), 16 deletions(-) diff --git a/engines/grim/grim.cpp b/engines/grim/grim.cpp index 16fd8165f51..0d7aa995c64 100644 --- a/engines/grim/grim.cpp +++ b/engines/grim/grim.cpp @@ -430,19 +430,6 @@ void GrimEngine::drawTextObjects() { } } -void GrimEngine::drawPrimitives() { - _iris->draw(); - - // Draw text - if (_mode == SmushMode) { - if (_movieSubtitle) { - _movieSubtitle->draw(); - } - } else { - drawTextObjects(); - } -} - void GrimEngine::playIrisAnimation(Iris::Direction dir, int x, int y, int time) { _iris->play(dir, x, y, time); } @@ -520,7 +507,10 @@ void GrimEngine::updateDisplayScene() { foreach (PrimitiveObject *p, PrimitiveObject::getPool()) { p->draw(); } - drawPrimitives(); + _iris->draw(); + if (_movieSubtitle) { + _movieSubtitle->draw(); + } } else if (_mode == NormalMode || _mode == OverworldMode) { updateNormalMode(); } else if (_mode == DrawMode) { @@ -537,7 +527,9 @@ void GrimEngine::updateNormalMode() { drawNormalMode(); g_driver->drawBuffers(); - drawPrimitives(); + + _iris->draw(); + drawTextObjects(); } void GrimEngine::updateDrawMode() { diff --git a/engines/grim/grim.h b/engines/grim/grim.h index 6540e8b559f..4a1695d8d8a 100644 --- a/engines/grim/grim.h +++ b/engines/grim/grim.h @@ -116,7 +116,6 @@ public: void setFlipEnable(bool state) { _flipEnable = state; } bool getFlipEnable() { return _flipEnable; } virtual void drawTextObjects(); - void drawPrimitives(); void playIrisAnimation(Iris::Direction dir, int x, int y, int time); void mainLoop(); From 6627af4000f88bbc0d1d8a1d80463a045dac765b Mon Sep 17 00:00:00 2001 From: Joel Teichroeb Date: Sun, 3 Aug 2014 11:58:57 -0700 Subject: [PATCH 2/2] GRIM/EMI: Do not draw primitives in SmushMode. Fixes #990 --- engines/grim/grim.cpp | 3 --- 1 file changed, 3 deletions(-) diff --git a/engines/grim/grim.cpp b/engines/grim/grim.cpp index 0d7aa995c64..80183f26e66 100644 --- a/engines/grim/grim.cpp +++ b/engines/grim/grim.cpp @@ -504,9 +504,6 @@ void GrimEngine::updateDisplayScene() { g_driver->releaseMovieFrame(); } // Draw Primitives - foreach (PrimitiveObject *p, PrimitiveObject::getPool()) { - p->draw(); - } _iris->draw(); if (_movieSubtitle) { _movieSubtitle->draw();