| Index: src/gpu/gl/GrGLGeometryProcessor.h
|
| diff --git a/src/gpu/gl/GrGLGeometryProcessor.h b/src/gpu/gl/GrGLGeometryProcessor.h
|
| index 747d82ab4859f0b76f244562d4ae1a39671eb5d4..88baecf879886d3662752630396463da9df3b393 100644
|
| --- a/src/gpu/gl/GrGLGeometryProcessor.h
|
| +++ b/src/gpu/gl/GrGLGeometryProcessor.h
|
| @@ -41,7 +41,7 @@ public:
|
| }
|
|
|
| protected:
|
| - // A helper for subclasses which don't have an explicit local matrix
|
| + // Emit a uniform matrix for each coord transform.
|
| void emitTransforms(GrGLGPBuilder* gp,
|
| const GrShaderVar& posVar,
|
| const char* localCoords,
|
| @@ -50,6 +50,7 @@ protected:
|
| this->emitTransforms(gp, posVar, localCoords, SkMatrix::I(), tin, tout);
|
| }
|
|
|
| + // Emit pre-transformed coords as a vertex attribute per coord-transform.
|
| void emitTransforms(GrGLGPBuilder*,
|
| const GrShaderVar& posVar,
|
| const char* localCoords,
|
| @@ -57,6 +58,12 @@ protected:
|
| const TransformsIn&,
|
| TransformsOut*);
|
|
|
| + // caller has emitted transforms via attributes
|
| + void emitTransforms(GrGLGPBuilder*,
|
| + const char* localCoords,
|
| + const TransformsIn& tin,
|
| + TransformsOut* tout);
|
| +
|
| struct GrGPArgs {
|
| // The variable used by a GP to store its position. It can be
|
| // either a vec2 or a vec3 depending on the presence of perspective.
|
|
|