sultim-t / RayTracedGL1

MIT License
139 stars 32 forks source link

VkCreateDevice requests unavailable features ( support for Intel ARC ) #41

Open mjtaryma opened 3 months ago

mjtaryma commented 3 months ago

VkCreateDevice called by RTGL is requesting features that are not supported by the Intel ARC. This causes a premature crash due to the call failing. Those features seem to be not critical ( Disabling those features enables gzdoom-rt and prboom-plus-rt on ARC A770 ).

Here is the list: VkPhysicalDeviceFeatures.shaderStorageImageMultisample VkPhysicalDeviceFeatures.shaderFloat64 VkPhysicalDeviceFeatures.shaderResourceMinLod

Previous call to vkGetPhysicalDeviceFeatures2 returns properly and provides the right data to the application. Fix options:

  1. Disable those features in hard-coded list in VulkanDevice_Init.cpp
  2. OR VkPhysicalDeviceFeatures obtained through vkGetPhysicalDeviceFeatures2 should be used for device creation.
SharkyRawr commented 2 months ago

Thanks for this, I made a fork with your changes and minor fixes to get CI running again (outdated VulkanSDK download URL gets 404). Action artifacts are available and this RayTracedGL1.dll works as a drop-in replacment for Half-Life Raytraced on my Arc A770.

cdozdil commented 2 months ago

Just debugged and disabled same features and got it working, should have checked here first 😅