diff options
-rw-r--r-- | gpu/command_buffer/service/gles2_cmd_decoder.cc | 9 | ||||
-rw-r--r-- | gpu/command_buffer/service/gles2_cmd_decoder_unittest_base.cc | 6 |
2 files changed, 15 insertions, 0 deletions
diff --git a/gpu/command_buffer/service/gles2_cmd_decoder.cc b/gpu/command_buffer/service/gles2_cmd_decoder.cc index 7ecd8d5..0e471a1 100644 --- a/gpu/command_buffer/service/gles2_cmd_decoder.cc +++ b/gpu/command_buffer/service/gles2_cmd_decoder.cc @@ -3018,6 +3018,15 @@ bool GLES2DecoderImpl::Initialize(const scoped_refptr<gfx::GLSurface>& surface, glEnable(GL_PROGRAM_POINT_SIZE); } + // ES3 requires seamless cubemap. ES2 does not. + // However, when ES2 is implemented on top of DX11, seamless cubemap is + // always enabled and there is no way to disable it. + // Therefore, it seems OK to also always enable it on top of Desktop GL for + // both ES2 and ES3 contexts. + if (feature_info_->gl_version_info().IsAtLeastGL(3, 2)) { + glEnable(GL_TEXTURE_CUBE_MAP_SEAMLESS); + } + has_robustness_extension_ = context->HasExtension("GL_ARB_robustness") || context->HasExtension("GL_KHR_robustness") || diff --git a/gpu/command_buffer/service/gles2_cmd_decoder_unittest_base.cc b/gpu/command_buffer/service/gles2_cmd_decoder_unittest_base.cc index e3c0627..cbe3112 100644 --- a/gpu/command_buffer/service/gles2_cmd_decoder_unittest_base.cc +++ b/gpu/command_buffer/service/gles2_cmd_decoder_unittest_base.cc @@ -351,6 +351,12 @@ void GLES2DecoderTestBase::InitDecoderWithCommandLine( .RetiresOnSaturation(); } + if (group_->feature_info()->gl_version_info().IsAtLeastGL(3, 2)) { + EXPECT_CALL(*gl_, Enable(GL_TEXTURE_CUBE_MAP_SEAMLESS)) + .Times(1) + .RetiresOnSaturation(); + } + static GLint max_viewport_dims[] = { kMaxViewportWidth, kMaxViewportHeight |