Commit Graph

9013 Commits

Author SHA1 Message Date
bors[bot]
6a6517832a Merge #360
360: Update to latest rendy with gfx-0.4 r=kvark a=kvark



Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2019-10-28 16:00:13 +00:00
Dzmitry Malyshau
271c709645 Update to latest rendy with gfx-0.4 2019-10-28 11:59:18 -04:00
bors[bot]
b71fc33c72 Merge #359
359: Make examples work again r=kvark a=GabrielMajeri

This PR fixes the C example code to not crash and actually run.

I've also added a few assertions to ensure a warning is emitted next time somebody forgots to increase `max_bind_groups` to something non-zero on device creation.

To help with debugging the examples, I've configured CMake to include debug info in the builds. Some new Makefile targets for the examples have been added to automate running them.

Co-authored-by: Gabriel Majeri <gabriel.majeri6@gmail.com>
2019-10-26 21:08:16 +00:00
Gabriel Majeri
eb198a9c3e Fix C examples
Get the examples running again.

The compute example has been simplified to use only one buffer.

A new check has been added to ensure the `max_bind_groups`
device limit is properly set.
2019-10-26 22:13:53 +03:00
bors[bot]
94f43c1167 Merge #358
358: Remove all the IPC r=grovesNL a=kvark

Closes #146 
Closes #22

We have decided to use Gecko IPC for Firefox. `wgpu-remote` will therefore provide all the Rust glue that Gecko needs for client and server:
  - initialization/termination of client/server
  - ID management for the client
  - pass encoding blobs

In Servo, we'd need to enable `serde` feature of `wgpu-native` and potentially roll out a different remoting crate that would establish a protocol based on `ipc-channel`, as we wanted originally.

Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2019-10-26 13:54:52 +00:00
Dzmitry Malyshau
538c23b039 Implement shutdown for the remote server 2019-10-25 22:56:52 -04:00
Dzmitry Malyshau
e37149b3a8 Remove all the IPC 2019-10-25 12:06:12 -04:00
bors[bot]
c8d0da65ad Merge #357
357: Explicit Global hubs r=grovesNL a=kvark

Fixes #354

Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2019-10-25 02:08:56 +00:00
bors[bot]
86583e8099 [rs] Merge #100
100: Fix shadow sampling r=kvark a=kvark



Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2019-10-24 18:56:08 +00:00
Dzmitry Malyshau
50997544c6 Formatting pass 2019-10-24 14:53:45 -04:00
Dzmitry Malyshau
41c433ed27 Refactor log usage 2019-10-24 14:53:07 -04:00
Dzmitry Malyshau
4851284150 Switch from remote feature to local 2019-10-24 14:52:44 -04:00
Dzmitry Malyshau
f67894c310 Explicit Global hubs 2019-10-24 14:52:19 -04:00
Dzmitry Malyshau
ca3d8038cf [rs] Fix shadow sampling outside of the positive hemisphere 2019-10-24 12:28:37 -04:00
Dzmitry Malyshau
cdd3614b39 [rs] Refactor log crate usage 2019-10-24 12:26:58 -04:00
bors[bot]
ae5a78f828 Merge #356
356: Allow max_bind_groups to be missing, for now r=kvark a=kvark

Fixes  #355

Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2019-10-24 14:51:05 +00:00
Dzmitry Malyshau
f3a0dd9b63 Allow max_bind_groups to be missing, for now 2019-10-24 10:50:08 -04:00
bors[bot]
a04a4b1cff Merge #353
353: Always return an Id by request_adapter r=kvark a=kvark

Requesting adapters is a bit special in a sense that it's exactly the place where the backend selection happens. It accepts a list of Ids, and we need to always return one, so that the remote client knows which Id was actually used and clean up the others.

Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2019-10-23 22:49:34 +00:00
Dzmitry Malyshau
c4906ee36f Always return an Id by request_adapter 2019-10-23 14:31:36 -04:00
bors[bot]
50acc2909c Merge #352
352: Fix compute pass resource binding r=kvark a=kvark

Follow-up to #348 
cc @grenlight @terrence2 

Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2019-10-22 14:08:54 +00:00
Dzmitry Malyshau
cf687604b9 Fix compute pass resource binding 2019-10-22 09:09:53 -04:00
bors[bot]
82dedda761 [rs] Merge #99
99: Update dependencies (including wgpu commit) r=kvark a=rukai



Co-authored-by: Rukai <rubickent@gmail.com>
2019-10-19 02:22:26 +00:00
Rukai
bd5575d3b9 [rs] Update dependencies 2019-10-19 09:43:15 +11:00
bors[bot]
bef2027ace Merge #17
17: Resource transition barriers and prefix heap types r=kvark a=msiglreith



Co-authored-by: msiglreith <m.siglreith@gmail.com>
2019-10-18 15:31:57 +00:00
msiglreith
aa2b674248 Resource transition barriers and prefix heap types 2019-10-18 17:30:41 +02:00
bors[bot]
48a571ddf2 [rs] Merge #98
98: Add pixels to the friends list r=kvark a=parasyte

We're using `wgpu` to create the world's most powerful pixel frame buffer. 😂

The crate isn't published yet. Waiting for `wgpu` 0.4: https://github.com/parasyte/pixels/issues/16

Co-authored-by: Jay Oster <jay@kodewerx.org>
2019-10-16 13:09:20 +00:00
Jay Oster
626a884af5 [rs] Add pixels to the friends list 2019-10-15 18:58:10 -07:00
bors[bot]
a4c594384a Merge #16
16: Remove one layer of modules and Queue::execute_command_lists r=kvark a=msiglreith



Co-authored-by: msiglreith <m.siglreith@gmail.com>
2019-10-15 20:46:07 +00:00
msiglreith
8bac8b582f Remove one layer of modules and Queue::execute_command_lists 2019-10-15 20:17:36 +02:00
Terrence Cole
78fbbba5e9 Support Limits::max_bind_groups (#348)
* Pass max_bind_count down into Binder.
* Use the existing hub.
* Remove accidental newline.
2019-10-14 21:57:05 -04:00
bors[bot]
5ba923c79f Merge #344
344: Update deps r=kvark a=rukai

We should wait for https://github.com/rust-windowing/winit/pull/1191 to find its way into a winit release before merging this PR.

Co-authored-by: Rukai <rubickent@gmail.com>
2019-10-06 02:05:41 +00:00
Rukai
31ef688213 Updated deps 2019-10-06 11:17:57 +11:00
bors[bot]
e84b6913be Merge #13
13: Bump version to 0.2.2 r=kvark a=msiglreith

As far as I can see there were no breaking changes to the API only additions

Co-authored-by: msiglreith <m.siglreith@gmail.com>
d3d12-v0.2.2
2019-10-04 21:58:52 +00:00
msiglreith
241a6387b8 Bump version to 0.2.2 2019-10-04 23:25:00 +02:00
bors[bot]
33aee5250e Merge #347
347: Add license headers to all Rust sources r=imnotalawyer a=kvark

Fixes #346 
the header is fairly small, so it shouldn't be in the way of editing files

Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2019-10-04 19:31:03 +00:00
Dzmitry Malyshau
9c58a5d11a Add license headers to all Rust sources 2019-10-04 15:24:17 -04:00
bors[bot]
ee7ec68af2 Merge #12
12: Add root descriptor commands and add trait derives r=kvark a=msiglreith



Co-authored-by: msiglreith <m.siglreith@gmail.com>
2019-10-03 23:25:48 +00:00
msiglreith
f4043cd1cc Add root descriptor commands and add trait derives 2019-10-04 00:52:50 +02:00
bors[bot]
f40c8047ec Merge #11
11: Add root descriptor r=kvark a=msiglreith



Co-authored-by: msiglreith <m.siglreith@gmail.com>
2019-10-03 17:59:14 +00:00
msiglreith
0a4a86ecbc Add root descriptor 2019-10-03 19:53:43 +02:00
bors[bot]
35546904ca [rs] Merge #92
92: Fix docs describing how to create a surface r=grovesNL a=parasyte

I noticed this issue as I was combing the source.

Co-authored-by: Jay Oster <jay@kodewerx.org>
2019-10-03 12:33:24 +00:00
Jay Oster
8b6c09722e [rs] Fix docs describing how to create a surface 2019-10-02 21:15:10 -07:00
bors[bot]
d79b279156 Merge #343
343: Document primary/secondary backend bit r=kvark a=rukai

Happy to add more detail, but this should be sufficient for the user to understand what PRIMARY/SECONDARY mean.

Co-authored-by: Rukai <rubickent@gmail.com>
2019-09-30 15:52:26 +00:00
bors[bot]
f523f2e36c Merge #342
342: Fallback to D32 when D24 isn't available r=kvark a=grovesNL

The rationale is that D32 seems to be supported on more devices. Using D24 could be a future memory/performance optimization instead.

Otherwise if it's fairly trivial I could add the fallback path for D32 here instead, but I'm not sure how we intend for values in the `D24Unorm` depth range to work in general (i.e. compared to `D32Sfloat`). Maybe I missed some discussion about this, but I don't see it in the minutes.

cc @Yatekii 

Co-authored-by: Joshua Groves <josh@joshgroves.com>
2019-09-28 16:40:13 +00:00
Joshua Groves
5080a20cb6 Disallow copying for D24Plus textures 2019-09-28 00:32:00 -06:00
Joshua Groves
e430a4cf40 Fallback to D32 when D24 isn't available 2019-09-27 23:44:26 -06:00
Rukai
194a155cae Document primary/secondary backend bit 2019-09-28 08:30:51 +10:00
bors[bot]
cbe197eb44 Merge #341
341: Track and destroy samplers r=kvark a=yanchith

This PR adds `ResourceId::Sampler`, `NativeResource::Sampler` and
`TrackerSet::samplers`. Samplers are (similarly to bind groups)
created with their own life guard and a device id to keep the device
ref count alive. Also added are `extern wgpu_sampler_destroy` and
`sampler_destroy`.

The rest of the implementation was guided by compiler errors, so there
is a good chance I didn't find something crucial that also needed
doing. Please check :)

I also imagine we might want to add the `Drop` impl for sampler in wgpu-rs.

Fixes: #231 

Co-authored-by: yanchith <yanchi.toth@gmail.com>
2019-09-24 17:11:49 +00:00
yanchith
758bb16d01 Make sure submissions are tracked 2019-09-24 19:04:35 +02:00
bors[bot]
05f54470ef [rs] Merge #89
89: Adapter::get_info r=kvark a=paulkernfeld

This more or less addresses #7.

If the example is too trivial, I'm happy to remove it.

Co-authored-by: Paul Kernfeld <paulkernfeld@gmail.com>
2019-09-23 16:26:25 +00:00