Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(347)

Unified Diff: src/gpu/gl/GrGpuGL.h

Issue 23537028: Enable vertexless shading when path rendering is supported (Closed) Base URL: https://skia.googlecode.com/svn/trunk
Patch Set: Created 7 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: src/gpu/gl/GrGpuGL.h
diff --git a/src/gpu/gl/GrGpuGL.h b/src/gpu/gl/GrGpuGL.h
index 95ae7265f91fb3bf166f35a0e99e49f4584d6c01..50dbc14844fd61adb2ce6191a52e8be4ce52bbda 100644
--- a/src/gpu/gl/GrGpuGL.h
+++ b/src/gpu/gl/GrGpuGL.h
@@ -36,8 +36,14 @@ public:
GrGLVersion glVersion() const { return fGLContext.info().version(); }
GrGLSLGeneration glslGeneration() const { return fGLContext.info().glslGeneration(); }
- // Used by GrGLProgram to bind necessary textures for GrGLEffects.
+ // Used by GrGLProgram and GrGLUniformManager to configure OpenGL state.
void bindTexture(int unitIdx, const GrTextureParams& params, GrGLTexture* texture);
+ void setProjectionMatrix(const SkMatrix& matrix,
+ const SkISize& renderTargetSize,
+ GrSurfaceOrigin renderTargetOrigin);
+ void enableTexGen(int unitIdx, int numComponents, const GrGLfloat* coefficients);
+ void enableTexGen(int unitIdx, int numComponents, const SkMatrix& matrix);
+ void disableUnusedTexGenUnits(int numUsedUnits);
bool programUnitTest(int maxStages);
@@ -212,9 +218,6 @@ private:
#endif
};
- // sets the matrix for path stenciling (uses the GL fixed pipe matrices)
- void flushPathStencilMatrix();
-
// flushes dithering, color-mask, and face culling stat
void flushMiscFixedFunctionState();
@@ -431,6 +434,14 @@ private:
TriState fHWDitherEnabled;
GrRenderTarget* fHWBoundRenderTarget;
SkTArray<GrTexture*, true> fHWBoundTextures;
+
+ struct TexGenData {
+ GrGLenum fMode;
+ GrGLint fNumComponents;
+ GrGLfloat fCoefficients[6];
Kimmo Kinnunen 2013/09/17 09:42:40 I think this should be 9 floats long.
+ };
+ int fHWActiveTexGenUnits;
+ SkTArray<TexGenData, true> fHWTexGenSettings;
///@}
// we record what stencil format worked last time to hopefully exit early

Powered by Google App Engine
This is Rietveld 408576698