75: Use rasterizer discard r=kvark a=grovesNL
Stop setting the fragment shader and other states as stated in the spec when rasterizer discard is set. (Should anything else be disabled?)
Fixes segfaults in `dEQP-VK.api.descriptor_set.descriptor_set_layout_lifetime.graphics` on Metal (with gfx-rs/gfx#2035 fix)
Co-authored-by: Joshua Groves <josh@joshgroves.com>
74: [WIP] Implement resolve_image r=kvark a=AIOOB
This change causes `make cts` to lock up my computer after it gets to a certain test, that test alone doesn't crash it but something seems to reach a critical point. I have no idea how to debug this, so good luck if you decide to replicate this and make sure everything is saved 😄
Co-authored-by: AIOOB <jack@rickard.plus.com>
73: Store mip_levels and array_layers for images r=kvark a=AIOOB
Vulkan allows users to not specify the upper bound in `SubresourceRange` and `SubresourceLayers`, this stores the values when the image is created in order to fill in these values if they are not specified.
It also adds an `expect` function to `Image` and `Buffer` to allow simpler retrieval of a bound image.
Co-authored-by: AIOOB <jack@rickard.plus.com>
68: Multisampling support r=kvark a=msiglreith
* Update gfx-rs version
* Support multisampling
* Fix handling of VK_WHOLE_SIZE for flushes and invalidation
Co-authored-by: msiglreith <m.siglreith@gmail.com>
67: Fix some null handles r=kvark a=grovesNL
Fixes some null handle CTS tests (from the wiki):
- dEQP-VK.api.null_handle.destroy_command_pool
- dEQP-VK.api.null_handle.destroy_device
- dEQP-VK.api.null_handle.free_command_buffers
Technically the `instance.unbox().unwrap().adapters` change wasn't needed for these three, but it may have been impacting other tests anyway.
Co-authored-by: Joshua Groves <josh@joshgroves.com>
64: Depth bias and dependency bump r=kvark a=msiglreith
Will update the dx12 vulkan sample coverage accordingly, should move a few samples to the 'Working' state then.
Co-authored-by: msiglreith <m.siglreith@gmail.com>