Closed YunHsiao closed 4 years ago
I don't think this change is correct. A lot of the features here are used by the code and creating a device that doesn't support them will just create further issues. What specific features aren't supported on AMD hardware?
I was hesitate about this one too. It is definitely fishy, though. The unsupported features are:
storagePushConstant8
shaderFloat16
shaderInt16
And if we skip all the checks there's a validation error stating:
terminator_CreateDevice: Failed in ICD C:\Windows\System32\DriverStore\FileRepository\u0353575.inf_amd64_8e19095ae833d985\B353558\.\amdvlk64.dll vkCreateDevicecall
But as far as I can tell as soon as the checks were added everything works fine. (No mesh shader support of course)
Meanwhile all the texcoord
(f16) data seems to be 0, though. (tried to output it as fragcolor)
Now that I think of it, maybe the driver-specific workaround is just too weak to be included, so I guess I'll close this.
Tested on the latest AMD driver 19.50.29.20, RX550, some of the device features are not available when queried while the actual functionality seems to work fine. Skipping the check would lead to a strange validation error indicating device creation failure.