201: Add uniform buffer offset alignment constant r=kvark a=cloudhead
Fixes#158
Also needs to be exposed in `wgpu-rs`.
Happy to change the var name to something different or shorter.
Co-authored-by: Alexis Sellier <alexis@monadic.xyz>
195: Fix tracking and improve draw call validation r=grovesNL a=kvark
Fixes#196
## Validation
Note: the most difficult bit is still missing - we need to know the maximum index in an index buffer. This is not meant to be done in this PR though, the logic is good enough on its own.
## Tracking
Implements a custom iterator with Drop.
Also, reset tracking of resources when a command buffer is done.
Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
194: Fix compute pass barriers r=grovesNL a=kvark
Fixes#193 (supposedly)
@m4b would you be able to confirm?
Basic idea is that we treat commands inside a compute pass to follow the same rule as transfer commands. We could even go as far as alias `type ComputePassEncoderId = CommandEncoderId`, but I thought maybe we can still take advantage of a separate type. Currently it gets both the backend command buffer and the tracker from the primary encoder, only to return them back in place when the pass is done.
Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
192: add necessary windows lib files for vulkan, dx12, dx11 r=kvark a=Napokue
Introduce new argument BACKEND to specify the back-end framework in the hello_triangle_c CMake script. I will update the other examples, hello_remote_c & hello_compute_c (working on this one) in a future PR.
fix#188
Co-authored-by: Timo de Kort <dekort.timo@gmail.com>
191: Use required option for glfw3 r=kvark a=grovesNL
This is minor, but we should force glfw3 to be required for the native hello_triangle example.
Co-authored-by: Joshua Groves <josh@joshgroves.com>
187: Change dynamic and vertex buffer offsets to u64 r=cormac-obrien a=kvark
This change makes offsets consistent across the board.
cc @cormac-obrien
Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
182: Update Makefile r=kvark a=Napokue
More Windows compliant and change "wgpu-bindings" directory to the newly named directory "ffi". Also added some variables.
Co-authored-by: Timo de Kort <tdk@quadira.com>
179: Fix semaphore iteration on submit r=kvark a=kvark
Fixes#167
It's a bit silly: we used to do important work in a generated iterator, but the implementation of dx12 isn't complete enough and doesn't use our iterator at all. It should be fixed on both sides.
Co-authored-by: Dzmitry Malyshau <dmalyshau@mozilla.com>
176: Fix command buffer and surface locking order r=grovesNL a=kvark
As with all the other locking problems, we just ensure that the locks are in the same order as the fields are in `Hub` structure. This is to be enforced at compile time with #66Fixes#174
Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
165: Document how to run example in readme r=kvark a=rukai
This took me a while to figure out, I'm sure others would find it useful in the readme.
Co-authored-by: Rukai <rubickent@gmail.com>