mirror of https://github.com/PCSX2/pcsx2.git
gsdx-ogl: correct fbmask conversion on texture shuffle
Fbmask is RGBA8 and must be converted to RGB5A1 => bit 31 must be moved to bit 15 Signed-off-by: Gregory Hainaut <gregory.hainaut@gmail.com>
This commit is contained in:
parent
92dae56ff8
commit
6580f4922f
|
@ -235,7 +235,7 @@ bool GSRendererOGL::EmulateTextureShuffleAndFbmask(GSDeviceOGL::PSSelector& ps_s
|
||||||
// Please bang my head against the wall!
|
// Please bang my head against the wall!
|
||||||
// 1/ Reduce the frame mask to a 16 bit format
|
// 1/ Reduce the frame mask to a 16 bit format
|
||||||
const uint32& m = m_context->FRAME.FBMSK;
|
const uint32& m = m_context->FRAME.FBMSK;
|
||||||
uint32 fbmask = ((m >> 3) & 0x1F) | ((m >> 6) & 0x3E0) | ((m >> 9) & 0x7C00) | ((m >> 31) & 0x8000);
|
uint32 fbmask = ((m >> 3) & 0x1F) | ((m >> 6) & 0x3E0) | ((m >> 9) & 0x7C00) | ((m >> 16) & 0x8000);
|
||||||
// FIXME GSVector will be nice here
|
// FIXME GSVector will be nice here
|
||||||
uint8 rg_mask = fbmask & 0xFF;
|
uint8 rg_mask = fbmask & 0xFF;
|
||||||
uint8 ba_mask = (fbmask >> 8) & 0xFF;
|
uint8 ba_mask = (fbmask >> 8) & 0xFF;
|
||||||
|
|
Loading…
Reference in New Issue