1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
7 struct GpuShaderPrecision {
13 struct GpuPerStagePrecisions {
14 GpuShaderPrecision low_int;
15 GpuShaderPrecision medium_int;
16 GpuShaderPrecision high_int;
17 GpuShaderPrecision low_float;
18 GpuShaderPrecision medium_float;
19 GpuShaderPrecision high_float;
22 struct GpuCapabilities {
23 GpuPerStagePrecisions vertex_shader_precisions;
24 GpuPerStagePrecisions fragment_shader_precisions;
25 int32 max_combined_texture_image_units;
26 int32 max_cube_map_texture_size;
27 int32 max_fragment_uniform_vectors;
28 int32 max_renderbuffer_size;
29 int32 max_texture_image_units;
30 int32 max_texture_size;
31 int32 max_varying_vectors;
32 int32 max_vertex_attribs;
33 int32 max_vertex_texture_image_units;
34 int32 max_vertex_uniform_vectors;
35 int32 num_compressed_texture_formats;
36 int32 num_shader_binary_formats;
37 int32 bind_generates_resource_chromium;
40 bool egl_image_external;
41 bool texture_format_bgra8888;
42 bool texture_format_etc1;
43 bool texture_format_etc1_npot;
44 bool texture_rectangle;
48 bool discard_framebuffer;
51 bool future_sync_points;
52 bool blend_equation_advanced;
53 bool blend_equation_advanced_coherent;