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>
59: Implement push constant command r=kvark a=msiglreith
With this and a small change to spirv cross for combined image sampler support we can start tracking support for the Vulkan samples from SaschaWillems.
Co-authored-by: msiglreith <m.siglreith@gmail.com>
58: Add support for blending, buffer copy and indexed drawing r=kvark a=msiglreith
Allows to get `gears` running with dx12+ICD.
We currently don't expose support for high precision depth formats resulting in some artifacts.
Current samples fail due to lack of combined image sampler support for the UI rendering.
But one step after another :p
Co-authored-by: msiglreith <m.siglreith@gmail.com>