Commit Graph

2761 Commits

Author SHA1 Message Date
bors[bot]
88204b9d86 Merge #329
329: Export function wgpu_render_pass_set_index_buffer r=kvark a=alichay

The function didn't have the `#[no_mangle]` flag, that's all.

Co-authored-by: Alichay <allisonalichay@gmail.com>
2019-09-07 02:31:04 +00:00
Alichay
306dd09626 Exported function wgpu_render_pass_set_index_buffer 2019-09-06 20:49:11 -05:00
bors[bot]
412198d829 Merge #328
328: Switch to use gfx-rs latest and greatest master r=kvark a=kvark

I'm going to implement #322 as a follow-up commit, but this one is already standalone and mergeable.
Closes #320 

Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2019-09-06 14:07:47 +00:00
Dzmitry Malyshau
988d78435a Switch to use gfx-rs latest and greatest master 2019-09-06 10:05:53 -04:00
bors[bot]
304ca7c5c2 [rs] Merge #77
77: Modify examples to use PowerPreference::Default r=kvark a=danaugrs



Co-authored-by: Daniel Salvadori <danaugrs@gmail.com>
2019-09-06 00:07:19 +00:00
bors[bot]
aa316279dc Merge #327
327: Select virtual GPU last in all power preferences r=kvark a=danaugrs



Co-authored-by: Daniel Salvadori <danaugrs@gmail.com>
2019-09-06 00:06:10 +00:00
Daniel Salvadori
05b68bbee6 Select virtual GPU last in all power preferences 2019-09-05 20:10:39 -03:00
Daniel Salvadori
84a33603dc [rs] Modify examples to use PowerPreference::Default 2019-09-05 19:14:53 -03:00
bors[bot]
8d2a82cc38 Merge #316
316: Testing adding iOS matrix. r=kvark a=seivan

I'm not sure `GLFW3` would work for iOS, but lets see what Travis says?

Co-authored-by: Seivan Heidari <seivan.heidari@icloud.com>
2019-09-05 14:44:51 +00:00
Seivan Heidari
18b790fba8 Adding iOS matrix for CI. 2019-09-05 11:45:47 +02:00
bors[bot]
a2956c0d42 Merge #325
325: Create vulkan instance on windows r=kvark a=danaugrs



Co-authored-by: Daniel Salvadori <danaugrs@gmail.com>
2019-09-03 21:33:33 +00:00
Daniel Salvadori
443a0d661f Create vulkan instance on windows 2019-09-03 17:41:52 -03:00
Dzmitry Malyshau
8d2eb6ee42 [rs] wgpu-native update to 40fb3fcdfd 2019-09-02 21:12:22 -04:00
bors[bot]
40fb3fcdfd Merge #319
319: Multiple binding fixes r=kvark a=kvark

Could be related to #315 (haven't confirmed)

Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2019-09-01 04:22:59 +00:00
Dzmitry Malyshau
cc16b4b65a Fix binding compatibility checks 2019-08-31 00:56:05 -04:00
Dzmitry Malyshau
e97e54e4a3 Stop rebinding descriptors on the first incompatible 2019-08-31 00:56:05 -04:00
Dzmitry Malyshau
872bf21a9b Fix descriptor set offsets binding on pipeline change 2019-08-31 00:56:05 -04:00
bors[bot]
2acc0ebb62 Merge #314
314: Handle frame acquisition failure internally r=grovesNL a=kvark

Fixes #313, which is critical to get us running on Metal today.
In the nearest future, all that code will be removed in favour of using the alternative swapchain model.

Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2019-08-31 04:55:14 +00:00
bors[bot]
0f26def66f Merge #317
317: Fix building on ios r=grovesNL a=kvark

Fixes #315 

Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2019-08-31 04:29:41 +00:00
Dzmitry Malyshau
86bb809c39 Fix building on ios 2019-08-30 09:07:21 -04:00
Dzmitry Malyshau
d37ecdf248 Handle frame acquisition failure internally 2019-08-29 22:27:21 -04:00
bors[bot]
9b71766939 [rs] Merge #73
73: Update wgpu-native to the commit that has no backend features. r=grovesNL a=kvark

This change removes the dependency on gfx-rs backends, refactors
Adapter and Surface creation to be done from nothing.

Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2019-08-30 02:05:14 +00:00
Dzmitry Malyshau
a9fdd0af18 [rs] Update wgpu-native to the commit that has no backend features.
This change removes the dependency on gfx-rs backends, refactors
Adapter and Surface creation to be done from nothing.
2019-08-29 22:04:43 -04:00
bors[bot]
b58c96e4a6 Merge #311
311: Feature-less backend selection r=grovesNL a=kvark

Fixes #252 
Notes:
- ~~only Vulkan and Metal atm, not tested.~~
- GL is removed (for now)
- the gfx backends appear in public dependencies (for now)

Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2019-08-29 13:45:11 +00:00
Dzmitry Malyshau
175e992149 DX12/DX11 hookup, improved adapter selection 2019-08-29 09:44:34 -04:00
Dzmitry Malyshau
b414b9f373 Formatting pass 2019-08-27 21:11:07 -04:00
Dzmitry Malyshau
26e5b4258d Add a mask of backends for local adapter selection 2019-08-27 21:08:13 -04:00
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]
307f519f63 [rs] Merge #71
71: Use `HasRawWindowHandle` in `create_surface` r=kvark a=hecrj

This change lets users use `wgpu` without listing `raw-window-handle` as a direct dependency themselves.

Co-authored-by: Héctor Ramón Jiménez <hector0193@gmail.com>
2019-08-23 15:35:30 +00:00
Héctor Ramón Jiménez
26cfd30cc4 [rs] Use HasRawWindowHandle in create_surface 2019-08-22 22:26:07 +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]
fd8996fc0a [rs] Merge #70
70: Wholesome update for wgpu-0.3 r=everyone a=kvark

~~This update is a little more opinionated, i.e. the BGL creation just accepts a slice of things instead of a descriptor. I believe the reason for descriptors in the upstream API is mostly techincal - it's more convenient to generate bindings in Googles giant codegen. Following it verbatim doesn't appear to be strictly necessary, especially if we can extract better usability from Rust features.~~

The change also disables "gl" feature for the release. We'll re-enable it once we can provide it nicely, it will not be a breaking change.

I also noticed that barriers are not working correctly on the mipmap example. Will investigate separately - the native part is already published anyway. Edit: fixed by https://github.com/gfx-rs/wgpu/pull/302

Co-authored-by: Dzmitry Malyshau <dmalyshau@mozilla.com>
2019-08-22 03:53:37 +00:00
Dzmitry Malyshau
c7a4ee36c5 [rs] Wholesome update for wgpu-0.3 2019-08-21 23:51:09 -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]
141406f257 [rs] Merge #69
69: Prevent possible double panic in Drop impls r=kvark a=yanchith

Drop impls for `SwapChainOutput`, `RenderPass` and `ComputePass` now only
call out to `wgn` if not `thread::panicking()`.

Fixes #50 

Co-authored-by: yanchith <yanchi.toth@gmail.com>
2019-08-20 15:26:32 +00:00