-
Notifications
You must be signed in to change notification settings - Fork 21
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Vulkan descriptor_count is hardcoded to large number that increases system requirements #189
Comments
@kanerogers or @Ralith are best equipped to answer this in detail, but choosing 1000 here isn't very high relative to the limits on systems with up-to-date drivers. Many games request tens of thousands of textures in the same way. It's possible that the Vulkan backend should not use combined images and samplers to reach a higher limit on some systems. The iGPU on your chip, the Intel UHD Graphics 620, has much higher limits based on reports submitted on vulkan.gpuinfo.org. There may be something up with your system drivers, and this would likely also impact some games. |
When I looked up the link you gave, I see the following lines (among others):
Where did you see the much higher limits? |
Hi, @patowen! If you look closely at the validation warning you're receiving (emphasis mine), it may shed some more light on the situation:
As @LPGhatguy noted, it's common practice to have very large numbers of sampler descriptors available on even modest hardware. On some devices such as integrated GPUs, these larger descriptor counts are only available when using the If you take a look at What might be happening is that your Vulkan Device was not created with the let mut vulkan_12_features = vk::PhysicalDeviceVulkan12Features::default()
.descriptor_binding_sampled_image_update_after_bind(true);
let mut device_create_info = vk::DeviceCreateInfo::default()
.queue_create_infos(std::slice::from_ref(&queue_info))
.push_next(&mut vulkan_12_features) If that does not work, I'd suggest the following:
We do state in the docs that the Vulkan backend requires at least Vulkan 1.2 and a GPU with support for Please let me know how you go with the above. If you have any further questions or queries, please just let me know. |
Thanks for the helpful explanation, and sorry for the false alarm! After following your advice, I was able to fix everything. I'll leave this issue open because I believe that I've added more details below in case anyone else encounters my issue: Hypermine did not have I did neglect to test the yakui examples before reporting this bug, which was an error on my part. The example on the current version of yakui does work on my laptop. Trying your fix initially did not resolve the issue, but it seems like that was due to being on revision 273a4a1, which was before I neglected to switch to the latest revision before reporting the bug because I assumed I already knew what the issue was and still saw the hardcoded 1000 on the latest revision of the code. I will let this be a lesson not to make too many assumptions. I admittedly was in a bit of a rush when I reported this. Regarding updating my drivers, that is the one thing I did do before testing again and reporting this, as they were out of date. There were additional errors that had gotten fixed when I updated these drivers, so I appreciate that advice. |
Hey, Patrick, No stress at all!! Vulkan is a harsh mistress. 😄 So glad that you got things working. Thanks so much for bringing this to our attention; you're absolutely right that we should add something in the documentation outlining that the Glad that the driver update worked; my uninformed observation is Intel is taking its drivers a bit more seriously with its Arc cards on the market, which should reduce headaches for developers and users alike. |
When trying to play the latest version of Hypermine on my older laptop, I see the following error message:
I am unable to run the game in this state.
Searching through the yakui code, it looks like the number 1000 is hardcoded in a few places, such as
yakui/crates/yakui-vulkan/shaders/main.frag
Line 10 in 136f88d
and
yakui/crates/yakui-vulkan/src/descriptors.rs
Line 24 in 136f88d
This makes yakui's Vulkan code incompatible with some older computers, such as a computer with integrated graphics using an i5-8250U CPU, so I believe it's probably worth fixing.
The text was updated successfully, but these errors were encountered: