Increase limits to support base WebGPU.

 - maxImageDimension3D updated to 2048.
 - maxFragmentCombinedOutputResources updated to 28. This is
   maxColorAttachments + maxPerStageDescriptorStorageBuffers +
   maxPerStageDescriptorStorageImages. 8 + 16 + 4 = 28. WebGPU doesn't
   have a limit for combined fragment outputs and requires at least this
   many.

Bug: dawn:796
Change-Id: Ibda29f98d9fa6685ba8eac4b68dc03b70ae5100d
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/55248
Kokoro-Result: kokoro <noreply+kokoro@google.com>
Reviewed-by: Nicolas Capens <nicolascapens@google.com>
Tested-by: Nicolas Capens <nicolascapens@google.com>
Commit-Queue: Corentin Wallez <cwallez@google.com>
diff --git a/src/Vulkan/VkConfig.hpp b/src/Vulkan/VkConfig.hpp
index 8fffde2..ee850e3 100644
--- a/src/Vulkan/VkConfig.hpp
+++ b/src/Vulkan/VkConfig.hpp
@@ -53,7 +53,7 @@
 {
 	MAX_IMAGE_LEVELS_1D = 14,
 	MAX_IMAGE_LEVELS_2D = 14,
-	MAX_IMAGE_LEVELS_3D = 11,
+	MAX_IMAGE_LEVELS_3D = 12,
 	MAX_IMAGE_LEVELS_CUBE = 14,
 	MAX_IMAGE_ARRAY_LAYERS = 2048,
 	MAX_SAMPLER_LOD_BIAS = 15,
diff --git a/src/Vulkan/VkPhysicalDevice.cpp b/src/Vulkan/VkPhysicalDevice.cpp
index 0254d4b..6d781ce 100644
--- a/src/Vulkan/VkPhysicalDevice.cpp
+++ b/src/Vulkan/VkPhysicalDevice.cpp
@@ -482,7 +482,7 @@
 		sw::MAX_INTERFACE_COMPONENTS,                     // maxFragmentInputComponents
 		sw::RENDERTARGETS,                                // maxFragmentOutputAttachments
 		1,                                                // maxFragmentDualSrcAttachments
-		4,                                                // maxFragmentCombinedOutputResources
+		28,                                               // maxFragmentCombinedOutputResources
 		16384,                                            // maxComputeSharedMemorySize
 		{ 65535, 65535, 65535 },                          // maxComputeWorkGroupCount[3]
 		128,                                              // maxComputeWorkGroupInvocations