| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright 2012 Google Inc. | 2 * Copyright 2012 Google Inc. |
| 3 * | 3 * |
| 4 * Use of this source code is governed by a BSD-style license that can be | 4 * Use of this source code is governed by a BSD-style license that can be |
| 5 * found in the LICENSE file. | 5 * found in the LICENSE file. |
| 6 */ | 6 */ |
| 7 | 7 |
| 8 | 8 |
| 9 #include "GrGLSLCaps.h" | 9 #include "GrGLSLCaps.h" |
| 10 | 10 |
| 11 ////////////////////////////////////////////////////////////////////////////////
//////////// | 11 ////////////////////////////////////////////////////////////////////////////////
//////////// |
| 12 | 12 |
| 13 GrGLSLCaps::GrGLSLCaps(const GrContextOptions& options) { | 13 GrGLSLCaps::GrGLSLCaps(const GrContextOptions& options) { |
| 14 fGLSLGeneration = k330_GrGLSLGeneration; | 14 fGLSLGeneration = k330_GrGLSLGeneration; |
| 15 | 15 |
| 16 fDropsTileOnZeroDivide = false; | 16 fDropsTileOnZeroDivide = false; |
| 17 fFBFetchSupport = false; | 17 fFBFetchSupport = false; |
| 18 fFBFetchNeedsCustomOutput = false; | 18 fFBFetchNeedsCustomOutput = false; |
| 19 fBindlessTextureSupport = false; | 19 fBindlessTextureSupport = false; |
| 20 fUsesPrecisionModifiers = false; |
| 20 fFBFetchColorName = nullptr; | 21 fFBFetchColorName = nullptr; |
| 21 fFBFetchExtensionString = nullptr; | 22 fFBFetchExtensionString = nullptr; |
| 22 fAdvBlendEqInteraction = kNotSupported_AdvBlendEqInteraction; | 23 fAdvBlendEqInteraction = kNotSupported_AdvBlendEqInteraction; |
| 23 } | 24 } |
| 24 | 25 |
| 25 SkString GrGLSLCaps::dump() const { | 26 SkString GrGLSLCaps::dump() const { |
| 26 SkString r = INHERITED::dump(); | 27 SkString r = INHERITED::dump(); |
| 27 | 28 |
| 28 static const char* kAdvBlendEqInteractionStr[] = { | 29 static const char* kAdvBlendEqInteractionStr[] = { |
| 29 "Not Supported", | 30 "Not Supported", |
| 30 "Automatic", | 31 "Automatic", |
| 31 "General Enable", | 32 "General Enable", |
| 32 "Specific Enables", | 33 "Specific Enables", |
| 33 }; | 34 }; |
| 34 GR_STATIC_ASSERT(0 == kNotSupported_AdvBlendEqInteraction); | 35 GR_STATIC_ASSERT(0 == kNotSupported_AdvBlendEqInteraction); |
| 35 GR_STATIC_ASSERT(1 == kAutomatic_AdvBlendEqInteraction); | 36 GR_STATIC_ASSERT(1 == kAutomatic_AdvBlendEqInteraction); |
| 36 GR_STATIC_ASSERT(2 == kGeneralEnable_AdvBlendEqInteraction); | 37 GR_STATIC_ASSERT(2 == kGeneralEnable_AdvBlendEqInteraction); |
| 37 GR_STATIC_ASSERT(3 == kSpecificEnables_AdvBlendEqInteraction); | 38 GR_STATIC_ASSERT(3 == kSpecificEnables_AdvBlendEqInteraction); |
| 38 GR_STATIC_ASSERT(SK_ARRAY_COUNT(kAdvBlendEqInteractionStr) == kLast_AdvBlend
EqInteraction + 1); | 39 GR_STATIC_ASSERT(SK_ARRAY_COUNT(kAdvBlendEqInteractionStr) == kLast_AdvBlend
EqInteraction + 1); |
| 39 | 40 |
| 40 r.appendf("--- GLSL-Specific ---\n"); | 41 r.appendf("--- GLSL-Specific ---\n"); |
| 41 | 42 |
| 42 r.appendf("FB Fetch Support: %s\n", (fFBFetchSupport ? "YES" : "NO")); | 43 r.appendf("FB Fetch Support: %s\n", (fFBFetchSupport ? "YES" : "NO")); |
| 43 r.appendf("Drops tile on zero divide: %s\n", (fDropsTileOnZeroDivide ? "YES"
: "NO")); | 44 r.appendf("Drops tile on zero divide: %s\n", (fDropsTileOnZeroDivide ? "YES"
: "NO")); |
| 44 r.appendf("Bindless texture support: %s\n", (fBindlessTextureSupport ? "YES"
: "NO")); | 45 r.appendf("Bindless texture support: %s\n", (fBindlessTextureSupport ? "YES"
: "NO")); |
| 46 r.appendf("Uses precision modifiers: %s\n", (fUsesPrecisionModifiers ? "YES"
: "NO")); |
| 45 r.appendf("Advanced blend equation interaction: %s\n", | 47 r.appendf("Advanced blend equation interaction: %s\n", |
| 46 kAdvBlendEqInteractionStr[fAdvBlendEqInteraction]); | 48 kAdvBlendEqInteractionStr[fAdvBlendEqInteraction]); |
| 47 return r; | 49 return r; |
| 48 } | 50 } |
| 49 | 51 |
| OLD | NEW |