Commit Graph

551 Commits

Author SHA1 Message Date
Dzmitry Malyshau
e84ae4a4b2 Feature-less backend selection
This PR removes optional backend features in favor of run-time
selection at the `request_adapter` entry point. Adapters from all
supported gpu backends on the platform are reported.

It also makes gfx-rs dependency to be public (for now).
2019-08-27 20:55:49 -04:00
Dzmitry Malyshau
6fdeea23c5 Refactor Id logic.
This change merges `Id` with `GenericId` and abstracts away its contents, exposing itself as just u64. This will allow us to encode the backend type into it, in addition to index and epoch.

It also refactors `TypedId` to have a single function extracting all the fields, since this is how it's used all the times anyway.
2019-08-27 20:54:30 -04:00
bors[bot]
27af484f6c
Merge #307
307: Add cubemap hint to multiple of 6 layers textures r=kvark a=LaylConway

This is an attempt at addressing #306. Vulkan has specific requirements on what can and can't be marked with the CUBE hint.

Co-authored-by: Layl <2385329-layl@users.noreply.gitlab.com>
2019-08-23 16:07:15 +00:00
Layl
1995280dc9 Add cubemap hint to 2D multiple of 6 layers textures 2019-08-23 18:02:53 +02:00
bors[bot]
08b2092d33
Merge #305
305: Fix Instance init on Windows r=eternal a=kvark

Fixes  #303

Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
Co-authored-by: Dzmitry Malyshau <dmalyshau@mozilla.com>
2019-08-22 15:30:31 +00:00
Dzmitry Malyshau
87b61d206c Fix instance init on Windows and check it on CI 2019-08-22 11:29:45 -04:00
Dzmitry Malyshau
9cc7886782 Quick fix for Vulkan init on Windows 2019-08-22 10:17:31 -04:00
bors[bot]
1fcbfe0353
Merge #302
302: Fixed pipeline barriers that are not transitions r=grovesNL a=kvark

The actual fix is a one-liner: `u.start != u.end` bit in `PendingTransition::record`. The case is relatively new - as of #281, which I haven't tested extensively.
The PR also improves our logging for further assistance with similar issues... but the most annoying piece is that I would find this much much earlier if I didn't ignore the result here: `let _ = state.change(...)`. Let it be the lesson to all of us :)

Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2019-08-22 01:07:53 +00:00
Dzmitry Malyshau
a9cfde1d9d Fixed pipeline barriers that are not transitions 2019-08-21 13:11:46 -04:00
Dzmitry Malyshau
dfb4420d5c Changelog update for 0.3 2019-08-21 09:32:09 -04:00
bors[bot]
c480f7d837
Merge #301
301: Raw window handle support instead of winit r=grovesNL a=kvark

This removes `winit` and paves the way for https://github.com/gfx-rs/wgpu-rs/issues/64

Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2019-08-21 04:04:45 +00:00
Dzmitry Malyshau
1d36203c9a Raw window handle support instead of winit 2019-08-20 23:41:14 -04:00
bors[bot]
9c2019478a
Merge #298
298: Fix cbindgen flags r=grovesNL a=kvark



Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2019-08-20 23:24:57 +00:00
bors[bot]
150d2261b3
Merge #299
299: Rename buffer to encoder in wgpu_command_buffer_copy_* functions r=kvark a=yanchith

This also regenerates `wgpu.h` and updates uses of `wgpu_command_buffer_copy_buffer_to_buffer` in `compute/main.c`.

EDIT: all good...
~Note that I couldn't regenerate `wgpu-remote.h` because of the following cbindgen error:~

```
ERROR: Cannot find a mangling for generic path GenericPath { path: Path { name: "Adapter" }, export_name: "Adapter", generics: [Path(GenericPath { path: Path { name: "Backend" }, export_name: "Backend", generics: [], ctype: None })], ctype: None }. This usually means that a type referenced by this generic was incompatible or not found.
```

Should we investigate before merging? Maybe I am just using an unlucky nightly?

Closes: #250 

Co-authored-by: yanchith <yanchi.toth@gmail.com>
2019-08-20 20:15:32 +00:00
bors[bot]
3d0c6a51a3
Merge #297
297: Update rendy-memory and rendy-descriptor to 0.4 from crates.io r=kvark a=yanchith

I also locally tested for regressions in `wgpu-rs` on the metal backend (only have macOS today) and the examples seemed ok.

Co-authored-by: yanchith <yanchi.toth@gmail.com>
2019-08-20 19:49:18 +00:00
yanchith
3abaed36c3 Rename buffer to encoder in wgpu_command_buffer_copy_* functions
This also regenerates `wgpu.h` and updates uses of
`wgpu_command_buffer_copy_buffer_to_buffer` in `compute/main.c`
2019-08-20 21:43:49 +02:00
Dzmitry Malyshau
0296e82fab Fix cbindgen flags 2019-08-20 14:59:17 -04:00
yanchith
f7418422f9 Update rendy-memory and rendy-descriptor to 0.4 from crates.io 2019-08-20 17:53:09 +02:00
bors[bot]
cb56ce3a0a
Merge #294
294: Manually expand ID macros r=kvark a=grovesNL

Fixes #293

Co-authored-by: Joshua Groves <josh@joshgroves.com>
2019-08-20 13:26:55 +00:00
Joshua Groves
8d8c670da1 Manually expand ID macros 2019-08-20 09:08:05 -02:30
bors[bot]
8bd44e1199
Merge #290
290: Make winit truly optional r=seivan a=kvark

Fixes #64 

Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2019-08-18 04:24:09 +00:00
Dzmitry Malyshau
f30cb20508 Make winit truly optional 2019-08-17 23:37:16 -04:00
bors[bot]
a47ff090bb
Merge #291
291: Fix sample_mask field r=kvark a=rukai

Looks like it was just missed in https://github.com/gfx-rs/wgpu/pull/285

Co-authored-by: Rukai <rubickent@gmail.com>
2019-08-18 00:19:02 +00:00
Rukai
460c90e8e2 Fix sample_mask field 2019-08-17 23:51:25 +10:00
bors[bot]
38743c6ba3
Merge #285
285: Update API according to the upstream spec r=grovesNL a=kvark

Includes changes in texture view creation, enumeration mapping,
binding types, and more.
This would be a nice target for our 0.3 release.

Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2019-08-17 02:37:32 +00:00
Dzmitry Malyshau
f82ceba3c2 Minor renames to address the review comments 2019-08-16 22:36:30 -04:00
Dzmitry Malyshau
37afa0d98a Update API according to the upstream spec
Includes changes in texture view creation, enumeration mapping,
binding types, and more.
2019-08-15 23:24:35 -04:00
bors[bot]
ab0ba193ce
Merge #284
284: Add start_slot parameter r=kvark a=danaugrs

A first attempt to fix https://github.com/gfx-rs/wgpu/issues/215.

Co-authored-by: Daniel Salvadori <danaugrs@gmail.com>
2019-08-15 20:28:29 +00:00
Daniel Salvadori
ec72adc7dd Add start_slot parameter 2019-08-15 10:59:02 -03:00
bors[bot]
6cab19c053 Merge #287
287: remove -s from examples-compute r=grovesNL a=Napokue



Co-authored-by: Timo de Kort <dekort.timo@gmail.com>
2019-08-15 11:49:10 +00:00
Timo de Kort
6448aa90bd remove -s from travis.yml in examples-compute 2019-08-15 12:50:20 +02:00
Timo de Kort
c355269465 remove -s from examples-compute 2019-08-15 09:50:00 +02:00
bors[bot]
a16d01460c Merge #281
281: Force pipeline barriers between unordered usages r=grovesNL a=kvark

Fixes #272

Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2019-08-14 20:59:54 +00:00
Dzmitry Malyshau
777957bca7 Fix travis target on windows 2019-08-14 16:59:22 -04:00
Dzmitry Malyshau
d37452ff27 Force pipeline barriers between unordered usages 2019-08-14 10:35:40 -04:00
bors[bot]
3504b7525e Merge #282
282: Fix dynamic stencil values r=grovesNL a=kvark

Fixes #279

Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2019-08-14 02:18:57 +00:00
bors[bot]
213e3f84d1 Merge #283
283: Fix broken link to scopes website r=grovesNL a=porky11

Scopes link didn't work, I fixed it

Co-authored-by: Fabio Krapohl <fabio.u.krapohl@fau.de>
2019-08-12 23:00:37 +00:00
Fabio Krapohl
fcd1acc759 Fix broken link to scopes website 2019-08-12 23:41:09 +02:00
Dzmitry Malyshau
69743e512c
Update README.md 2019-08-12 16:56:04 -04:00
Dzmitry Malyshau
9b6a817f3f
Add Bindings list to the README 2019-08-12 16:55:47 -04:00
Dzmitry Malyshau
1ce7957e0e Fix dynamic stencil values 2019-08-12 16:44:54 -04:00
bors[bot]
cf1bee30d6 Merge #280
280: Remove pod add read_spirv r=kvark a=rukai

Looks like Pod is no longer used by wgpu-rs so I removed it.
read_spirv is needed in wgpu-rs now so I added it.

Co-authored-by: Rukai <rubickent@gmail.com>
2019-08-12 15:33:39 +00:00
Rukai
5763285e40 Remove pod add read_spirv 2019-08-12 20:30:31 +10:00
bors[bot]
f72dfc9cbb Merge #276
276: Update to gfx hal 0.3 r=kvark a=rukai

closes https://github.com/gfx-rs/wgpu/issues/275

Co-authored-by: Rukai <rubickent@gmail.com>
2019-08-11 01:18:21 +00:00
Rukai
e61b16f7ed Update to gfx hal 0.3 2019-08-11 09:39:52 +10:00
bors[bot]
e83f2e6ad7 Merge #278
278: remove end pass return value and fix examples r=grovesNL a=porky11

closes #270 

Co-authored-by: Fabio Krapohl <fabio.u.krapohl@fau.de>
2019-08-10 21:18:01 +00:00
Fabio Krapohl
6fee18f6f9 remove end pass return value and fix examples 2019-08-10 22:30:24 +02:00
Yanchi Toth
186fbeec36 Validate bind group buffer ranges (#268)
* Validate bind group buffer range

The bound buffer range must fit in the the buffer size.
2019-08-07 11:13:57 -04:00
bors[bot]
28dff7c10d Merge #267
267: Use extend_from_slice instead of copy_from_slice r=kvark a=kocsis1david

`copy_from_slice` gives an error because it expects the lengths to be the same.

Co-authored-by: David <kocsis1david@windowslive.com>
2019-08-06 17:23:18 +00:00
David
074b1d7dee Use extend_from_slice instead of copy_from_slice 2019-08-05 07:40:06 +02:00