diff options
author | android-autoroll <android-autoroll@skia-corp.google.com.iam.gserviceaccount.com> | 2020-04-27 18:33:20 +0000 |
---|---|---|
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | 2020-04-27 18:33:20 +0000 |
commit | bc4f4f3ba65a2106333e16007ccfebc238f67526 (patch) | |
tree | e8faaebb207beb4cb69037aa09d02fa01284ee03 | |
parent | cb9390e70b1ef7ee9c712c977a06707f27fbcd0e (diff) | |
parent | 46261462fc226f9e2b7ec10abadcffc813102522 (diff) | |
download | skia-bc4f4f3ba65a2106333e16007ccfebc238f67526.tar.gz |
Roll external/skia 7eb1d296c06b..cf8c53436c77 (1 commits) am: 46261462fc
Change-Id: Id6620657fd6dc8f41579adaf90604357d8383856
-rw-r--r-- | src/gpu/ops/GrAAConvexPathRenderer.cpp | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/src/gpu/ops/GrAAConvexPathRenderer.cpp b/src/gpu/ops/GrAAConvexPathRenderer.cpp index d68ce5ff22..bb08cc47d3 100644 --- a/src/gpu/ops/GrAAConvexPathRenderer.cpp +++ b/src/gpu/ops/GrAAConvexPathRenderer.cpp @@ -472,24 +472,27 @@ static void create_vertices(const SegmentArray& segments, color, skipUVs, -segb.fNorms[0].dot(qpts[2]) + c0, 0.0f); - + // We need a negative value that is very large that it won't effect results if it is + // interpolated with. However, the value can't be too large of a negative that it + // effects numerical precision on less powerful GPUs. + static const SkScalar kStableLargeNegativeValue = -SK_ScalarMax/1000000; verts.write(qpts[0] + segb.fNorms[0], color, skipUVs, - -SK_ScalarMax/100, - -SK_ScalarMax/100); + kStableLargeNegativeValue, + kStableLargeNegativeValue); verts.write(qpts[2] + segb.fNorms[1], color, skipUVs, - -SK_ScalarMax/100, - -SK_ScalarMax/100); + kStableLargeNegativeValue, + kStableLargeNegativeValue); SkVector midVec = segb.fNorms[0] + segb.fNorms[1]; midVec.normalize(); verts.write(qpts[1] + midVec, color, skipUVs, - -SK_ScalarMax/100, - -SK_ScalarMax/100); + kStableLargeNegativeValue, + kStableLargeNegativeValue); GrPathUtils::QuadUVMatrix toUV(qpts); toUV.apply(quadVertsBegin, 6, vertexStride, uvOffset); |