OLD | NEW |
1 | 1 |
2 /* | 2 /* |
3 * Copyright 2011 Google Inc. | 3 * Copyright 2011 Google Inc. |
4 * | 4 * |
5 * Use of this source code is governed by a BSD-style license that can be | 5 * Use of this source code is governed by a BSD-style license that can be |
6 * found in the LICENSE file. | 6 * found in the LICENSE file. |
7 */ | 7 */ |
8 #ifndef GrGLConfig_chrome_DEFINED | 8 #ifndef GrGLConfig_chrome_DEFINED |
9 #define GrGLConfig_chrome_DEFINED | 9 #define GrGLConfig_chrome_DEFINED |
10 | 10 |
11 // glGetError() forces a sync with gpu process on chrome | 11 // glGetError() forces a sync with gpu process on chrome |
12 #define GR_GL_CHECK_ERROR_START 0 | 12 #define GR_GL_CHECK_ERROR_START 0 |
13 | 13 |
| 14 #if defined(SK_BUILD_FOR_WIN32) |
14 // ANGLE creates a temp VB for vertex attributes not specified per-vertex. | 15 // ANGLE creates a temp VB for vertex attributes not specified per-vertex. |
15 #define GR_GL_NO_CONSTANT_ATTRIBUTES GR_WIN32_BUILD | 16 #define GR_GL_NO_CONSTANT_ATTRIBUTES 1 |
16 | 17 |
17 // For RGBA teximage/readpixels ANGLE will sw-convert to/from BGRA. | 18 // For RGBA teximage/readpixels ANGLE will sw-convert to/from BGRA. |
18 #define GR_GL_RGBA_8888_PIXEL_OPS_SLOW GR_WIN32_BUILD | 19 #define GR_GL_RGBA_8888_PIXEL_OPS_SLOW 1 |
19 | 20 |
20 // ANGLE can go faster if the entire fbo is read rather than a subrect | 21 // ANGLE can go faster if the entire fbo is read rather than a subrect |
21 #define GR_GL_FULL_READPIXELS_FASTER_THAN_PARTIAL GR_WIN32_BUILD | 22 #define GR_GL_FULL_READPIXELS_FASTER_THAN_PARTIAL 1 |
| 23 #else |
| 24 #define GR_GL_NO_CONSTANT_ATTRIBUTES 0 |
| 25 #define GR_GL_RGBA_8888_PIXEL_OPS_SLOW 0 |
| 26 #define GR_GL_FULL_READPIXELS_FASTER_THAN_PARTIAL 0 |
| 27 #endif |
22 | 28 |
23 // cmd buffer allocates memory and memsets it to zero when it sees glBufferData | 29 // cmd buffer allocates memory and memsets it to zero when it sees glBufferData |
24 // with NULL. | 30 // with NULL. |
25 #define GR_GL_USE_BUFFER_DATA_NULL_HINT 0 | 31 #define GR_GL_USE_BUFFER_DATA_NULL_HINT 0 |
26 | 32 |
27 // chrome uses this to set the context on each GL call. | 33 // chrome uses this to set the context on each GL call. |
28 #define GR_GL_PER_GL_FUNC_CALLBACK 1 | 34 #define GR_GL_PER_GL_FUNC_CALLBACK 1 |
29 | 35 |
30 // Check error is even more expensive in chrome (cmd buffer flush). The | 36 // Check error is even more expensive in chrome (cmd buffer flush). The |
31 // compositor also doesn't check its allocations. | 37 // compositor also doesn't check its allocations. |
32 #define GR_GL_CHECK_ALLOC_WITH_GET_ERROR 0 | 38 #define GR_GL_CHECK_ALLOC_WITH_GET_ERROR 0 |
33 | 39 |
34 // CheckFramebufferStatus in chrome synchronizes the gpu and renderer processes. | 40 // CheckFramebufferStatus in chrome synchronizes the gpu and renderer processes. |
35 #define GR_GL_CHECK_FBO_STATUS_ONCE_PER_FORMAT 1 | 41 #define GR_GL_CHECK_FBO_STATUS_ONCE_PER_FORMAT 1 |
36 | 42 |
37 // Non-VBO vertices and indices are not allowed in Chromium. | 43 // Non-VBO vertices and indices are not allowed in Chromium. |
38 #define GR_GL_MUST_USE_VBO 1 | 44 #define GR_GL_MUST_USE_VBO 1 |
39 | 45 |
40 // Use updated Khronos signature for glShaderSource | 46 // Use updated Khronos signature for glShaderSource |
41 // (const char* const instead of char**). | 47 // (const char* const instead of char**). |
42 #define GR_GL_USE_NEW_SHADER_SOURCE_SIGNATURE 1 | 48 #define GR_GL_USE_NEW_SHADER_SOURCE_SIGNATURE 1 |
43 | 49 |
44 #if !defined(GR_GL_IGNORE_ES3_MSAA) | 50 #if !defined(GR_GL_IGNORE_ES3_MSAA) |
45 #define GR_GL_IGNORE_ES3_MSAA 1 | 51 #define GR_GL_IGNORE_ES3_MSAA 1 |
46 #endif | 52 #endif |
47 | 53 |
48 #endif | 54 #endif |
OLD | NEW |