aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar mtklein <mtklein@chromium.org>2014-11-05 12:28:26 -0800
committerGravatar Commit bot <commit-bot@chromium.org>2014-11-05 12:28:26 -0800
commit31f88675718966bbb7f09718b40de10c7e214739 (patch)
tree5c3d2b74b9a9a22cecfd9a934eaf9358dcd2fa53
parent820dd6c335411aad889c1d7e8a857642ecd87e30 (diff)
Turn on NVPR 4x MSAA by default when supported in DM and nanobench.
This brings DM and nanobench's default configs in line with GM's. BUG=skia: Review URL: https://codereview.chromium.org/704563003
-rw-r--r--dm/DMGpuGMTask.cpp8
-rw-r--r--dm/DMGpuSupport.h2
-rw-r--r--include/gpu/gl/GrGLFunctions.h1
-rw-r--r--tools/flags/SkCommonFlags.cpp2
4 files changed, 11 insertions, 2 deletions
diff --git a/dm/DMGpuGMTask.cpp b/dm/DMGpuGMTask.cpp
index fb170a26b9..2890483f55 100644
--- a/dm/DMGpuGMTask.cpp
+++ b/dm/DMGpuGMTask.cpp
@@ -22,6 +22,8 @@ GpuGMTask::GpuGMTask(const char* config,
, fSampleCount(sampleCount)
{}
+static bool gAlreadyWarned[GrContextFactory::kGLContextTypeCnt][kGrGLStandardCnt];
+
void GpuGMTask::draw(GrContextFactory* grFactory) {
SkImageInfo info = SkImageInfo::Make(SkScalarCeilToInt(fGM->width()),
SkScalarCeilToInt(fGM->height()),
@@ -30,7 +32,11 @@ void GpuGMTask::draw(GrContextFactory* grFactory) {
SkAutoTUnref<SkSurface> surface(NewGpuSurface(grFactory, fContextType, fGpuAPI, info,
fSampleCount));
if (!surface) {
- this->fail("Could not create context for the config and the api.");
+ if (!gAlreadyWarned[fContextType][fGpuAPI]) {
+ SkDebugf("FYI: couldn't create GPU context, type %d API %d. Will skip.\n",
+ fContextType, fGpuAPI);
+ gAlreadyWarned[fContextType][fGpuAPI] = true;
+ }
return;
}
SkCanvas* canvas = surface->getCanvas();
diff --git a/dm/DMGpuSupport.h b/dm/DMGpuSupport.h
index af6270dfc3..90b0ea55cf 100644
--- a/dm/DMGpuSupport.h
+++ b/dm/DMGpuSupport.h
@@ -36,6 +36,7 @@ enum GrGLStandard {
kGL_GrGLStandard,
kGLES_GrGLStandard
};
+static const int kGrGLStandardCnt = 3;
class GrContextFactory {
public:
@@ -47,6 +48,7 @@ public:
kNVPR_GLContextType = 0,
kNative_GLContextType = 0,
kNull_GLContextType = 0;
+ static const int kGLContextTypeCnt = 1;
void destroyContexts() {}
void abandonContexts() {}
diff --git a/include/gpu/gl/GrGLFunctions.h b/include/gpu/gl/GrGLFunctions.h
index dd62085012..0b7beb601f 100644
--- a/include/gpu/gl/GrGLFunctions.h
+++ b/include/gpu/gl/GrGLFunctions.h
@@ -22,6 +22,7 @@ enum GrGLStandard {
kGL_GrGLStandard,
kGLES_GrGLStandard,
};
+static const int kGrGLStandardCnt = 3;
///////////////////////////////////////////////////////////////////////////////
diff --git a/tools/flags/SkCommonFlags.cpp b/tools/flags/SkCommonFlags.cpp
index 99d05c15f7..4d329c5f30 100644
--- a/tools/flags/SkCommonFlags.cpp
+++ b/tools/flags/SkCommonFlags.cpp
@@ -7,7 +7,7 @@
#include "SkCommonFlags.h"
-DEFINE_string(config, "565 8888 pdf gpu nonrendering angle",
+DEFINE_string(config, "565 8888 pdf gpu nonrendering angle nvprmsaa4",
"Options: 565 8888 pdf gpu nonrendering msaa4 msaa16 nvprmsaa4 nvprmsaa16 "
"gpunull gpudebug angle mesa");