Revert "Remove some uses of GrBytesPerPixel"
This reverts commit 13f02be29175e2958af80efd0c3a253763907e06.
Reason for revert: Vulkan assert
Original change's description:
> Remove some uses of GrBytesPerPixel
>
> GrPixelConfig needs to go away. Towards that end, switch the Vk and GL backends over to using their native formats.
>
> Change-Id: I92c80eb27e5d639097a40745429721208fe26836
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/213428
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>
TBR=egdaniel@google.com,robertphillips@google.com
Change-Id: I253b6587a33c9195266772386aace1c53e0652cf
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/213468
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
diff --git a/src/gpu/vk/GrVkGpu.cpp b/src/gpu/vk/GrVkGpu.cpp
index 1bfba3f..1e04813 100644
--- a/src/gpu/vk/GrVkGpu.cpp
+++ b/src/gpu/vk/GrVkGpu.cpp
@@ -1445,45 +1445,6 @@
return true;
}
-size_t VkBytesPerPixel(VkFormat vkFormat) {
- switch (vkFormat) {
- case VK_FORMAT_R8_UNORM:
- return 1;
-
- case VK_FORMAT_R5G6B5_UNORM_PACK16:
- case VK_FORMAT_R4G4B4A4_UNORM_PACK16:
- case VK_FORMAT_B4G4R4A4_UNORM_PACK16:
- case VK_FORMAT_R8G8_UNORM:
- case VK_FORMAT_R16_SFLOAT:
- return 2;
-
- case VK_FORMAT_R8G8B8_UNORM:
- return 3;
-
- case VK_FORMAT_R8G8B8A8_UNORM:
- case VK_FORMAT_R8G8B8A8_SRGB:
- case VK_FORMAT_B8G8R8A8_UNORM:
- case VK_FORMAT_B8G8R8A8_SRGB:
- case VK_FORMAT_A2B10G10R10_UNORM_PACK32:
- return 4;
-
- case VK_FORMAT_R16G16B16A16_SFLOAT:
- case VK_FORMAT_R32G32_SFLOAT:
- return 8;
-
- case VK_FORMAT_R32G32B32A32_SFLOAT:
- return 16;
-
- case VK_FORMAT_ETC2_R8G8B8_UNORM_BLOCK:
- default:
- SK_ABORT("Invalid Vk format");
- return 0;
- }
-
- SK_ABORT("Invalid Vk format");
- return 0;
-}
-
#if GR_TEST_UTILS
bool GrVkGpu::createTestingOnlyVkImage(GrPixelConfig config, int w, int h, bool texturable,
bool renderable, GrMipMapped mipMapped, const void* srcData,
@@ -1493,8 +1454,8 @@
SkASSERT(GrMipMapped::kNo == mipMapped);
SkASSERT(!srcData);
}
- VkFormat vkFormat;
- if (!GrPixelConfigToVkFormat(config, &vkFormat)) {
+ VkFormat pixelFormat;
+ if (!GrPixelConfigToVkFormat(config, &pixelFormat)) {
return false;
}
@@ -1542,7 +1503,7 @@
nullptr, // pNext
0, // VkImageCreateFlags
VK_IMAGE_TYPE_2D, // VkImageType
- vkFormat, // VkFormat
+ pixelFormat, // VkFormat
{(uint32_t)w, (uint32_t)h, 1}, // VkExtent3D
mipLevels, // mipLevels
1, // arrayLayers
@@ -1594,7 +1555,7 @@
err = VK_CALL(BeginCommandBuffer(cmdBuffer, &cmdBufferBeginInfo));
SkASSERT(!err);
- size_t bpp = VkBytesPerPixel(vkFormat);
+ size_t bpp = GrBytesPerPixel(config);
SkASSERT(w && h);
const size_t trimRowBytes = w * bpp;
@@ -1808,7 +1769,7 @@
info->fAlloc = alloc;
info->fImageTiling = VK_IMAGE_TILING_OPTIMAL;
info->fImageLayout = initialLayout;
- info->fFormat = vkFormat;
+ info->fFormat = pixelFormat;
info->fLevelCount = mipLevels;
return true;