Turn NVPR on by default (but off in tools).
BUG=skia:2042
Committed: http://code.google.com/p/skia/source/detail?r=13164
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/144003006
git-svn-id: http://skia.googlecode.com/svn/trunk@13176 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/samplecode/SampleApp.cpp b/samplecode/SampleApp.cpp
index 127646d..3b953f4 100644
--- a/samplecode/SampleApp.cpp
+++ b/samplecode/SampleApp.cpp
@@ -210,6 +210,7 @@
fMSAASampleCount = msaaSampleCount;
SkASSERT(NULL == fCurIntf);
+ SkAutoTUnref<const GrGLInterface> glInterface;
switch (win->getDeviceType()) {
case kRaster_DeviceType:
// fallthrough
@@ -217,21 +218,25 @@
// fallthrough
case kGPU_DeviceType:
// all these guys use the native interface
- fCurIntf = GrGLCreateNativeInterface();
+ glInterface.reset(GrGLCreateNativeInterface());
break;
#if SK_ANGLE
case kANGLE_DeviceType:
- fCurIntf = GrGLCreateANGLEInterface();
+ glInterface.reset(GrGLCreateANGLEInterface());
break;
#endif // SK_ANGLE
case kNullGPU_DeviceType:
- fCurIntf = GrGLCreateNullInterface();
+ glInterface.reset(GrGLCreateNullInterface());
break;
default:
SkASSERT(false);
break;
}
+ // Currently SampleApp does not use NVPR. TODO: Provide an NVPR device type that is skipped
+ // when the driver doesn't support NVPR.
+ fCurIntf = GrGLInterfaceRemoveNVPR(glInterface.get());
+
SkASSERT(NULL == fCurContext);
fCurContext = GrContext::Create(kOpenGL_GrBackend, (GrBackendContext) fCurIntf);
@@ -239,6 +244,8 @@
// We need some context and interface to see results
SkSafeUnref(fCurContext);
SkSafeUnref(fCurIntf);
+ fCurContext = NULL;
+ fCurIntf = NULL;
SkDebugf("Failed to setup 3D");
win->detach();