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

Side by Side Diff: gpu/command_buffer/service/feature_info.cc

Issue 1218223005: command_buffer: Implement CHROMIUM_framebuffer_mixed_samples extension (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@new-05-path-fragment-input-gen
Patch Set: rebase for commit Created 5 years 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 unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "gpu/command_buffer/service/feature_info.h" 5 #include "gpu/command_buffer/service/feature_info.h"
6 6
7 #include <set> 7 #include <set>
8 #include <vector> 8 #include <vector>
9 9
10 #include "base/command_line.h" 10 #include "base/command_line.h"
(...skipping 150 matching lines...) Expand 10 before | Expand all | Expand 10 after
161 ext_frag_depth(false), 161 ext_frag_depth(false),
162 ext_shader_texture_lod(false), 162 ext_shader_texture_lod(false),
163 use_async_readpixels(false), 163 use_async_readpixels(false),
164 map_buffer_range(false), 164 map_buffer_range(false),
165 ext_discard_framebuffer(false), 165 ext_discard_framebuffer(false),
166 angle_depth_texture(false), 166 angle_depth_texture(false),
167 is_swiftshader(false), 167 is_swiftshader(false),
168 angle_texture_usage(false), 168 angle_texture_usage(false),
169 ext_texture_storage(false), 169 ext_texture_storage(false),
170 chromium_path_rendering(false), 170 chromium_path_rendering(false),
171 chromium_framebuffer_mixed_samples(false),
171 blend_equation_advanced(false), 172 blend_equation_advanced(false),
172 blend_equation_advanced_coherent(false), 173 blend_equation_advanced_coherent(false),
173 ext_texture_rg(false), 174 ext_texture_rg(false),
174 chromium_image_ycbcr_420v(false), 175 chromium_image_ycbcr_420v(false),
175 chromium_image_ycbcr_422(false), 176 chromium_image_ycbcr_422(false),
176 enable_subscribe_uniform(false), 177 enable_subscribe_uniform(false),
177 emulate_primitive_restart_fixed_index(false), 178 emulate_primitive_restart_fixed_index(false),
178 ext_render_buffer_format_bgra8888(false), 179 ext_render_buffer_format_bgra8888(false),
179 ext_multisample_compatibility(false), 180 ext_multisample_compatibility(false),
180 ext_blend_func_extended(false) {} 181 ext_blend_func_extended(false) {}
(...skipping 980 matching lines...) Expand 10 before | Expand all | Expand 10 after
1161 AddExtensionString("GL_CHROMIUM_path_rendering"); 1162 AddExtensionString("GL_CHROMIUM_path_rendering");
1162 feature_flags_.chromium_path_rendering = true; 1163 feature_flags_.chromium_path_rendering = true;
1163 validators_.g_l_state.AddValue(GL_PATH_MODELVIEW_MATRIX_CHROMIUM); 1164 validators_.g_l_state.AddValue(GL_PATH_MODELVIEW_MATRIX_CHROMIUM);
1164 validators_.g_l_state.AddValue(GL_PATH_PROJECTION_MATRIX_CHROMIUM); 1165 validators_.g_l_state.AddValue(GL_PATH_PROJECTION_MATRIX_CHROMIUM);
1165 validators_.g_l_state.AddValue(GL_PATH_STENCIL_FUNC_CHROMIUM); 1166 validators_.g_l_state.AddValue(GL_PATH_STENCIL_FUNC_CHROMIUM);
1166 validators_.g_l_state.AddValue(GL_PATH_STENCIL_REF_CHROMIUM); 1167 validators_.g_l_state.AddValue(GL_PATH_STENCIL_REF_CHROMIUM);
1167 validators_.g_l_state.AddValue(GL_PATH_STENCIL_VALUE_MASK_CHROMIUM); 1168 validators_.g_l_state.AddValue(GL_PATH_STENCIL_VALUE_MASK_CHROMIUM);
1168 } 1169 }
1169 } 1170 }
1170 1171
1172 if (enable_gl_path_rendering_switch_ &&
1173 !workarounds_.disable_gl_path_rendering &&
1174 extensions.Contains("GL_NV_framebuffer_mixed_samples")) {
1175 AddExtensionString("GL_CHROMIUM_framebuffer_mixed_samples");
1176 feature_flags_.chromium_framebuffer_mixed_samples = true;
1177 validators_.g_l_state.AddValue(GL_COVERAGE_MODULATION_CHROMIUM);
1178 }
1179
1171 if ((gl_version_info_->is_es3 || gl_version_info_->is_desktop_core_profile || 1180 if ((gl_version_info_->is_es3 || gl_version_info_->is_desktop_core_profile ||
1172 extensions.Contains("GL_EXT_texture_rg") || 1181 extensions.Contains("GL_EXT_texture_rg") ||
1173 extensions.Contains("GL_ARB_texture_rg")) && 1182 extensions.Contains("GL_ARB_texture_rg")) &&
1174 IsGL_REDSupportedOnFBOs()) { 1183 IsGL_REDSupportedOnFBOs()) {
1175 feature_flags_.ext_texture_rg = true; 1184 feature_flags_.ext_texture_rg = true;
1176 AddExtensionString("GL_EXT_texture_rg"); 1185 AddExtensionString("GL_EXT_texture_rg");
1177 1186
1178 validators_.texture_format.AddValue(GL_RED_EXT); 1187 validators_.texture_format.AddValue(GL_RED_EXT);
1179 validators_.texture_format.AddValue(GL_RG_EXT); 1188 validators_.texture_format.AddValue(GL_RG_EXT);
1180 validators_.texture_internal_format.AddValue(GL_RED_EXT); 1189 validators_.texture_internal_format.AddValue(GL_RED_EXT);
(...skipping 151 matching lines...) Expand 10 before | Expand all | Expand 10 after
1332 if (pos == std::string::npos) { 1341 if (pos == std::string::npos) {
1333 extensions_ += (extensions_.empty() ? "" : " ") + str; 1342 extensions_ += (extensions_.empty() ? "" : " ") + str;
1334 } 1343 }
1335 } 1344 }
1336 1345
1337 FeatureInfo::~FeatureInfo() { 1346 FeatureInfo::~FeatureInfo() {
1338 } 1347 }
1339 1348
1340 } // namespace gles2 1349 } // namespace gles2
1341 } // namespace gpu 1350 } // namespace gpu
OLDNEW
« no previous file with comments | « gpu/command_buffer/service/feature_info.h ('k') | gpu/command_buffer/service/gles2_cmd_decoder_autogen.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698