Implement initCopySurfaceDstDesc for Vulkan
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1880613002
Review URL: https://codereview.chromium.org/1880613002
diff --git a/src/gpu/vk/GrVkGpu.cpp b/src/gpu/vk/GrVkGpu.cpp
index 280346f..28dce34 100644
--- a/src/gpu/vk/GrVkGpu.cpp
+++ b/src/gpu/vk/GrVkGpu.cpp
@@ -1304,6 +1304,20 @@
return false;
}
+bool GrVkGpu::initCopySurfaceDstDesc(const GrSurface* src, GrSurfaceDesc* desc) const {
+ // Currently we don't support msaa
+ if (src->asRenderTarget() && src->asRenderTarget()->numColorSamples() > 1) {
+ return false;
+ }
+
+ // This will support copying the dst as CopyImage since all of our surfaces require transferSrc
+ // and transferDst usage flags in Vulkan.
+ desc->fOrigin = src->origin();
+ desc->fConfig = src->config();
+ desc->fFlags = kNone_GrSurfaceFlags;
+ return true;
+}
+
void GrVkGpu::onGetMultisampleSpecs(GrRenderTarget* rt, const GrStencilSettings&,
int* effectiveSampleCnt, SkAutoTDeleteArray<SkPoint>*) {
// TODO: stub.