Commit Graph

545 Commits

Author SHA1 Message Date
bors[bot]
9068ac8ff8 [rs] Merge #543
543: Don't use `log` crate in include_spirv r=kvark a=kvark

Fixes  #541

Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2020-08-31 04:06:16 +00:00
Dzmitry Malyshau
7eeff9c321 [rs] Don't use log crate in include_spirv 2020-08-31 00:05:45 -04:00
bors[bot]
b383285b85 [rs] Merge #537
537: Update wgpu with DepthComparison component and better shader validation r=cwfitzgerald a=kvark

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

Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2020-08-28 21:39:11 +00:00
Dzmitry Malyshau
85becef23e [rs] Update wgpu with DepthComparison component and better shader validation 2020-08-28 17:37:33 -04:00
crispweed
25aab2d6c5 [rs] Removed erroneous zero size check related conditional in water example resize() (#534)
* The conditional at the start of resize() already tests for and exits on the zero width and height condition.
The conditional removed here was then getting run on every other call to resize(), which doesn't seem logical, doesn't correspond to the comment, and seemed to be causing at least one issue with rendered viewport going black during resize.

Fixes #532
(probably) Fixes #519

* Defensive coding to prevent various issues when window size goes to zero, e.g. NaN being passed in cgmath::perspective() aspect ratio parameter.

Fixes #531
2020-08-25 13:25:50 -04:00
bors[bot]
e0b6a17f84 [rs] Merge #526
526: Add optional border_color to SamplerDescriptor r=kvark a=jshrake

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

Co-authored-by: Justin Shrake <justinshrake@gmail.com>
2020-08-23 05:08:06 +00:00
Justin Shrake
21602e311c [rs] Add optional border_color to SamplerDescriptor 2020-08-22 22:00:33 -07:00
bors[bot]
3adebcb2dd [rs] Merge #527
527: Expose debug marker/groups for ComputePass and Encoder r=kvark a=Wumpf

Added uses of them to the examples to make sure everything compiles & works.
Marker on compute examples are arguably a bit awkward since they are so trivial. On the shadow example however it is a delight when inspected in RenderDoc! (and it will do wonders to my project which can run into situations with literally thousands of compute dispatches per frame 😅 )

RenderDoc, boids example:
![0_boids](https://user-images.githubusercontent.com/1220815/90963818-70c1fc80-e4bb-11ea-9842-25240ae5c927.png)

RenderDoc, shadow example:
![1_shadow](https://user-images.githubusercontent.com/1220815/90963819-728bc000-e4bb-11ea-9395-630a1f7b3a31.png)


Co-authored-by: Andreas Reich <r_andreas2@web.de>
2020-08-22 21:56:15 +00:00
Andreas Reich
8dd3e31a57 [rs] Added debug marker/groups for ComputePass & CommandEncoder 2020-08-22 21:37:01 +02:00
bors[bot]
b3f31a0f8c [rs] Merge #523
523: Change buffer binding to not take a slice r=cwfitzgerald,grovesNL a=kvark

This has been a constant source of confusion w.r.t dynamic offsets.
What it looks like it's doing: user provides a slice of buffer visible to the shader. Just like they provide slices to vertex and index buffer bindings.
What it's actually doing: it takes the offset and size separately, modifying the offset later on based on the dynamic offset.

We don't need this confusion. Semantics is different from `BufferSlice` and so we should have a different API here.

Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2020-08-22 01:57:56 +00:00
Dzmitry Malyshau
82866bac4a [rs] Change buffer binding to not take a slice.
Also switch the shadow example to use dynamic offsets.
Add the relevant feature to our example table.
2020-08-21 09:49:33 -04:00
bors[bot]
d2158d459a [rs] Merge #517
517: Added some explanatory comments to hello-compute example r=kvark a=JonathanWoollett-Light

Simply added some more comments explaing the basic compute example.

Also moved the lines:
```rust
let slice_size = numbers.len() * std::mem::size_of::<u32>();
let size = slice_size as wgpu::BufferAddress;
```
To be just before where they are used.

Co-authored-by: Jonathan Woollett-Light <jonathanwoollettlight@gmai.com>
2020-08-19 18:04:54 +00:00
Jonathan Woollett-Light
cfb80cb1c9 [rs] Added some explanatory comments to hello-compute example 2020-08-19 18:16:10 +01:00
bors[bot]
cef978f8c5 [rs] Merge #516
516: Depend on less of futures r=cwfitzgerald a=JMS55



Co-authored-by: JMS55 <47158642+JMS55@users.noreply.github.com>
2020-08-18 23:24:39 +00:00
JMS55
37ad1ff38b [rs] Shrink futures dependencies 2020-08-18 19:23:53 -04:00
bors[bot]
945a85f1c0 [rs] Merge #515
515: Add logging information to README r=kvark a=cwfitzgerald



Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>
2020-08-18 15:11:41 +00:00
Connor Fitzgerald
e8c300fcbd [rs] Add logging information 2020-08-18 11:08:15 -04:00
bors[bot]
01a019f84a [rs] Merge #514
514: Release version 0.6 r=kvark a=kvark



Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2020-08-18 15:04:21 +00:00
Dzmitry Malyshau
2610544993 [rs] Release version 0.6 2020-08-18 10:31:27 -04:00
bors[bot]
c15a642498 [rs] Merge #513
513: Update parking-lot to 0.11 r=trivial a=cwfitzgerald



Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>
2020-08-17 22:00:50 +00:00
Connor Fitzgerald
833bca6146 [rs] Update parking-lot to 0.11 2020-08-17 17:59:58 -04:00
bors[bot]
429aa6f1fd [rs] Merge #512
512: Convert to using independent subscriber implementation r=kvark a=cwfitzgerald

https://github.com/gfx-rs/wgpu/pull/881 but for wgpu-rs.

Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>
2020-08-17 21:39:45 +00:00
Connor Fitzgerald
96a032d347 [rs] Convert to using independent subscriber implementation 2020-08-17 16:31:28 -04:00
bors[bot]
1a197c7f67 [rs] Merge #510
510: Update to hal-0.6 r=kvark a=kvark

Tested on macOS and Linux so far (examples)

Co-authored-by: Dzmitry Malyshau <dmalyshau@mozilla.com>
2020-08-17 15:42:33 +00:00
Dzmitry Malyshau
282130a70b [rs] Update to hal-0.6 2020-08-17 11:41:58 -04:00
bors[bot]
28b3a3273f [rs] Merge #509
509: Convert StagingBelt to take a &mut CommandEncoder r=kvark a=cwfitzgerald

This allows `StagingBelt` to be `Send`, very important for async/highly multithreaded applications. Also added a bit more documentation.

Tested on the skybox example.

Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>
2020-08-17 03:11:22 +00:00
Connor Fitzgerald
04ac773bc6 [rs] Convert StagingBelt to take a &mut CommandEncoder 2020-08-16 23:10:14 -04:00
bors[bot]
ca5ae98ad5 [rs] Merge #505
505: Update wgpu to 7e8b51b428 r=kvark a=kvark

Includes https://github.com/gfx-rs/wgpu/pull/876

Co-authored-by: Dzmitry Malyshau <dmalyshau@mozilla.com>
2020-08-13 21:42:27 +00:00
Dzmitry Malyshau
84cab2ef2f [rs] Update wgpu to 7e8b51b428 2020-08-13 17:41:05 -04:00
bors[bot]
49100c3fa5 [rs] Merge #504
504: Update wgpu with pipeline labels r=trivial a=kvark



Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2020-08-13 17:05:00 +00:00
Dzmitry Malyshau
45de9a5462 [rs] Update wgpu with pipeline labels 2020-08-13 13:04:23 -04:00
bors[bot]
26ce126582 [rs] Merge #503
503: Update for the wgpu grand refactor r=kvark a=kvark

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

Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2020-08-13 04:27:09 +00:00
Dzmitry Malyshau
5c5483a25e [rs] Update for the wgpu grand refactor 2020-08-13 00:26:40 -04:00
bors[bot]
ecb91664e6 [rs] Merge #501
501: Fighting back the bovine forces r=kvark a=Kimundi

<img src="https://dcassetcdn.com/w1k/submissions/399000/399327_d0ba.jpg" width="300">
"Good work boys, we'll get 'em next time!"

Co-authored-by: Marvin Löbel <loebel.marvin@gmail.com>
2020-08-12 14:31:00 +00:00
Marvin Löbel
40ded76554 [rs] Udderly remove cows from the following APIs:
- BufferDescriptor
- CommandEncoderDescriptor
- RenderBundleDescriptor
- TextureDescriptor
- TextureViewDescriptor
- PipelineLayoutDescriptor
- SamplerDescriptor
- BindGroupDescriptor
- ProgrammableStageDescriptor
- RenderPassDescriptor
- RenderPipelineDescriptor
- BindGroupLayoutDescriptor
- VertexStateDescriptor
- VertexBufferDescriptor
- RenderBundleEncoderDescriptor
- ComputePipelineDescriptor

Also change anisotropy_clamp to use NonZeroU8
2020-08-12 10:21:38 +02:00
bors[bot]
5805a4b3e2 [rs] Merge #502
502: Expose get_bind_group_layout r=grovesNL a=kvark

Returning a new object is fine for BGLs specifically and for these cases in particular because we made sure the refcount is bumped (and BGL has a special kind of refcount) in f164fd1f46

Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2020-08-11 12:39:23 +00:00
Dzmitry Malyshau
30f93e6f8d [rs] Expose get_bind_group_layout 2020-08-11 00:36:32 -04:00
bors[bot]
041c5dea77 [rs] Merge #500
500: Update wgpu for optional layouts r=3rdtimeisthecharm a=kvark

Fixes #498
Includes https://github.com/gfx-rs/wgpu/pull/872 and https://github.com/gfx-rs/wgpu/pull/870

Co-authored-by: Dzmitry Malyshau <dmalyshau@mozilla.com>
2020-08-10 21:54:18 +00:00
Dzmitry Malyshau
de41bac69b [rs] Update wgpu for optional layouts 2020-08-10 16:42:52 -04:00
bors[bot]
5d85f591e9 [rs] Merge #496
496: Replace u32 with NonZeroU32 in TextureView r=kvark a=kunalmohan

Includes https://github.com/gfx-rs/wgpu/pull/865

Co-authored-by: Kunal Mohan <kunalmohan99@gmail.com>
2020-08-05 17:45:46 +00:00
Kunal Mohan
f9ab713d0e [rs] Replace u32 with NonZeroU32 in TextureView 2020-08-05 22:54:41 +05:30
bors[bot]
768c606844 [rs] Merge #494
494: Update wgpu with the error model changes r=cwfitzgerald a=kvark

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

Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2020-08-05 00:00:21 +00:00
Dzmitry Malyshau
6832ad1513 [rs] Update wgpu with the error model changes 2020-08-04 17:09:21 -04:00
bors[bot]
d846081d36 [rs] Merge #495
495: Update a documentation to refer to create_buffer_init() instead of create_buffer_with_data() r=kvark a=yutannihilation

A followup of #482

Co-authored-by: Hiroaki Yutani <yutani.ini@gmail.com>
2020-08-02 00:26:48 +00:00
Hiroaki Yutani
3c823e24c0 [rs] Update a doc's reference to create_buffer_init() 2020-08-01 17:57:13 +09:00
bors[bot]
6183e205a0 [rs] Merge #493
493: Use BCn textures if possible in skybox example r=kvark a=cwfitzgerald

This converts the skybox to using compressed textures if available. I have designed the code to be extensible to other compressed formats as they are added.

Additionally I added srgb to the texture types, as we were using a srgb framebuffer without properly converting into  linear on the texture reads.

Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>
2020-07-31 02:52:35 +00:00
Connor Fitzgerald
aeffeaf869 [rs] Use BCn textures if possible in skybox example 2020-07-30 20:55:40 -04:00
bors[bot]
c320599e20 [rs] Merge #492
492: Replace NonZeroU32 with u32 in TextureViewDescriptor r=kvark a=kunalmohan

Includes https://github.com/gfx-rs/wgpu/pull/854

(rustfmt seems to have introduced a number of other changes. I can revert them if they are undesired)

r?@kvark

Co-authored-by: Kunal Mohan <kunalmohan99@gmail.com>
2020-07-30 17:41:55 +00:00
Kunal Mohan
eba4cd977b [rs] Replace NonZeroU32 with u32 in TextureViewDescriptor 2020-07-30 23:01:49 +05:30
bors[bot]
45df7b03ca [rs] Merge #482
482: Add label parameter to `create_buffer_with_data` r=kvark a=OptimisticPeach

Improves QOL by allowing you to attach a label to a buffer when created with predetermined data:
```
let uniform_buf = device.create_buffer_with_data(
    bytemuck::cast_slice(my_data),
    wgpu::BufferUsage::UNIFORM,
    Some(Cow::Borrowed("My Uniforms")),
);
```

Co-authored-by: OptimisticPeach <patrikbuhring@yahoo.com>
2020-07-30 02:08:24 +00:00