| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright 2013 Google Inc. | 2 * Copyright 2013 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 "GrOvalRenderer.h" | 8 #include "GrOvalRenderer.h" |
| 9 | 9 |
| 10 #include "GrEffect.h" | 10 #include "GrEffect.h" |
| (...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 91 class GLEffect : public GrGLEffect { | 91 class GLEffect : public GrGLEffect { |
| 92 public: | 92 public: |
| 93 GLEffect(const GrBackendEffectFactory& factory, const GrDrawEffect&) | 93 GLEffect(const GrBackendEffectFactory& factory, const GrDrawEffect&) |
| 94 : INHERITED (factory) {} | 94 : INHERITED (factory) {} |
| 95 | 95 |
| 96 virtual void emitCode(GrGLShaderBuilder* builder, | 96 virtual void emitCode(GrGLShaderBuilder* builder, |
| 97 const GrDrawEffect& drawEffect, | 97 const GrDrawEffect& drawEffect, |
| 98 EffectKey key, | 98 EffectKey key, |
| 99 const char* outputColor, | 99 const char* outputColor, |
| 100 const char* inputColor, | 100 const char* inputColor, |
| 101 const TransformedCoordsArray&, |
| 101 const TextureSamplerArray& samplers) SK_OVERRIDE { | 102 const TextureSamplerArray& samplers) SK_OVERRIDE { |
| 102 GrGLShaderBuilder::VertexBuilder* vertexBuilder = builder->getVertex
Builder(); | 103 GrGLShaderBuilder::VertexBuilder* vertexBuilder = builder->getVertex
Builder(); |
| 103 SkASSERT(NULL != vertexBuilder); | 104 SkASSERT(NULL != vertexBuilder); |
| 104 | 105 |
| 105 const CircleEdgeEffect& circleEffect = drawEffect.castEffect<CircleE
dgeEffect>(); | 106 const CircleEdgeEffect& circleEffect = drawEffect.castEffect<CircleE
dgeEffect>(); |
| 106 const char *vsName, *fsName; | 107 const char *vsName, *fsName; |
| 107 vertexBuilder->addVarying(kVec4f_GrSLType, "CircleEdge", &vsName, &f
sName); | 108 vertexBuilder->addVarying(kVec4f_GrSLType, "CircleEdge", &vsName, &f
sName); |
| 108 | 109 |
| 109 const SkString* attrName = | 110 const SkString* attrName = |
| 110 vertexBuilder->getEffectAttributeName(drawEffect.getVertexAttrib
Indices()[0]); | 111 vertexBuilder->getEffectAttributeName(drawEffect.getVertexAttrib
Indices()[0]); |
| (...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 205 class GLEffect : public GrGLEffect { | 206 class GLEffect : public GrGLEffect { |
| 206 public: | 207 public: |
| 207 GLEffect(const GrBackendEffectFactory& factory, const GrDrawEffect&) | 208 GLEffect(const GrBackendEffectFactory& factory, const GrDrawEffect&) |
| 208 : INHERITED (factory) {} | 209 : INHERITED (factory) {} |
| 209 | 210 |
| 210 virtual void emitCode(GrGLShaderBuilder* builder, | 211 virtual void emitCode(GrGLShaderBuilder* builder, |
| 211 const GrDrawEffect& drawEffect, | 212 const GrDrawEffect& drawEffect, |
| 212 EffectKey key, | 213 EffectKey key, |
| 213 const char* outputColor, | 214 const char* outputColor, |
| 214 const char* inputColor, | 215 const char* inputColor, |
| 216 const TransformedCoordsArray&, |
| 215 const TextureSamplerArray& samplers) SK_OVERRIDE { | 217 const TextureSamplerArray& samplers) SK_OVERRIDE { |
| 216 GrGLShaderBuilder::VertexBuilder* vertexBuilder = builder->getVertex
Builder(); | 218 GrGLShaderBuilder::VertexBuilder* vertexBuilder = builder->getVertex
Builder(); |
| 217 SkASSERT(NULL != vertexBuilder); | 219 SkASSERT(NULL != vertexBuilder); |
| 218 | 220 |
| 219 const EllipseEdgeEffect& ellipseEffect = drawEffect.castEffect<Ellip
seEdgeEffect>(); | 221 const EllipseEdgeEffect& ellipseEffect = drawEffect.castEffect<Ellip
seEdgeEffect>(); |
| 220 | 222 |
| 221 const char *vsOffsetName, *fsOffsetName; | 223 const char *vsOffsetName, *fsOffsetName; |
| 222 const char *vsRadiiName, *fsRadiiName; | 224 const char *vsRadiiName, *fsRadiiName; |
| 223 | 225 |
| 224 vertexBuilder->addVarying(kVec2f_GrSLType, "EllipseOffsets", &vsOffs
etName, &fsOffsetName); | 226 vertexBuilder->addVarying(kVec2f_GrSLType, "EllipseOffsets", &vsOffs
etName, &fsOffsetName); |
| (...skipping 123 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 348 class GLEffect : public GrGLEffect { | 350 class GLEffect : public GrGLEffect { |
| 349 public: | 351 public: |
| 350 GLEffect(const GrBackendEffectFactory& factory, const GrDrawEffect&) | 352 GLEffect(const GrBackendEffectFactory& factory, const GrDrawEffect&) |
| 351 : INHERITED (factory) {} | 353 : INHERITED (factory) {} |
| 352 | 354 |
| 353 virtual void emitCode(GrGLShaderBuilder* builder, | 355 virtual void emitCode(GrGLShaderBuilder* builder, |
| 354 const GrDrawEffect& drawEffect, | 356 const GrDrawEffect& drawEffect, |
| 355 EffectKey key, | 357 EffectKey key, |
| 356 const char* outputColor, | 358 const char* outputColor, |
| 357 const char* inputColor, | 359 const char* inputColor, |
| 360 const TransformedCoordsArray&, |
| 358 const TextureSamplerArray& samplers) SK_OVERRIDE { | 361 const TextureSamplerArray& samplers) SK_OVERRIDE { |
| 359 GrGLShaderBuilder::VertexBuilder* vertexBuilder = builder->getVertex
Builder(); | 362 GrGLShaderBuilder::VertexBuilder* vertexBuilder = builder->getVertex
Builder(); |
| 360 SkASSERT(NULL != vertexBuilder); | 363 SkASSERT(NULL != vertexBuilder); |
| 361 | 364 |
| 362 const DIEllipseEdgeEffect& ellipseEffect = drawEffect.castEffect<DIE
llipseEdgeEffect>(); | 365 const DIEllipseEdgeEffect& ellipseEffect = drawEffect.castEffect<DIE
llipseEdgeEffect>(); |
| 363 | 366 |
| 364 SkAssertResult(builder->enableFeature( | 367 SkAssertResult(builder->enableFeature( |
| 365 GrGLShaderBuilder::kStandardDeriva
tives_GLSLFeature)); | 368 GrGLShaderBuilder::kStandardDeriva
tives_GLSLFeature)); |
| 366 | 369 |
| 367 const char *vsOffsetName0, *fsOffsetName0; | 370 const char *vsOffsetName0, *fsOffsetName0; |
| (...skipping 772 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1140 } | 1143 } |
| 1141 | 1144 |
| 1142 // drop out the middle quad if we're stroked | 1145 // drop out the middle quad if we're stroked |
| 1143 int indexCnt = isStroked ? GR_ARRAY_COUNT(gRRectIndices)-6 : GR_ARRAY_CO
UNT(gRRectIndices); | 1146 int indexCnt = isStroked ? GR_ARRAY_COUNT(gRRectIndices)-6 : GR_ARRAY_CO
UNT(gRRectIndices); |
| 1144 target->setIndexSourceToBuffer(indexBuffer); | 1147 target->setIndexSourceToBuffer(indexBuffer); |
| 1145 target->drawIndexed(kTriangles_GrPrimitiveType, 0, 0, 16, indexCnt, &bou
nds); | 1148 target->drawIndexed(kTriangles_GrPrimitiveType, 0, 0, 16, indexCnt, &bou
nds); |
| 1146 } | 1149 } |
| 1147 | 1150 |
| 1148 return true; | 1151 return true; |
| 1149 } | 1152 } |
| OLD | NEW |