Commit b7a64d57 authored by senorblanco's avatar senorblanco Committed by Commit bot

Add a "Max. MSAA samples" entry to chrome://gpu.

BUG=474727

Review URL: https://codereview.chromium.org/1063233002

Cr-Commit-Position: refs/heads/master@{#324236}
parent d4a43f22
...@@ -154,6 +154,8 @@ base::DictionaryValue* GpuInfoAsDictionaryValue() { ...@@ -154,6 +154,8 @@ base::DictionaryValue* GpuInfoAsDictionaryValue() {
gpu_info.pixel_shader_version)); gpu_info.pixel_shader_version));
basic_info->Append(NewDescriptionValuePair("Vertex shader version", basic_info->Append(NewDescriptionValuePair("Vertex shader version",
gpu_info.vertex_shader_version)); gpu_info.vertex_shader_version));
basic_info->Append(NewDescriptionValuePair("Max. MSAA samples",
gpu_info.max_msaa_samples));
basic_info->Append(NewDescriptionValuePair("Machine model name", basic_info->Append(NewDescriptionValuePair("Machine model name",
gpu_info.machine_model_name)); gpu_info.machine_model_name));
basic_info->Append(NewDescriptionValuePair("Machine model version", basic_info->Append(NewDescriptionValuePair("Machine model version",
......
...@@ -166,6 +166,7 @@ IPC_STRUCT_TRAITS_BEGIN(gpu::GPUInfo) ...@@ -166,6 +166,7 @@ IPC_STRUCT_TRAITS_BEGIN(gpu::GPUInfo)
IPC_STRUCT_TRAITS_MEMBER(driver_date) IPC_STRUCT_TRAITS_MEMBER(driver_date)
IPC_STRUCT_TRAITS_MEMBER(pixel_shader_version) IPC_STRUCT_TRAITS_MEMBER(pixel_shader_version)
IPC_STRUCT_TRAITS_MEMBER(vertex_shader_version) IPC_STRUCT_TRAITS_MEMBER(vertex_shader_version)
IPC_STRUCT_TRAITS_MEMBER(max_msaa_samples)
IPC_STRUCT_TRAITS_MEMBER(machine_model_name) IPC_STRUCT_TRAITS_MEMBER(machine_model_name)
IPC_STRUCT_TRAITS_MEMBER(machine_model_version) IPC_STRUCT_TRAITS_MEMBER(machine_model_version)
IPC_STRUCT_TRAITS_MEMBER(gl_version) IPC_STRUCT_TRAITS_MEMBER(gl_version)
......
...@@ -79,6 +79,7 @@ void GPUInfo::EnumerateFields(Enumerator* enumerator) const { ...@@ -79,6 +79,7 @@ void GPUInfo::EnumerateFields(Enumerator* enumerator) const {
std::string driver_date; std::string driver_date;
std::string pixel_shader_version; std::string pixel_shader_version;
std::string vertex_shader_version; std::string vertex_shader_version;
std::string max_msaa_samples;
std::string machine_model_name; std::string machine_model_name;
std::string machine_model_version; std::string machine_model_version;
std::string gl_version_string; std::string gl_version_string;
...@@ -135,6 +136,7 @@ void GPUInfo::EnumerateFields(Enumerator* enumerator) const { ...@@ -135,6 +136,7 @@ void GPUInfo::EnumerateFields(Enumerator* enumerator) const {
enumerator->AddString("driverDate", driver_date); enumerator->AddString("driverDate", driver_date);
enumerator->AddString("pixelShaderVersion", pixel_shader_version); enumerator->AddString("pixelShaderVersion", pixel_shader_version);
enumerator->AddString("vertexShaderVersion", vertex_shader_version); enumerator->AddString("vertexShaderVersion", vertex_shader_version);
enumerator->AddString("maxMsaaSamples", max_msaa_samples);
enumerator->AddString("glVersion", gl_version); enumerator->AddString("glVersion", gl_version);
enumerator->AddString("glVendor", gl_vendor); enumerator->AddString("glVendor", gl_vendor);
enumerator->AddString("glRenderer", gl_renderer); enumerator->AddString("glRenderer", gl_renderer);
......
...@@ -138,6 +138,10 @@ struct GPU_EXPORT GPUInfo { ...@@ -138,6 +138,10 @@ struct GPU_EXPORT GPUInfo {
// The version of the vertex shader used by the gpu. // The version of the vertex shader used by the gpu.
std::string vertex_shader_version; std::string vertex_shader_version;
// The maximum multisapling sample count, either through ES3 or
// EXT_multisampled_render_to_texture MSAA.
std::string max_msaa_samples;
// The machine model identifier. They can contain any character, including // The machine model identifier. They can contain any character, including
// whitespaces. Currently it is supported on MacOSX and Android. // whitespaces. Currently it is supported on MacOSX and Android.
// Android examples: "Naxus 5", "XT1032". // Android examples: "Naxus 5", "XT1032".
......
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
#include "base/strings/string_number_conversions.h" #include "base/strings/string_number_conversions.h"
#include "base/strings/string_piece.h" #include "base/strings/string_piece.h"
#include "base/strings/string_split.h" #include "base/strings/string_split.h"
#include "base/strings/stringprintf.h"
#include "base/trace_event/trace_event.h" #include "base/trace_event/trace_event.h"
#include "ui/gl/gl_bindings.h" #include "ui/gl/gl_bindings.h"
#include "ui/gl/gl_context.h" #include "ui/gl/gl_context.h"
...@@ -101,6 +102,9 @@ CollectInfoResult CollectGraphicsInfoGL(GPUInfo* gpu_info) { ...@@ -101,6 +102,9 @@ CollectInfoResult CollectGraphicsInfoGL(GPUInfo* gpu_info) {
gpu_info->gl_extensions = GetGLString(GL_EXTENSIONS); gpu_info->gl_extensions = GetGLString(GL_EXTENSIONS);
gpu_info->gl_version = GetGLString(GL_VERSION); gpu_info->gl_version = GetGLString(GL_VERSION);
std::string glsl_version_string = GetGLString(GL_SHADING_LANGUAGE_VERSION); std::string glsl_version_string = GetGLString(GL_SHADING_LANGUAGE_VERSION);
GLint max_samples = 0;
glGetIntegerv(GL_MAX_SAMPLES, &max_samples);
gpu_info->max_msaa_samples = base::StringPrintf("%d", max_samples);
gfx::GLWindowSystemBindingInfo window_system_binding_info; gfx::GLWindowSystemBindingInfo window_system_binding_info;
if (GetGLWindowSystemBindingInfo(&window_system_binding_info)) { if (GetGLWindowSystemBindingInfo(&window_system_binding_info)) {
...@@ -141,6 +145,8 @@ void MergeGPUInfoGL(GPUInfo* basic_gpu_info, ...@@ -141,6 +145,8 @@ void MergeGPUInfoGL(GPUInfo* basic_gpu_info,
context_gpu_info.pixel_shader_version; context_gpu_info.pixel_shader_version;
basic_gpu_info->vertex_shader_version = basic_gpu_info->vertex_shader_version =
context_gpu_info.vertex_shader_version; context_gpu_info.vertex_shader_version;
basic_gpu_info->max_msaa_samples =
context_gpu_info.max_msaa_samples;
basic_gpu_info->gl_ws_vendor = context_gpu_info.gl_ws_vendor; basic_gpu_info->gl_ws_vendor = context_gpu_info.gl_ws_vendor;
basic_gpu_info->gl_ws_version = context_gpu_info.gl_ws_version; basic_gpu_info->gl_ws_version = context_gpu_info.gl_ws_version;
basic_gpu_info->gl_ws_extensions = context_gpu_info.gl_ws_extensions; basic_gpu_info->gl_ws_extensions = context_gpu_info.gl_ws_extensions;
......
...@@ -19,6 +19,7 @@ TEST(GPUInfoBasicTest, EmptyGPUInfo) { ...@@ -19,6 +19,7 @@ TEST(GPUInfoBasicTest, EmptyGPUInfo) {
EXPECT_EQ(gpu_info.driver_date, ""); EXPECT_EQ(gpu_info.driver_date, "");
EXPECT_EQ(gpu_info.pixel_shader_version, ""); EXPECT_EQ(gpu_info.pixel_shader_version, "");
EXPECT_EQ(gpu_info.vertex_shader_version, ""); EXPECT_EQ(gpu_info.vertex_shader_version, "");
EXPECT_EQ(gpu_info.max_msaa_samples, "");
EXPECT_EQ(gpu_info.gl_version, ""); EXPECT_EQ(gpu_info.gl_version, "");
EXPECT_EQ(gpu_info.gl_vendor, ""); EXPECT_EQ(gpu_info.gl_vendor, "");
EXPECT_EQ(gpu_info.gl_renderer, ""); EXPECT_EQ(gpu_info.gl_renderer, "");
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment