Support multisample in GrProxyProvider::MakeFullyLazyProxy
Bug: skia:
Change-Id: I5784a309b8775b9a805f1240e2c6ba7cc1bab70c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208145
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
diff --git a/src/gpu/GrProxyProvider.cpp b/src/gpu/GrProxyProvider.cpp
index d2c47ac..1b30cc6 100644
--- a/src/gpu/GrProxyProvider.cpp
+++ b/src/gpu/GrProxyProvider.cpp
@@ -749,21 +749,21 @@
vkSCB));
}
-sk_sp<GrTextureProxy> GrProxyProvider::MakeFullyLazyProxy(LazyInstantiateCallback&& callback,
- const GrBackendFormat& format,
- Renderable renderable,
- GrSurfaceOrigin origin,
- GrPixelConfig config,
- const GrCaps& caps) {
+sk_sp<GrTextureProxy> GrProxyProvider::MakeFullyLazyProxy(
+ LazyInstantiateCallback&& callback, const GrBackendFormat& format, Renderable renderable,
+ GrSurfaceOrigin origin, GrPixelConfig config, const GrCaps& caps, int sampleCnt) {
GrSurfaceDesc desc;
GrInternalSurfaceFlags surfaceFlags = GrInternalSurfaceFlags::kNoPendingIO;
if (Renderable::kYes == renderable) {
desc.fFlags = kRenderTarget_GrSurfaceFlag;
+ if (sampleCnt > 1 && caps.usesMixedSamples()) {
+ surfaceFlags |= GrInternalSurfaceFlags::kMixedSampled;
+ }
}
desc.fWidth = -1;
desc.fHeight = -1;
desc.fConfig = config;
- desc.fSampleCnt = 1;
+ desc.fSampleCnt = sampleCnt;
return sk_sp<GrTextureProxy>(
(Renderable::kYes == renderable)