mesa: Ignore SRGB when determining compatible resolve formats.
MSAA resolves and other blit-like operations ignore SRGB state anyway, so we should be able to safely allow resolves between compatible SRGB/linear formats like SRGBA8 and RGBA8888. This matches the behavior of the nVidia and AMD binary drivers. Fixes completely black rendering when using multisampling in L4D2. NOTE: This is a candidate for the 9.0 branch. Reviewed-by: Paul Berry <stereotype441@gmail.com> Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
This commit is contained in:
@@ -2792,7 +2792,8 @@ compatible_resolve_formats(const struct gl_renderbuffer *colorReadRb,
|
||||
{
|
||||
/* The simple case where we know the backing formats are the same.
|
||||
*/
|
||||
if (colorReadRb->Format == colorDrawRb->Format) {
|
||||
if (_mesa_get_srgb_format_linear(colorReadRb->Format) ==
|
||||
_mesa_get_srgb_format_linear(colorDrawRb->Format)) {
|
||||
return GL_TRUE;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user