diff --git a/Common/GPU/Vulkan/VulkanLoader.cpp b/Common/GPU/Vulkan/VulkanLoader.cpp index cafbdc7e76..22ad227988 100644 --- a/Common/GPU/Vulkan/VulkanLoader.cpp +++ b/Common/GPU/Vulkan/VulkanLoader.cpp @@ -688,7 +688,7 @@ void VulkanLoadInstanceFunctions(VkInstance instance, const VulkanExtensions &en // good for multi-device - not likely we'll ever try that anyway though. void VulkanLoadDeviceFunctions(VkDevice device, const VulkanExtensions &enabledExtensions, uint32_t vulkanApiVersion) { #if !PPSSPP_PLATFORM(IOS_APP_STORE) - INFO_LOG(Log::G3D, "Vulkan device functions loaded."); + INFO_LOG(Log::G3D, "Loading Vulkan device functions. Vulkan API version: %08x (%d.%d)", vulkanApiVersion, VK_VERSION_MAJOR(vulkanApiVersion), VK_VERSION_MINOR(vulkanApiVersion)); LOAD_DEVICE_FUNC(device, vkQueueSubmit); LOAD_DEVICE_FUNC(device, vkQueueWaitIdle); diff --git a/Common/GPU/Vulkan/thin3d_vulkan.cpp b/Common/GPU/Vulkan/thin3d_vulkan.cpp index 1101d38e25..96b51d29a8 100644 --- a/Common/GPU/Vulkan/thin3d_vulkan.cpp +++ b/Common/GPU/Vulkan/thin3d_vulkan.cpp @@ -1055,6 +1055,14 @@ VKContext::VKContext(VulkanContext *vulkan, bool useRenderThread) if (!vulkan->Extensions().KHR_depth_stencil_resolve) { INFO_LOG(Log::G3D, "KHR_depth_stencil_resolve not supported, disabling multisampling"); + multisampleAllowed = false; + } + + if (!vulkan->Extensions().KHR_create_renderpass2) { + WARN_LOG(Log::G3D, "KHR_create_renderpass2 not supported, disabling multisampling"); + multisampleAllowed = false; + } else { + _dbg_assert_(vkCreateRenderPass2 != nullptr); } // We limit multisampling functionality to reasonably recent and known-good tiling GPUs. @@ -1067,7 +1075,8 @@ VKContext::VKContext(VulkanContext *vulkan, bool useRenderThread) caps_.multiSampleLevelsMask = (limits.framebufferColorSampleCounts & limits.framebufferDepthSampleCounts & limits.framebufferStencilSampleCounts); INFO_LOG(Log::G3D, "Multisample levels mask: %d", caps_.multiSampleLevelsMask); } else { - INFO_LOG(Log::G3D, "Not enough depth/stencil resolve modes supported, disabling multisampling."); + INFO_LOG(Log::G3D, "Not enough depth/stencil resolve modes supported, disabling multisampling. Color: %d Depth: %d Stencil: %d", + limits.framebufferColorSampleCounts, limits.framebufferDepthSampleCounts, limits.framebufferStencilSampleCounts); caps_.multiSampleLevelsMask = 1; } } else {