Index: src/gpu/gl/builders/GrGLVertexShaderBuilder.h |
diff --git a/src/gpu/gl/builders/GrGLVertexShaderBuilder.h b/src/gpu/gl/builders/GrGLVertexShaderBuilder.h |
index 2f14bd77022e7aa0bd66a4099e951a743d3d56ca..7d6d95e5080c0fe0e8f5018ec57258158f2d9eec 100644 |
--- a/src/gpu/gl/builders/GrGLVertexShaderBuilder.h |
+++ b/src/gpu/gl/builders/GrGLVertexShaderBuilder.h |
@@ -31,6 +31,15 @@ public: |
*/ |
const GrGLShaderVar& positionAttribute() const { return *fPositionVar; } |
+ /** returns the expected position output */ |
+ const char* glPosition() const { return "pos3"; } |
+ |
+ /** returns the expected uviewM matrix */ |
+ // TODO all of this fixed function stuff can live on the GP/PP |
+ const char* uViewM() const { return "uViewM"; } |
+ const char* inPosition() const { return "inPosition"; } |
+ |
+ |
private: |
/* |
* Internal call for GrGLProgramBuilder.addVarying |
@@ -40,12 +49,13 @@ private: |
/* |
* private helpers for compilation by GrGLProgramBuilder |
*/ |
- void setupLocalCoords(); |
- void transformGLToSkiaCoords(); |
+ void transformToNormalizedDeviceSpace(); |
+ //TODO GP itself should setup the uniform view matrix |
+ void setupUniformViewMatrix(); |
+ void setupPositionAndLocalCoords(); |
void setupBuiltinVertexAttribute(const char* inName, GrGLSLExpr1* out); |
void setupBuiltinVertexAttribute(const char* inName, GrGLSLExpr4* out); |
void emitAttributes(const GrGeometryProcessor& gp); |
- void transformSkiaToGLCoords(); |
void bindVertexAttributes(GrGLuint programID); |
bool compileAndAttachShaders(GrGLuint programId, SkTDArray<GrGLuint>* shaderIds) const; |
@@ -61,6 +71,7 @@ private: |
GrGLShaderVar* fPositionVar; |
GrGLShaderVar* fLocalCoordsVar; |
+ const char* fRtAdjustName; |
int fEffectAttribOffset; |
friend class GrGLProgramBuilder; |