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>
57: gfx update to c0ba2019c613432d74e2f13d95a398b220c9c9c4 r=msiglreith a=kvark
The CTS numbers regression is likely caused by the change in the test suite file (1.0.2 instead of 1.0.3), which I had to do because 1.0.3 is gone from latest CTS for some reason.
There is a bunch of errors like "maxMipLevels is not full mip pyramid size" and "maxResourceSize smaller than minimum required size" on the image_format_properties tests that should be an easy target.
Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
56: Support for Vulkan Samples with ICD r=kvark a=msiglreith
Add a few missing piece to get Vulkan Samples working with ICD (dx12, windows):
* Expose device extensions (partially)
* Expose addr to CreateWin32SurfaceKHR
Additionally, fixing vkMapMemory for the `VK_WHOLE_SIZE` case.
Co-authored-by: msiglreith <m.siglreith@gmail.com>