* impl present_wait feature
* handle timeout case
* add missing doc
* document the return type of wait_for_present
* impl check for VUID-04999
* don't enforce gt if present_id is zero
* impl PresentInfoExt
* Remove NonZeroU64 from wait_for_present in favor of an error
* fix gl-interop example
* fix docs and fmt
* PresentInfoExt -> PresentInfo, Added swapchain + index to info
* fix doc test, didn't save file...
* fix gl-interop
* Remove Whitespace
* opt-in portability
* Only enable portability flag if extension is present
Automatically enable khr_portability_subset on Device; Remove required_extensions from PhysicalDevice & Device
* enable InstanceCreateInfo.enumerate_portability on all examples
* add additional documentation for enumerate_portability
* Use only the selected range of buffer and image views in synchronization
* Improve render pass commands, more validation
Co-authored-by: Austin Johnson <me@austinj.work>
* Allow `SyncCommandBufferBuilder` commands to specify the access range
* Allow `SyncCommandBufferBuilder` commands to specify the access range
* Better handling of image initialization
* Small fix
* Rewrite copy commands
* Better handling of maintenance1
* Small leftovers
* Remove conflict_key
* Convert creation of `Instance` and `Device` to use a builder
* Big oops
* Add `InstanceCreateInfo` and `DeviceCreateInfo`
* Doc fix
* impl FromStr for Version, remove elidable qf2
* Allow `copy_image` source and destination to be the same image
The doc: `srcImage and dstImage can be the same image or alias the same
memory`.
This was achieved by locking only one image exclusively if both are the same.
* Allow `blit_image` and `copy_buffer` to have the same src/dest buffers
Regarding this and the previous commits, I noticed an important note in
the docs.
`regions must not overlap`
Before this, it was not important check for us to do, since we can't
have overlapping regions if both buffers are different. But now we must
add some checks to make sure its safe to use these functions while also
allowing for shared buffers between src and dest.
* Added bounds and overlapping checks for `copy_buffer`
* Added overlap checks for `blit_image` and `copy_image`
Created utility file `src/command_buffer/validity/ranges.rs` which hold
functions that help compute if there is overlap in regions.
* Fixed bug in regions overlap check
It should be ANDed together and not ORed
* Added `image_blit` to the `image-self-copy` example
* Added example for `copy_buffer_dimensions` using `basic-compute-shaders`
Also updated copyright year for this and the `image-self-copy-blit`
example.