aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorEugene Sandulenko2019-11-06 14:59:48 +0100
committerEugene Sandulenko2019-11-13 22:07:08 +0100
commit16386016efa08fa77fbcd40d29184eb23f61b1b0 (patch)
tree9985fa60607a85cb37b2466ed7054045125f71fd /engines
parentce0f0f62e9ce7756b55f40254cad7d525580dd8a (diff)
downloadscummvm-rg350-16386016efa08fa77fbcd40d29184eb23f61b1b0.tar.gz
scummvm-rg350-16386016efa08fa77fbcd40d29184eb23f61b1b0.tar.bz2
scummvm-rg350-16386016efa08fa77fbcd40d29184eb23f61b1b0.zip
GRIFFON: More alpha blitting optimizations
Diffstat (limited to 'engines')
-rw-r--r--engines/griffon/draw.cpp7
-rw-r--r--engines/griffon/logic.cpp12
2 files changed, 2 insertions, 17 deletions
diff --git a/engines/griffon/draw.cpp b/engines/griffon/draw.cpp
index 3fd968f920..ed587831dc 100644
--- a/engines/griffon/draw.cpp
+++ b/engines/griffon/draw.cpp
@@ -229,8 +229,6 @@ void GriffonEngine::drawHud() {
rcDest.top = iy;
_spellImg->blit(*_videoBuffer, rcDest.left, rcDest.top, Graphics::FLIP_NONE, &rcSrc);
-
- _spellImg->setAlpha(255, true);
}
}
}
@@ -590,7 +588,6 @@ void GriffonEngine::drawNPCs(int mode) {
x = 255;
_spellImg->setAlpha(x, true);
_spellImg->blit(*_videoBuffer, rcDest.left, rcDest.top, Graphics::FLIP_NONE, &rcSrc);
- _spellImg->setAlpha(255, true);
for (int f = 1; f <= 8; f++) {
rcSrc.left = 16 * (int)(RND() * 2);
@@ -606,7 +603,6 @@ void GriffonEngine::drawNPCs(int mode) {
x = 255;
_spellImg->setAlpha(x, true);
_spellImg->blit(*_videoBuffer, rcDest.left, rcDest.top, Graphics::FLIP_NONE, &rcSrc);
- _spellImg->setAlpha(255, true);
}
rcSrc.left = 0;
@@ -619,7 +615,6 @@ void GriffonEngine::drawNPCs(int mode) {
_spellImg->setAlpha(192, true);
_anims[5]->blit(*_videoBuffer, rcDest.left, rcDest.top, Graphics::FLIP_NONE, &rcSrc);
- _spellImg->setAlpha(255, true);
}
}
@@ -864,8 +859,6 @@ void GriffonEngine::drawNPCs(int mode) {
}
}
- _spellImg->setAlpha(255, true);
-
if (!_npcInfo[i].attacking) {
int cframe = (int)(frame);
rcSrc.left = 0;
diff --git a/engines/griffon/logic.cpp b/engines/griffon/logic.cpp
index d41b352f11..063c5be610 100644
--- a/engines/griffon/logic.cpp
+++ b/engines/griffon/logic.cpp
@@ -1307,7 +1307,6 @@ void GriffonEngine::updateSpells() {
if (xloc > -16 && xloc < 304 && yloc > -16 && yloc < 224) {
_spellImg->setAlpha(alf, true);
_spellImg->blit(*_videoBuffer, rcDest.left, rcDest.top, Graphics::FLIP_NONE, &rcSrc);
- _spellImg->setAlpha(255, true);
if (_spellInfo[i].damagewho == 0) {
for (int e = 1; e <= _lastNpc; e++) {
@@ -1382,6 +1381,7 @@ void GriffonEngine::updateSpells() {
rcDest.left = xloc;
rcDest.top = yloc;
+ _spellImg->setAlpha(255, true);
_spellImg->blit(*_videoBuffer, rcDest.left, rcDest.top, Graphics::FLIP_NONE, &rcSrc);
_spellInfo[i].frame = _spellInfo[i].frame - 0.2 * _fpsr;
@@ -1504,6 +1504,7 @@ void GriffonEngine::updateSpells() {
rcDest.top = yloc;
if (xloc > -16 && xloc < 304 && yloc > -16 && yloc < 224) {
+ _spellImg->setAlpha(255, true);
_spellImg->blit(*_videoBuffer, rcDest.left, rcDest.top, Graphics::FLIP_NONE, &rcSrc);
if (scatter) {
@@ -1585,7 +1586,6 @@ void GriffonEngine::updateSpells() {
_spellImg->setAlpha(f, true);
_spellImg->blit(*_videoBuffer, rcDest.left, rcDest.top, Graphics::FLIP_NONE, &rcSrc);
- _spellImg->setAlpha(255, true);
_spellInfo[i].frame = _spellInfo[i].frame - 0.3 * _fpsr;
if (_spellInfo[i].frame < 0) {
@@ -1684,8 +1684,6 @@ void GriffonEngine::updateSpells() {
_spellImg->blit(*_videoBuffer, rcDest.left, rcDest.top, Graphics::FLIP_NONE, &rcSrc);
}
-
- _spellImg->setAlpha(255, true);
} else {
_spellImg->setAlpha(192, true);
@@ -1723,8 +1721,6 @@ void GriffonEngine::updateSpells() {
if (xloc < -1 || yloc < -1 || xloc > 304 || yloc > 224)
_spellInfo[i].ballon[ff] = 0;
}
-
- _spellImg->setAlpha(255, true);
}
_spellInfo[i].frame = _spellInfo[i].frame - 0.2 * _fpsr;
@@ -2098,7 +2094,6 @@ void GriffonEngine::updateSpellsUnder() {
_spellImg->setAlpha(f, true);
_spellImg->blit(*_videoBuffer, rcDest.left, rcDest.top, Graphics::FLIP_NONE, &rcSrc);
- _spellImg->setAlpha(255, true);
_spellInfo[i].frame = _spellInfo[i].frame - 0.2 * _fpsr;
if (_spellInfo[i].frame < 0)
@@ -2283,8 +2278,6 @@ void GriffonEngine::updateSpellsUnder() {
}
}
- _spellImg->setAlpha(255, true);
-
_spellInfo[i].frame = _spellInfo[i].frame - 0.2 * _fpsr;
if (_spellInfo[i].frame < 0)
_spellInfo[i].frame = 0;
@@ -2349,7 +2342,6 @@ void GriffonEngine::updateSpellsUnder() {
}
- _spellImg->setAlpha(255, true);
_spellInfo[i].frame = _spellInfo[i].frame - 0.5 * _fpsr;
if (_spellInfo[i].frame < 0)
_spellInfo[i].frame = 0;