Index: src/gpu/gl/GrGpuGL.cpp |
diff --git a/src/gpu/gl/GrGpuGL.cpp b/src/gpu/gl/GrGpuGL.cpp |
index f1b6da8261351908a2222cf3df695bfc8bf20c32..6c0a8b45c3fed090a9eb917efa628e9f1c62c7e2 100644 |
--- a/src/gpu/gl/GrGpuGL.cpp |
+++ b/src/gpu/gl/GrGpuGL.cpp |
@@ -1854,7 +1854,6 @@ void GrGpuGL::onGpuDrawPath(const GrPath* path, SkPath::FillType fill) { |
GrGLuint id = static_cast<const GrGLPath*>(path)->pathID(); |
SkASSERT(NULL != this->drawState()->getRenderTarget()); |
SkASSERT(NULL != this->drawState()->getRenderTarget()->getStencilBuffer()); |
- SkASSERT(!fCurrentProgram->hasVertexShader()); |
flushPathStencilSettings(fill); |
const SkStrokeRec& stroke = path->getStroke(); |
@@ -1907,7 +1906,6 @@ void GrGpuGL::onGpuDrawPaths(int pathCount, const GrPath** paths, |
SkASSERT(this->caps()->pathRenderingSupport()); |
SkASSERT(NULL != this->drawState()->getRenderTarget()); |
SkASSERT(NULL != this->drawState()->getRenderTarget()->getStencilBuffer()); |
- SkASSERT(!fCurrentProgram->hasVertexShader()); |
SkASSERT(stroke != SkStrokeRec::kHairline_Style); |
SkAutoMalloc pathData(pathCount * sizeof(GrGLuint)); |
@@ -2399,7 +2397,11 @@ void GrGpuGL::setProjectionMatrix(const SkMatrix& matrix, |
GrGLfloat glMatrix[4 * 4]; |
fHWProjectionMatrixState.getRTAdjustedGLMatrix<4>(glMatrix); |
- GL_CALL(MatrixLoadf(GR_GL_PROJECTION, glMatrix)); |
+ |
+ GrGLenum matrixMode = |
+ this->glStandard() == kGLES_GrGLStandard ? GR_GL_PATH_PROJECTION : GR_GL_PROJECTION; |
+ |
+ GL_CALL(MatrixLoadf(matrixMode, glMatrix)); |
} |
void GrGpuGL::enablePathTexGen(int unitIdx, |
@@ -2479,6 +2481,16 @@ void GrGpuGL::flushPathTexGenSettings(int numUsedTexCoordSets) { |
fHWActivePathTexGenSets = numUsedTexCoordSets; |
} |
+void GrGpuGL::setProgramPathFragmentInputGen(int fragmentInputLocation, |
+ size_t components, |
+ const GrGLfloat* coefficients) { |
+ GL_CALL(ProgramPathFragmentInputGen(fHWProgramID, |
Kimmo Kinnunen
2014/07/01 13:01:21
If we consider the role of GrGpuGL to contain func
|
+ fragmentInputLocation, |
+ GR_GL_OBJECT_LINEAR, |
+ components, |
+ coefficients)); |
+} |
+ |
void GrGpuGL::flushMiscFixedFunctionState() { |
const GrDrawState& drawState = this->getDrawState(); |