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

Side by Side Diff: src/gpu/GrOvalRenderer.cpp

Issue 24853002: Make GPU coord transforms automatic (Closed) Base URL: https://skia.googlecode.com/svn/trunk
Patch Set: rebase Created 7 years, 2 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « src/gpu/GrEffect.cpp ('k') | src/gpu/GrSWMaskHelper.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright 2013 Google Inc. 2 * Copyright 2013 Google Inc.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license that can be 4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file. 5 * found in the LICENSE file.
6 */ 6 */
7 7
8 #include "GrOvalRenderer.h" 8 #include "GrOvalRenderer.h"
9 9
10 #include "GrEffect.h" 10 #include "GrEffect.h"
(...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after
91 class GLEffect : public GrGLEffect { 91 class GLEffect : public GrGLEffect {
92 public: 92 public:
93 GLEffect(const GrBackendEffectFactory& factory, const GrDrawEffect&) 93 GLEffect(const GrBackendEffectFactory& factory, const GrDrawEffect&)
94 : INHERITED (factory) {} 94 : INHERITED (factory) {}
95 95
96 virtual void emitCode(GrGLShaderBuilder* builder, 96 virtual void emitCode(GrGLShaderBuilder* builder,
97 const GrDrawEffect& drawEffect, 97 const GrDrawEffect& drawEffect,
98 EffectKey key, 98 EffectKey key,
99 const char* outputColor, 99 const char* outputColor,
100 const char* inputColor, 100 const char* inputColor,
101 const TransformedCoordsArray&,
101 const TextureSamplerArray& samplers) SK_OVERRIDE { 102 const TextureSamplerArray& samplers) SK_OVERRIDE {
102 GrGLShaderBuilder::VertexBuilder* vertexBuilder = builder->getVertex Builder(); 103 GrGLShaderBuilder::VertexBuilder* vertexBuilder = builder->getVertex Builder();
103 SkASSERT(NULL != vertexBuilder); 104 SkASSERT(NULL != vertexBuilder);
104 105
105 const CircleEdgeEffect& circleEffect = drawEffect.castEffect<CircleE dgeEffect>(); 106 const CircleEdgeEffect& circleEffect = drawEffect.castEffect<CircleE dgeEffect>();
106 const char *vsName, *fsName; 107 const char *vsName, *fsName;
107 vertexBuilder->addVarying(kVec4f_GrSLType, "CircleEdge", &vsName, &f sName); 108 vertexBuilder->addVarying(kVec4f_GrSLType, "CircleEdge", &vsName, &f sName);
108 109
109 const SkString* attrName = 110 const SkString* attrName =
110 vertexBuilder->getEffectAttributeName(drawEffect.getVertexAttrib Indices()[0]); 111 vertexBuilder->getEffectAttributeName(drawEffect.getVertexAttrib Indices()[0]);
(...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after
205 class GLEffect : public GrGLEffect { 206 class GLEffect : public GrGLEffect {
206 public: 207 public:
207 GLEffect(const GrBackendEffectFactory& factory, const GrDrawEffect&) 208 GLEffect(const GrBackendEffectFactory& factory, const GrDrawEffect&)
208 : INHERITED (factory) {} 209 : INHERITED (factory) {}
209 210
210 virtual void emitCode(GrGLShaderBuilder* builder, 211 virtual void emitCode(GrGLShaderBuilder* builder,
211 const GrDrawEffect& drawEffect, 212 const GrDrawEffect& drawEffect,
212 EffectKey key, 213 EffectKey key,
213 const char* outputColor, 214 const char* outputColor,
214 const char* inputColor, 215 const char* inputColor,
216 const TransformedCoordsArray&,
215 const TextureSamplerArray& samplers) SK_OVERRIDE { 217 const TextureSamplerArray& samplers) SK_OVERRIDE {
216 GrGLShaderBuilder::VertexBuilder* vertexBuilder = builder->getVertex Builder(); 218 GrGLShaderBuilder::VertexBuilder* vertexBuilder = builder->getVertex Builder();
217 SkASSERT(NULL != vertexBuilder); 219 SkASSERT(NULL != vertexBuilder);
218 220
219 const EllipseEdgeEffect& ellipseEffect = drawEffect.castEffect<Ellip seEdgeEffect>(); 221 const EllipseEdgeEffect& ellipseEffect = drawEffect.castEffect<Ellip seEdgeEffect>();
220 222
221 const char *vsOffsetName, *fsOffsetName; 223 const char *vsOffsetName, *fsOffsetName;
222 const char *vsRadiiName, *fsRadiiName; 224 const char *vsRadiiName, *fsRadiiName;
223 225
224 vertexBuilder->addVarying(kVec2f_GrSLType, "EllipseOffsets", &vsOffs etName, &fsOffsetName); 226 vertexBuilder->addVarying(kVec2f_GrSLType, "EllipseOffsets", &vsOffs etName, &fsOffsetName);
(...skipping 123 matching lines...) Expand 10 before | Expand all | Expand 10 after
348 class GLEffect : public GrGLEffect { 350 class GLEffect : public GrGLEffect {
349 public: 351 public:
350 GLEffect(const GrBackendEffectFactory& factory, const GrDrawEffect&) 352 GLEffect(const GrBackendEffectFactory& factory, const GrDrawEffect&)
351 : INHERITED (factory) {} 353 : INHERITED (factory) {}
352 354
353 virtual void emitCode(GrGLShaderBuilder* builder, 355 virtual void emitCode(GrGLShaderBuilder* builder,
354 const GrDrawEffect& drawEffect, 356 const GrDrawEffect& drawEffect,
355 EffectKey key, 357 EffectKey key,
356 const char* outputColor, 358 const char* outputColor,
357 const char* inputColor, 359 const char* inputColor,
360 const TransformedCoordsArray&,
358 const TextureSamplerArray& samplers) SK_OVERRIDE { 361 const TextureSamplerArray& samplers) SK_OVERRIDE {
359 GrGLShaderBuilder::VertexBuilder* vertexBuilder = builder->getVertex Builder(); 362 GrGLShaderBuilder::VertexBuilder* vertexBuilder = builder->getVertex Builder();
360 SkASSERT(NULL != vertexBuilder); 363 SkASSERT(NULL != vertexBuilder);
361 364
362 const DIEllipseEdgeEffect& ellipseEffect = drawEffect.castEffect<DIE llipseEdgeEffect>(); 365 const DIEllipseEdgeEffect& ellipseEffect = drawEffect.castEffect<DIE llipseEdgeEffect>();
363 366
364 SkAssertResult(builder->enableFeature( 367 SkAssertResult(builder->enableFeature(
365 GrGLShaderBuilder::kStandardDeriva tives_GLSLFeature)); 368 GrGLShaderBuilder::kStandardDeriva tives_GLSLFeature));
366 369
367 const char *vsOffsetName0, *fsOffsetName0; 370 const char *vsOffsetName0, *fsOffsetName0;
(...skipping 772 matching lines...) Expand 10 before | Expand all | Expand 10 after
1140 } 1143 }
1141 1144
1142 // drop out the middle quad if we're stroked 1145 // drop out the middle quad if we're stroked
1143 int indexCnt = isStroked ? GR_ARRAY_COUNT(gRRectIndices)-6 : GR_ARRAY_CO UNT(gRRectIndices); 1146 int indexCnt = isStroked ? GR_ARRAY_COUNT(gRRectIndices)-6 : GR_ARRAY_CO UNT(gRRectIndices);
1144 target->setIndexSourceToBuffer(indexBuffer); 1147 target->setIndexSourceToBuffer(indexBuffer);
1145 target->drawIndexed(kTriangles_GrPrimitiveType, 0, 0, 16, indexCnt, &bou nds); 1148 target->drawIndexed(kTriangles_GrPrimitiveType, 0, 0, 16, indexCnt, &bou nds);
1146 } 1149 }
1147 1150
1148 return true; 1151 return true;
1149 } 1152 }
OLDNEW
« no previous file with comments | « src/gpu/GrEffect.cpp ('k') | src/gpu/GrSWMaskHelper.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698