1186: Fix Changelog Date _Again_ r=trivial a=cwfitzgerald
Someday I'll get this right on the first try
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>
1180: Add dummy structs for indirect command buffers r=cwfitzgerald,kvark a=Wumpf
**Connections**
Review of #1159 which could make more use of this expressiveness patch of having the buffers spelled out.
**Description**
Add dummy structs for indirect command buffers and (bonus!) fix missing IndirectBufferOverrun error for IndirectDispatch.
**Testing**
squinting at it only 👁️👁️
Co-authored-by: Andreas Reich <r_andreas2@web.de>
1178: Add DepthBiasState, rename StencilStateFace r=kvark a=kvark
**Connections**
None
**Description**
Found the error in the `StencilStateFace` name and fixed it here.
Also identified that depth bias is a noticeable ergonomic offender, so moving it out into a struct, similar to what we have with stencil.
**Testing**
tested on wgpu-rs examples.
Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
1177: Update gfx with the new iterator API r=kvark a=kvark
**Connections**
Gets https://github.com/gfx-rs/gfx/pull/3615 and https://github.com/gfx-rs/gfx/pull/3619
**Description**
Avoids a few `collect()` calls when talking to gfx.
**Testing**
just local playtests
Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
1176: Rewrite RenderPipelineDescriptor according to aspects r=grovesNL,cwfitzgerald a=kvark
**Connections**
Fixes#1166
**Description**
Totally re-imagines the structure tree for describing the rendering pipeline, based on the aspects instead of logical steps.
**Testing**
Just local testing. I don't think there is any concern that these changes might not work, they just need the clients to adapt.
Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
1173: Handle zero-sized bindings as an error r=cwfitzgerald a=kvark
**Connections**
Fixes#1165
**Description**
Adds buffer IDs to the binding errors, also adds a variant for zero sized bindings.
**Testing**
Tested on a hand-written example.
Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
1170: Don't build shader interface without the validation flag r=kvark a=kvark
**Connections**
Fixes#1169
**Description**
We used to try building the interface of a Naga module before (!) the validation has happened, and even without a check for the validation flag.
**Testing**
Untested.
Co-authored-by: Dzmitry Malyshau <dmalyshau@mozilla.com>
1167: Remove temporary allocation for gpu-descriptor r=kvark a=kvark
This is no longer needed as https://github.com/zakarumych/gpu-descriptor/pull/10 is merged
Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
1164: Update naga to gfx-7 r=kvark a=kvark
**Connections**
Includes https://github.com/gfx-rs/gfx/pull/3612
**Description**
Carries a bunch of important Naga improvements.
**Testing**
Just local playtests
Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
1161: Fix replaying issues with dropped texture views r=urgent a=kvark
**Connections**
Fixes replaying of https://github.com/gfx-rs/wgpu/issues/1158#issuecomment-763272796
**Description**
The main fix is calling `maintain` in the player before getting the new view from the swapchain. That allows the device to properly remove the ID that is just about to be used.
**Testing**
Tested on that API trace.
Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
1155: fix the size checks in transfer buffer to image commands r=cwfitzgerald a=Vengarioth
**Connections**
_none_
**Description**
It's fixing a trivial bug in which Extend3d was checked against a with of 0 two times, presumably instread checking depth as well.
**Testing**
Ran the tests and ran it with bevy - still worked.
Co-authored-by: Vengarioth | Andreas Fischer <opensource@deviru.de>
1151: Update gfx and naga to gfx-6 tag r=cwfitzgerald a=kvark
**Connections**
Fixes#1149
Regression from https://github.com/gfx-rs/gfx/pull/3573
**Description**
The physical devices held references to `RawInstance` in Vulkan backend, and we weren't cleaning them up.
Note: an alternative fix could be in `gfx-backend-vulkan` - to move the `Entry` into `RawInstance`, thus delaying the shutdown. I didn't go this way because that would be less explicit.
**Testing**
Tested on wgpu-rs examples
Co-authored-by: Dzmitry Malyshau <dmalyshau@mozilla.com>
1128: Add pipeline statistics and timeline queries r=kvark a=cwfitzgerald
**Connections**
Closes#721
**Description**
This adds Pipeline Statistics queries and Timeline queries. Shoutout to @z2oh for doing a good chunk of the work to enable this feature.
Currently blocked on both https://github.com/gfx-rs/gfx/pull/3563 and rollup of gfx-hal mutability changes, but is ready to review.
**Testing**
Tested in various ways on the hello-compute and hello-triangle example, tested validation extensively. Queries will be permanently added to the mipmap example once the wgpu-rs PR is finished.
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>
1147: Update render pass and framebuffers logic to the latest gfx-hal r=cwfitzgerald a=kvark
**Connections**
Updates gfx-hal with the latest major changes of https://github.com/gfx-rs/gfx/pull/3571
**Description**
There is no need to track framebuffers at all any more! Since they don't contain images, we can keep them permanently.
There is no need to create and delete framebuffers for the swapchain either. Lots of non-trivial code is gone 🎉
The PR also removes one of the mutexes that the device holds.
**Testing**
Will be tested on wgpu-rs
Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>