Index: src/gpu/GrAARectRenderer.cpp |
diff --git a/src/gpu/GrAARectRenderer.cpp b/src/gpu/GrAARectRenderer.cpp |
index 320b3d7cb07069a39ef6d4ca7580bd0d1e8d4a13..9d6ebce6a2d8e33deaee2c794a2fbcc1bbf4c7ee 100644 |
--- a/src/gpu/GrAARectRenderer.cpp |
+++ b/src/gpu/GrAARectRenderer.cpp |
@@ -39,29 +39,26 @@ public: |
return GrTBackendEffectFactory<GrAlignedRectEffect>::getInstance(); |
} |
- class GLEffect : public GrGLEffect { |
+ class GLEffect : public GrGLVertexEffect { |
public: |
GLEffect(const GrBackendEffectFactory& factory, const GrDrawEffect&) |
: INHERITED (factory) {} |
- virtual void emitCode(GrGLShaderBuilder* builder, |
+ virtual void emitCode(GrGLFullShaderBuilder* builder, |
const GrDrawEffect& drawEffect, |
EffectKey key, |
const char* outputColor, |
const char* inputColor, |
const TransformedCoordsArray&, |
const TextureSamplerArray& samplers) SK_OVERRIDE { |
- GrGLShaderBuilder::VertexBuilder* vertexBuilder = builder->getVertexBuilder(); |
- SkASSERT(NULL != vertexBuilder); |
- |
// setup the varying for the Axis aligned rect effect |
// xy -> interpolated offset |
// zw -> w/2+0.5, h/2+0.5 |
const char *vsRectName, *fsRectName; |
- vertexBuilder->addVarying(kVec4f_GrSLType, "Rect", &vsRectName, &fsRectName); |
+ builder->addVarying(kVec4f_GrSLType, "Rect", &vsRectName, &fsRectName); |
const SkString* attr0Name = |
- vertexBuilder->getEffectAttributeName(drawEffect.getVertexAttribIndices()[0]); |
- vertexBuilder->vsCodeAppendf("\t%s = %s;\n", vsRectName, attr0Name->c_str()); |
+ builder->getEffectAttributeName(drawEffect.getVertexAttribIndices()[0]); |
+ builder->vsCodeAppendf("\t%s = %s;\n", vsRectName, attr0Name->c_str()); |
// TODO: compute all these offsets, spans, and scales in the VS |
builder->fsCodeAppendf("\tfloat insetW = min(1.0, %s.z) - 0.5;\n", fsRectName); |
@@ -98,7 +95,7 @@ public: |
virtual void setData(const GrGLUniformManager& uman, const GrDrawEffect&) SK_OVERRIDE {} |
private: |
- typedef GrGLEffect INHERITED; |
+ typedef GrGLVertexEffect INHERITED; |
}; |
@@ -160,37 +157,34 @@ public: |
return GrTBackendEffectFactory<GrRectEffect>::getInstance(); |
} |
- class GLEffect : public GrGLEffect { |
+ class GLEffect : public GrGLVertexEffect { |
public: |
GLEffect(const GrBackendEffectFactory& factory, const GrDrawEffect&) |
: INHERITED (factory) {} |
- virtual void emitCode(GrGLShaderBuilder* builder, |
+ virtual void emitCode(GrGLFullShaderBuilder* builder, |
const GrDrawEffect& drawEffect, |
EffectKey key, |
const char* outputColor, |
const char* inputColor, |
const TransformedCoordsArray&, |
const TextureSamplerArray& samplers) SK_OVERRIDE { |
- GrGLShaderBuilder::VertexBuilder* vertexBuilder = builder->getVertexBuilder(); |
- SkASSERT(NULL != vertexBuilder); |
- |
// setup the varying for the center point and the unit vector |
// that points down the height of the rect |
const char *vsRectEdgeName, *fsRectEdgeName; |
- vertexBuilder->addVarying(kVec4f_GrSLType, "RectEdge", |
+ builder->addVarying(kVec4f_GrSLType, "RectEdge", |
&vsRectEdgeName, &fsRectEdgeName); |
bsalomon
2013/10/03 14:44:52
can you realign the params?
Chris Dalton
2013/10/03 21:43:22
Done.
|
const SkString* attr0Name = |
- vertexBuilder->getEffectAttributeName(drawEffect.getVertexAttribIndices()[0]); |
- vertexBuilder->vsCodeAppendf("\t%s = %s;\n", vsRectEdgeName, attr0Name->c_str()); |
+ builder->getEffectAttributeName(drawEffect.getVertexAttribIndices()[0]); |
+ builder->vsCodeAppendf("\t%s = %s;\n", vsRectEdgeName, attr0Name->c_str()); |
// setup the varying for width/2+.5 and height/2+.5 |
const char *vsWidthHeightName, *fsWidthHeightName; |
- vertexBuilder->addVarying(kVec2f_GrSLType, "WidthHeight", |
+ builder->addVarying(kVec2f_GrSLType, "WidthHeight", |
&vsWidthHeightName, &fsWidthHeightName); |
const SkString* attr1Name = |
- vertexBuilder->getEffectAttributeName(drawEffect.getVertexAttribIndices()[1]); |
- vertexBuilder->vsCodeAppendf("\t%s = %s;\n", vsWidthHeightName, attr1Name->c_str()); |
+ builder->getEffectAttributeName(drawEffect.getVertexAttribIndices()[1]); |
+ builder->vsCodeAppendf("\t%s = %s;\n", vsWidthHeightName, attr1Name->c_str()); |
// TODO: compute all these offsets, spans, and scales in the VS |
builder->fsCodeAppendf("\tfloat insetW = min(1.0, %s.x) - 0.5;\n", fsWidthHeightName); |
@@ -234,7 +228,7 @@ public: |
virtual void setData(const GrGLUniformManager& uman, const GrDrawEffect&) SK_OVERRIDE {} |
private: |
- typedef GrGLEffect INHERITED; |
+ typedef GrGLVertexEffect INHERITED; |
}; |