Commit Graph

169 Commits

Author SHA1 Message Date
Dzmitry Malyshau
32ea1638fc [rs] Enforce lifetimes of resource dependencies of passes 2020-01-15 11:06:19 -05:00
Dzmitry Malyshau
89dbdc8130 [rs] Update to wgpu version with raw passes 2020-01-15 11:06:19 -05:00
bors[bot]
e80d6ab1e7 [rs] Merge #161
161: Update wgpu and winit r=kvark a=kvark



Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
Co-authored-by: Dzmitry Malyshau <dmalyshau@mozilla.com>
2020-01-13 18:20:47 +00:00
Dzmitry Malyshau
d0dc3f7a95 [rs] Update wgpu and winit 2020-01-13 13:20:13 -05:00
Dzmitry Malyshau
469a7918e4 [rs] Update wgpu dependency 2020-01-13 12:45:52 -05:00
bors[bot]
8f1e7139d1 [rs] Merge #153
153: Update readme badges r=kvark a=rukai

Adds docs.rs badge link and replaces gitter badge with a matrix badge.

Looks like the the matrix room needs to be more public or else i've somehow messed up the matrix room name in the badge url.

Co-authored-by: Rukai <rubickent@gmail.com>
2020-01-13 15:16:49 +00:00
Rukai
ea50583a54 [rs] Update readme badges 2020-01-14 00:01:16 +11:00
bors[bot]
39e167d4d6 [rs] Merge #157
157: Handle resizing in hello-triangle r=kvark a=quadrupleslap

Nothing gets drawn on my computer unless the swap chain is resized along with the window.

```
$ uname -a
Linux red 5.3.7-arch1-1-ARCH #1 SMP PREEMPT Fri Oct 18 00:17:03 UTC 2019 x86_64 GNU/Linux
$ wmctrl -m
Name: bspwm
Class: wm
PID: 665
Window manager's "showing the desktop" mode: N/A
```

Co-authored-by: Ram Kaniyur <quadrupleslap@gmail.com>
2020-01-12 20:04:25 +00:00
bors[bot]
1592567596 [rs] Merge #158
158: Accept DOS line endings in examples/boids r=kvark a=quadrupleslap

Resolves #150.

Co-authored-by: Ram Kaniyur <quadrupleslap@gmail.com>
2020-01-12 19:51:11 +00:00
Ram Kaniyur
3f94dcf621 [rs] Accept DOS line endings in examples/boids 2020-01-11 12:55:51 +11:00
Ram Kaniyur
b10b76f95c [rs] Handle resizing in hello-triangle 2020-01-11 11:53:31 +11:00
bors[bot]
6a746ac540 [rs] Merge #154
154: Use exact version for winit alpha r=kvark a=grovesNL

Use exact version for winit alpha to avoid issues when new alphas are published (rust-windowing/winit#1362)

Co-authored-by: Joshua Groves <josh@joshgroves.com>
2020-01-05 21:51:55 +00:00
Joshua Groves
efb1d56dfe [rs] Use exact version for winit alpha 2020-01-05 10:06:18 -03:30
bors[bot]
9497bac0e1 [rs] Merge #152
152: Update to latest winit (0.20.0-alpha6) r=kvark a=grovesNL

Updated to latest winit to fix examples:
- `RedrawRequested` is now used for rendering
- `EventsCleared` replaced by `MainEventsCleared` which requests redraw
- Removed Metal auto-capture and escape key handling from hello-triangle to simplify the example slightly (it doesn't use `framework`, so we should try to make it as simple as possible IMO)

Should we also remove the `feature = gl` parts of the examples to simplify them until GL is reenabled?

Co-authored-by: Joshua Groves <josh@joshgroves.com>
2020-01-05 03:03:37 +00:00
Joshua Groves
17b82f6d01 [rs] Disable Travis cache 2020-01-04 23:10:28 -03:30
Joshua Groves
aa623f842b [rs] Update to latest winit (0.20.0-alpha6)
- `RedrawRequested` is now used for rendering
- `EventsCleared` replaced by `MainEventsCleared` which requests redraw
- Removed capture from hello-triangle to simplify it slightly
2020-01-04 18:33:33 -03:30
Dzmitry Malyshau
f8f3c8daa3 [rs] Update to latest wgpu c293d6dcea 2020-01-02 01:21:08 -05:00
bors[bot]
e51f96d9c5 [rs] Merge #151
151: Add Lyon to the friends list r=kvark a=Veykril

Closes #84

Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2020-01-01 23:04:55 +00:00
Lukas Wirth
87e34f8af8 [rs] add lyon to friends 2020-01-01 15:01:24 +01:00
bors[bot]
9153741476 [rs] Merge #113
113: build: exclude necessities for packaging, fixes #112 r=kvark a=m4b

I believe this is the minimal set required as an external dep, e.g., don't need tests, etc., and other folders. I can't seem to find any explicit recommendations here though: https://doc.rust-lang.org/cargo/reference/manifest.html#the-exclude-and-include-fields-optional


Co-authored-by: m4b <m4b.github.io@gmail.com>
2019-12-31 17:00:35 +00:00
bors[bot]
4ceb122388 [rs] Merge #148
148: Change Queue::submit to take &self r=kvark a=LaylConway

This small change allows multiple threads to submit buffers slightly more efficiently, by being able to do it concurrently without a lock on Queue.

In practice currently `Queue::submit` does a lot of locking internally for most of the function's duration, so it's only a small performance win right now, but it opens up the road for more improvements.

Co-authored-by: Layl <2385329-layl@users.noreply.gitlab.com>
2019-12-31 16:32:52 +00:00
Layl
1c764215a8 [rs] Change Queue::submit to take &self 2019-12-31 16:24:49 +01:00
bors[bot]
619770473c [rs] Merge #144
144: Adds compute-boids example from gpuweb demos r=kvark a=masonblier

Port of the computeBoids.ts demo from https://github.com/austinEng/webgpu-samples/blob/master/src/examples/computeBoids.ts  using separate compute and render passes with shared buffers bound by layout location. 

![Screen Shot 2019-12-27 at 9 53 17 PM](https://user-images.githubusercontent.com/677787/71539722-7a2ba280-28f5-11ea-9643-d1633ae06d75.png)

I'm happy to receive any feedback related to these changes and if there's any interest in merging it to the main repository.

Thanks,
Mason

Co-authored-by: Mason <mason.blier@gmail.com>
2019-12-29 20:36:49 +00:00
Mason
3b1ed05338 [rs] Adds compute-boids example from gpuweb demos
Updates for boids example

Rename example folder
Use chunks_muts when creating initial_particles data
No need for depth
Syntax and minor changes

calculate multiple particles in single compute unit

updates boids example to use framework impl

removed code

fix gpu invocations constants
2019-12-29 12:17:14 -08:00
bors[bot]
c204a17ca8 [rs] Merge #145
145: Mark CommandEncoder as !Send !Sync r=kvark a=LaylConway

These depend on the thread-specific command pool they're allocated from, which requires only one thread accessing them at a time, so they can't be moved to other threads without additional synchronization.

Co-authored-by: Layl <2385329-layl@users.noreply.gitlab.com>
2019-12-29 16:39:25 +00:00
m4b
5c472228a9 [rs] build: exclude necessities for packaging, fixes #112 2019-12-28 12:11:14 -08:00
Layl
8638a86d48 [rs] Mark CommandEncoder as !Send !Sync 2019-12-28 18:38:30 +01:00
Dzmitry Malyshau
6b8914791f [rs] Add more friends! 2019-12-17 20:16:21 -05:00
bors[bot]
fd477c4892 [rs] Merge #134
134: wgpu dependency update r=kvark a=kvark



Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2019-11-26 18:51:56 +00:00
Dzmitry Malyshau
ea92f864c5 [rs] Dependency update 2019-11-26 10:28:33 -05:00
bors[bot]
e3038eacbf [rs] Merge #130
130: Export BIND_BUFFER_ALIGNMENT r=kvark a=kvark



Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2019-11-22 20:50:54 +00:00
Dzmitry Malyshau
073d3fe084 [rs] Export BIND_BUFFER_ALIGNMENT 2019-11-22 15:50:01 -05:00
bors[bot]
ccf9466a83 [rs] Merge #120
120: prototype of futures for buffer mapping r=grovesNL a=swiftcoder

This is largely in request-for-comment state right now, although it does work.

As written the `GpuFuture` implementation only works with types that are `Copy`, which rules out using a destructor to unmap the buffer. I'm assume it's possible to write a future type that can produce a non-Copy result, but I haven't sufficiently internalised how `Pin` works to see how.

Co-authored-by: Tristam MacDonald <swiftcoder@gmail.com>
2019-11-22 12:38:33 +00:00
Tristam MacDonald
a85f95dfdd [rs] prototype of async/await for buffer mapping 2019-11-21 21:42:22 -08:00
bors[bot]
1968eb81e7 [rs] Merge #127
127: Use u8 for buffer mapping r=kvark a=Coder-256

cc @kvark @grovesNL

This is a temporary solution for #119, and a follow-up for #126.

Co-authored-by: Jacob Greenfield <jacob@jacobgreenfield.me>
2019-11-22 01:41:56 +00:00
Jacob Greenfield
a49219f0e6 [rs] Satisfy clippy 2019-11-21 20:35:19 -05:00
Jacob Greenfield
9cc89d6ccf [rs] Update examples and tests 2019-11-21 20:35:16 -05:00
Jacob Greenfield
ae18c20fa2 [rs] Use u8 slices for buffer mapping 2019-11-21 20:34:39 -05:00
bors[bot]
b30045652c [rs] Merge #128
128: Small updates r=kvark a=Coder-256

Enable Travis CI cache, disable [deprecated container-based builds](https://docs.travis-ci.com/user/reference/trusty/#container-based-infrastructure), and add `red.png` to `.gitignore` (output from `cargo run --example capture`).

Co-authored-by: Jacob Greenfield <jacob@jacobgreenfield.me>
2019-11-22 01:14:52 +00:00
Jacob Greenfield
3a3436dff6 [rs] Add red.png to .gitignore 2019-11-21 18:04:09 -05:00
Jacob Greenfield
c826c712c7 [rs] Enable Travis cache 2019-11-21 18:02:44 -05:00
Jacob Greenfield
7c548b5edf [rs] cargo fmt 2019-11-21 00:20:28 -05:00
bors[bot]
9e638fdee5 [rs] Merge #126
126: Fix generic bounds on buffer mapping r=grovesNL a=kvark

Smaller (and incomplete!) alternative to #119 while it's still discussed.
One missing piece here is alignment. cc @Coder-256

Also, importing `wgpu-core` as just "core" wasn't the best idea 😅 : it collides with the actual `core`.

Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2019-11-21 03:08:12 +00:00
Dzmitry Malyshau
d0646a512e [rs] Fix generic bounds on buffer mapping 2019-11-20 21:25:46 -05:00
bors[bot]
2689dfa460 [rs] Merge #125
125: Use count rather than size in map_read/write_async r=kvark a=cormac-obrien

Fixes #124.

Co-authored-by: Cormac O'Brien <cormac@c-obrien.org>
2019-11-20 15:00:15 +00:00
Cormac O'Brien
83f943cab7 [rs] Use count rather than size in map_read/write_async
Fixes #124
2019-11-20 04:29:09 -06:00
bors[bot]
fcc162a7aa [rs] Merge #122
122: Wholesome update for the git master of wgpu-native r=grovesNL a=kvark

Depends on https://github.com/gfx-rs/wgpu/pull/382

Co-authored-by: Dzmitry Malyshau <dmalyshau@mozilla.com>
2019-11-20 01:59:27 +00:00
Dzmitry Malyshau
46cead456c [rs] Wholesome update for the git master of wgpu-native 2019-11-19 20:58:32 -05:00
bors[bot]
6b19641d96 [rs] Merge #115
115: Handle error case for SwapChain::get_next_texture r=kvark a=antonok-edm

Updates `SwapChain::get_next_texture` to account for https://github.com/gfx-rs/wgpu/pull/369. Otherwise, an invalid `Id` is returned and may cause confusing errors.

Co-authored-by: Anton Lazarev <antonok35@gmail.com>
2019-11-06 03:48:03 +00:00
Anton Lazarev
569e4aca85 [rs] Handle error case for SwapChain::get_next_texture 2019-11-05 14:46:25 -08:00