mirror of
https://github.com/mkxp-z/mkxp-z.git
synced 2025-04-21 21:52:04 +02:00
Fix wave effect with Hires bitmaps
This commit is contained in:
parent
9301e82ba6
commit
7eec9a4774
1 changed files with 24 additions and 0 deletions
|
@ -282,6 +282,18 @@ struct SpritePrivate
|
||||||
|
|
||||||
tex.y += pos.y;
|
tex.y += pos.y;
|
||||||
tex.h = pos.h;
|
tex.h = pos.h;
|
||||||
|
if (bitmap->hasHires())
|
||||||
|
{
|
||||||
|
Vec2 bmSize = Vec2(bitmap->width(), bitmap->height());
|
||||||
|
Vec2 bmSizeHires = Vec2(bitmap->getHires()->width(), bitmap->getHires()->height());
|
||||||
|
if (bmSizeHires.x && bmSizeHires.y && bmSize.x && bmSize.y)
|
||||||
|
{
|
||||||
|
tex.x *= bmSizeHires.x / bmSize.x;
|
||||||
|
tex.y *= bmSizeHires.y / bmSize.y;
|
||||||
|
tex.w *= bmSizeHires.x / bmSize.x;
|
||||||
|
tex.h *= bmSizeHires.y / bmSize.y;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
Quad::setTexPosRect(vert, tex, pos);
|
Quad::setTexPosRect(vert, tex, pos);
|
||||||
vert += 4;
|
vert += 4;
|
||||||
|
@ -336,6 +348,18 @@ struct SpritePrivate
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (bitmap->hasHires())
|
||||||
|
{
|
||||||
|
Vec2 bmSize = Vec2(bitmap->width(), bitmap->height());
|
||||||
|
Vec2 bmSizeHires = Vec2(bitmap->getHires()->width(), bitmap->getHires()->height());
|
||||||
|
if (bmSizeHires.x && bmSizeHires.y && bmSize.x && bmSize.y)
|
||||||
|
{
|
||||||
|
tex.x *= bmSizeHires.x / bmSize.x;
|
||||||
|
tex.y *= bmSizeHires.y / bmSize.y;
|
||||||
|
tex.w *= bmSizeHires.x / bmSize.x;
|
||||||
|
tex.h *= bmSizeHires.y / bmSize.y;
|
||||||
|
}
|
||||||
|
}
|
||||||
wave.qArray.resize(1);
|
wave.qArray.resize(1);
|
||||||
Quad::setTexPosRect(&wave.qArray.vertices[0], tex, pos);
|
Quad::setTexPosRect(&wave.qArray.vertices[0], tex, pos);
|
||||||
wave.qArray.commit();
|
wave.qArray.commit();
|
||||||
|
|
Loading…
Add table
Reference in a new issue