Add Bloom Effect Smoothing hack

This commit is contained in:
Luna 2015-01-23 02:08:20 +01:00
parent cae58cafee
commit 722d34e09a
6 changed files with 84 additions and 4 deletions

View file

@ -667,8 +667,44 @@ void FramebufferManager::ResizeFramebufFBO(VirtualFramebuffer *vfb, u16 w, u16 h
vfb->bufferHeight = std::max(vfb->bufferHeight, h);
}
vfb->renderWidth = vfb->bufferWidth * renderWidthFactor;
vfb->renderHeight = vfb->bufferHeight * renderHeightFactor;
if (g_Config.iInternalResolution==1) {
vfb->renderWidth = vfb->bufferWidth * renderWidthFactor;
vfb->renderHeight = vfb->bufferHeight * renderHeightFactor;
} else {
switch (g_Config.iBloomHack) {
case 0:
vfb->renderWidth = vfb->bufferWidth * renderWidthFactor;
vfb->renderHeight = vfb->bufferHeight * renderHeightFactor;
break;
case 1:
if (vfb->bufferWidth <= 128 || vfb->bufferHeight <= 64) {
vfb->renderWidth = vfb->bufferWidth;
vfb->renderHeight = vfb->bufferHeight;
} else {
vfb->renderWidth = vfb->bufferWidth * renderWidthFactor;
vfb->renderHeight = vfb->bufferHeight * renderHeightFactor;
}
break;
case 2:
if (vfb->bufferWidth <= 256 || vfb->bufferHeight <= 128) {
vfb->renderWidth = vfb->bufferWidth;
vfb->renderHeight = vfb->bufferHeight;
} else {
vfb->renderWidth = vfb->bufferWidth * renderWidthFactor;
vfb->renderHeight = vfb->bufferHeight * renderHeightFactor;
}
break;
case 3:
if (vfb->bufferWidth < 480 || vfb->bufferHeight < 272) {
vfb->renderWidth = vfb->bufferWidth;
vfb->renderHeight = vfb->bufferHeight;
} else {
vfb->renderWidth = vfb->bufferWidth * renderWidthFactor;
vfb->renderHeight = vfb->bufferHeight * renderHeightFactor;
}
break;
}
}
bool trueColor = g_Config.bTrueColor;
if (hackForce04154000Download_ && vfb->fb_address == 0x00154000) {