Update params to get better packing for DF path atlas
authorjvanverth <jvanverth@google.com>
Tue, 15 Sep 2015 20:11:11 +0000 (13:11 -0700)
committerCommit bot <commit-bot@chromium.org>
Tue, 15 Sep 2015 20:11:11 +0000 (13:11 -0700)
Gets about a 4x speedup on desk_chalkboard.skp.

Review URL: https://codereview.chromium.org/1345823002

src/gpu/batches/GrAADistanceFieldPathRenderer.cpp

index 45a3d65..f06553c 100644 (file)
@@ -23,9 +23,9 @@
 #include "SkDistanceFieldGen.h"
 #include "SkRTConf.h"
 
-#define ATLAS_TEXTURE_WIDTH 1024
+#define ATLAS_TEXTURE_WIDTH 2048
 #define ATLAS_TEXTURE_HEIGHT 2048
-#define PLOT_WIDTH  256
+#define PLOT_WIDTH  512
 #define PLOT_HEIGHT 256
 
 #define NUM_PLOTS_X   (ATLAS_TEXTURE_WIDTH / PLOT_WIDTH)
@@ -38,8 +38,8 @@ static int g_NumFreedPaths = 0;
 
 // mip levels
 static const int kSmallMIP = 32;
-static const int kMediumMIP = 78;
-static const int kLargeMIP = 192;
+static const int kMediumMIP = 72;
+static const int kLargeMIP = 162;
 
 // Callback to clear out internal path cache when eviction occurs
 void GrAADistanceFieldPathRenderer::HandleEviction(GrBatchAtlas::AtlasID id, void* pr) {
@@ -82,7 +82,7 @@ GrAADistanceFieldPathRenderer::~GrAADistanceFieldPathRenderer() {
 
 ////////////////////////////////////////////////////////////////////////////////
 bool GrAADistanceFieldPathRenderer::onCanDrawPath(const CanDrawPathArgs& args) const {
-    
+
     // TODO: Support inverse fill
     // TODO: Support strokes
     if (!args.fShaderCaps->shaderDerivativeSupport() || !args.fAntiAlias ||