OLD | NEW |
1 | 1 |
2 /* | 2 /* |
3 * Copyright 2012 Google Inc. | 3 * Copyright 2012 Google Inc. |
4 * | 4 * |
5 * Use of this source code is governed by a BSD-style license that can be | 5 * Use of this source code is governed by a BSD-style license that can be |
6 * found in the LICENSE file. | 6 * found in the LICENSE file. |
7 */ | 7 */ |
8 | 8 |
9 #include "GrAAConvexPathRenderer.h" | 9 #include "GrAAConvexPathRenderer.h" |
10 | 10 |
(...skipping 488 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
499 * window space (y-down). If either the third or fourth component of the interpo
lated | 499 * window space (y-down). If either the third or fourth component of the interpo
lated |
500 * vertex coord is > 0 then the pixel is considered outside the edge. This is us
ed to | 500 * vertex coord is > 0 then the pixel is considered outside the edge. This is us
ed to |
501 * attempt to trim to a portion of the infinite quad. | 501 * attempt to trim to a portion of the infinite quad. |
502 * Requires shader derivative instruction support. | 502 * Requires shader derivative instruction support. |
503 */ | 503 */ |
504 | 504 |
505 class QuadEdgeEffect : public GrGeometryProcessor { | 505 class QuadEdgeEffect : public GrGeometryProcessor { |
506 public: | 506 public: |
507 | 507 |
508 static GrGeometryProcessor* Create() { | 508 static GrGeometryProcessor* Create() { |
509 GR_CREATE_STATIC_PROCESSOR(gQuadEdgeEffect, QuadEdgeEffect, ()); | 509 return SkNEW(QuadEdgeEffect); |
510 gQuadEdgeEffect->ref(); | |
511 return gQuadEdgeEffect; | |
512 } | 510 } |
513 | 511 |
514 virtual ~QuadEdgeEffect() {} | 512 virtual ~QuadEdgeEffect() {} |
515 | 513 |
516 virtual const char* name() const SK_OVERRIDE { return "QuadEdge"; } | 514 virtual const char* name() const SK_OVERRIDE { return "QuadEdge"; } |
517 | 515 |
518 const GrAttribute* inPosition() const { return fInPosition; } | 516 const GrAttribute* inPosition() const { return fInPosition; } |
519 const GrAttribute* inQuadEdge() const { return fInQuadEdge; } | 517 const GrAttribute* inQuadEdge() const { return fInQuadEdge; } |
520 | 518 |
521 class GLProcessor : public GrGLGeometryProcessor { | 519 class GLProcessor : public GrGLGeometryProcessor { |
(...skipping 192 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
714 vOffset, // start vertex | 712 vOffset, // start vertex |
715 0, // start index | 713 0, // start index |
716 draw.fVertexCnt, | 714 draw.fVertexCnt, |
717 draw.fIndexCnt, | 715 draw.fIndexCnt, |
718 &devBounds); | 716 &devBounds); |
719 vOffset += draw.fVertexCnt; | 717 vOffset += draw.fVertexCnt; |
720 } | 718 } |
721 | 719 |
722 return true; | 720 return true; |
723 } | 721 } |
OLD | NEW |