Fix visual glitches on MoltenVK (macOS, iOS)
This commit is contained in:
@@ -526,6 +526,8 @@ RenderPassVulkan::RenderPassVulkan(GPUDeviceVulkan* device, const RenderTargetLa
|
||||
attachment.samples = (VkSampleCountFlagBits)layout.MSAA;
|
||||
#if PLATFORM_ANDROID
|
||||
attachment.loadOp = VK_ATTACHMENT_LOAD_OP_LOAD; // TODO: Adreno 640 has glitches when blend is disabled and rt data not loaded
|
||||
#elif PLATFORM_MAC || PLATFORM_IOS
|
||||
attachment.loadOp = VK_ATTACHMENT_LOAD_OP_LOAD; // MoltenVK seams to have glitches
|
||||
#else
|
||||
attachment.loadOp = layout.BlendEnable ? VK_ATTACHMENT_LOAD_OP_LOAD : VK_ATTACHMENT_LOAD_OP_DONT_CARE;
|
||||
#endif
|
||||
@@ -1683,7 +1685,11 @@ bool GPUDeviceVulkan::Init()
|
||||
|
||||
auto& limits = Limits;
|
||||
limits.HasCompute = GetShaderProfile() == ShaderProfile::Vulkan_SM5 && PhysicalDeviceLimits.maxComputeWorkGroupCount[0] >= GPU_MAX_CS_DISPATCH_THREAD_GROUPS && PhysicalDeviceLimits.maxComputeWorkGroupCount[1] >= GPU_MAX_CS_DISPATCH_THREAD_GROUPS;
|
||||
#if PLATFORM_MAC || PLATFORM_IOS
|
||||
limits.HasTessellation = false; // MoltenVK has artifacts when using tess
|
||||
#else
|
||||
limits.HasTessellation = !!PhysicalDeviceFeatures.tessellationShader && PhysicalDeviceLimits.maxBoundDescriptorSets > (uint32_t)DescriptorSet::Domain;
|
||||
#endif
|
||||
#if PLATFORM_ANDROID || PLATFORM_IOS
|
||||
limits.HasGeometryShaders = false; // Don't even try GS on mobile
|
||||
#else
|
||||
|
||||
Reference in New Issue
Block a user