From 56cbcc3ce45c1b68f9fbdbed6244bebe1f203403 Mon Sep 17 00:00:00 2001 From: "kbr@chromium.org" Date: Thu, 20 Oct 2011 23:37:58 +0000 Subject: Adjust workaround for mipmap-related OpenGL implementation bug on Mac OS X. BUG=101105 TEST=manually ran WebGL conformance test textures/texture-mips.html on NVIDIA and AMD GPUs on Mac OS Review URL: http://codereview.chromium.org/8365018 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@106634 0039d316-1c4b-4281-b951-d872f2087c98 --- gpu/command_buffer/service/gles2_cmd_decoder.cc | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'gpu') diff --git a/gpu/command_buffer/service/gles2_cmd_decoder.cc b/gpu/command_buffer/service/gles2_cmd_decoder.cc index 20d97bb..081d371 100644 --- a/gpu/command_buffer/service/gles2_cmd_decoder.cc +++ b/gpu/command_buffer/service/gles2_cmd_decoder.cc @@ -3008,8 +3008,11 @@ void GLES2DecoderImpl::DoGenerateMipmap(GLenum target) { } // Workaround for Mac driver bug. In the large scheme of things setting // glTexParamter twice for glGenerateMipmap is probably not a lage performance - // hit so there's probably no need to make this conditional. - glTexParameteri(target, GL_TEXTURE_MIN_FILTER, GL_NEAREST_MIPMAP_LINEAR); + // hit so there's probably no need to make this conditional. The bug appears + // to be that if the filtering mode is set to something that doesn't require + // mipmaps for rendering, or is never set to something other than the default, + // then glGenerateMipmap misbehaves. + glTexParameteri(target, GL_TEXTURE_MIN_FILTER, GL_NEAREST_MIPMAP_NEAREST); glGenerateMipmapEXT(target); glTexParameteri(target, GL_TEXTURE_MIN_FILTER, info->min_filter()); } -- cgit v1.1