-
-
Notifications
You must be signed in to change notification settings - Fork 306
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 Standard Validation Layer Error - VK_IMAGE_TILING_OPTIMAL does not support usage...
#293
Comments
Running the
|
When enumerating the available swapchain formats via the vulkano surface capabilities API for my device (mesa intel on linux), I get the following output:
According to my vulkaninfo output, it looks like neither of these formats seem to support I am also currently unsure whether or not vulkano provides a way to check for whether or not a format does or does not support certain kinds of tiling. @freesig are you aware of any I might be missing? I wonder if maybe this is just not exposed from the API yet. Or maybe it's that vulkano intends to select the tiling kind based on the user's selected format, but this seems incorrect due to the potential for cases like this where there are no compatible tilings? |
Yeh I've noticed that this has popped up in vulkano-rs/vulkano#1190 aswell. I think it's an issue in vulkano because you can query it with vulkan like this:
Where you get back this struct.
Where each of those gives back bit flags indicating what is supported. So it's definitely possible to check. Just so were on the same page this error is about the combination of image in Looking at vulkano it seems that it does grab the optimal supported features for the swapchains format and stores them in the I think what might be going on is that the storage bit is being mistakenly set somewhere. |
Actually I think this is the source of the error. I just had a look at how the intermediate image and swapchain image are used and I can't quiet figure out how this works. If this is the case then we only need the The intermediate image though is a little more complex because it also needs to satisfy the same format. I'm not sure the best way to handle this as we don't know ahead of time how people will use it. Most of the time it will just be I can't off the top of my head think what other uses anyone would need for the intermediate would be so maybe a good start would be:
Atleast with the intermediate you will get a |
Actually now that I think about it, it's not the intermediate image that the user would ever need more usage then: ImageUsage {
color_attachmen: true
..ImageUsage::none()
} Because its in MSAA form. So we actually need more usages on the swapchain itself. For a start: ImageUsage {
transfer_source: true,
color_attachmen: true
..ImageUsage::none()
} |
The following standard lunarg validation layer errors shows up when running the
simple_window.rs
example with validation layers enabled:Not yet certain what the side-effects of the error are but its possible this could be related to the text distortion I'm seeing after applying @freesig's mitchmindtree/vulkano#6 patch.
The text was updated successfully, but these errors were encountered: