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 #include "GrGLEffectMatrix.h" | 8 #include "GrGLEffectMatrix.h" |
9 #include "GrDrawEffect.h" | 9 #include "GrDrawEffect.h" |
10 #include "GrTexture.h" | 10 #include "GrTexture.h" |
(...skipping 30 matching lines...) Expand all Loading... |
41 key |= kIdentity_MatrixType; | 41 key |= kIdentity_MatrixType; |
42 } | 42 } |
43 return key; | 43 return key; |
44 } | 44 } |
45 | 45 |
46 GrSLType GrGLEffectMatrix::emitCode(GrGLShaderBuilder* builder, | 46 GrSLType GrGLEffectMatrix::emitCode(GrGLShaderBuilder* builder, |
47 EffectKey key, | 47 EffectKey key, |
48 SkString* fsCoordName, | 48 SkString* fsCoordName, |
49 SkString* vsCoordName, | 49 SkString* vsCoordName, |
50 const char* suffix) { | 50 const char* suffix) { |
51 // TODO: Handle vertexless shaders here before we start enabling them. | |
52 GrGLShaderBuilder::VertexBuilder* vertexBuilder = builder->getVertexBuilder(
); | 51 GrGLShaderBuilder::VertexBuilder* vertexBuilder = builder->getVertexBuilder(
); |
53 SkASSERT(NULL != vertexBuilder); | 52 SkASSERT(NULL != vertexBuilder); |
54 | 53 |
55 GrSLType varyingType = kVoid_GrSLType; | 54 GrSLType varyingType = kVoid_GrSLType; |
56 const char* uniName; | 55 const char* uniName; |
57 key &= kKeyMask; | 56 key &= kKeyMask; |
58 switch (key & kMatrixTypeKeyMask) { | 57 switch (key & kMatrixTypeKeyMask) { |
59 case kIdentity_MatrixType: | 58 case kIdentity_MatrixType: |
60 fUniType = kVoid_GrSLType; | 59 fUniType = kVoid_GrSLType; |
61 uniName = NULL; | 60 uniName = NULL; |
(...skipping 171 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
233 if (!fPrevMatrix.cheapEqualTo(combined)) { | 232 if (!fPrevMatrix.cheapEqualTo(combined)) { |
234 uniformManager.setSkMatrix(fUni, combined); | 233 uniformManager.setSkMatrix(fUni, combined); |
235 fPrevMatrix = combined; | 234 fPrevMatrix = combined; |
236 } | 235 } |
237 break; | 236 break; |
238 } | 237 } |
239 default: | 238 default: |
240 GrCrash("Unexpected uniform type."); | 239 GrCrash("Unexpected uniform type."); |
241 } | 240 } |
242 } | 241 } |
OLD | NEW |