Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(954)

Unified Diff: gpu/command_buffer/service/gles2_cmd_decoder.cc

Issue 2369313002: Work around CopyTexImage2D issue on Intel Mac OSX 10.12 (Closed)
Patch Set: rebase only Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | gpu/config/gpu_driver_bug_list_json.cc » ('j') | gpu/config/gpu_driver_bug_list_json.cc » ('J')
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: gpu/command_buffer/service/gles2_cmd_decoder.cc
diff --git a/gpu/command_buffer/service/gles2_cmd_decoder.cc b/gpu/command_buffer/service/gles2_cmd_decoder.cc
index fad05fe6ff9d4458c167d167cc854ca3fcf09400..dcf4d739423b909eb6b12ca64a5f83bdfe044b24 100644
--- a/gpu/command_buffer/service/gles2_cmd_decoder.cc
+++ b/gpu/command_buffer/service/gles2_cmd_decoder.cc
@@ -13314,6 +13314,18 @@ void GLES2DecoderImpl::DoCopyTexImage2D(
} else {
GLenum final_internal_format = TextureManager::AdjustTexInternalFormat(
feature_info_.get(), internal_format);
+ if (workarounds().init_cube_map_before_copyteximage &&
+ texture->target() == GL_TEXTURE_CUBE_MAP &&
+ target != GL_TEXTURE_CUBE_MAP_POSITIVE_X) {
+ for (int i = 0; i < 2; ++i) {
+ TextureManager::DoTexImageArguments args = {
+ target, i, final_internal_format, 1, 1, 1, border,
+ format, type, nullptr, 1, 0,
+ TextureManager::DoTexImageArguments::kTexImage2D };
+ texture_manager()->WorkaroundCopyTexImageCubeMap(&texture_state_,
+ &state_, &framebuffer_state_, texture_ref, func_name, args);
+ }
Zhenyao Mo 2016/09/28 21:14:23 This gets complicated when we also need to emulate
qiankun 2016/09/29 00:51:27 What kinds of TODO, something like to handle this
Zhenyao Mo 2016/09/29 20:30:16 What I mean is, if the src texture format is LUMIN
qiankun 2016/09/30 05:47:39 Sorry, I didn't get this. Can you explain it furth
qiankun 2016/10/11 01:56:20 Zhenyao&Ken, do I still need to add this TODO acco
+ }
// The service id and target of the texture attached to READ_FRAMEBUFFER.
GLuint source_texture_service_id = 0;
« no previous file with comments | « no previous file | gpu/config/gpu_driver_bug_list_json.cc » ('j') | gpu/config/gpu_driver_bug_list_json.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698