Commit Graph

2761 Commits

Author SHA1 Message Date
bors[bot]
9e1a62112a [rs] Merge #617
617: Add labels for some error messages r=kvark a=scoopr

This places some pieces on how to transform the ids in the errors to a label, and adds them to the validation message.

This changes the formatting of the validation error to happen when constructing the error, rather than in the unhandled error handler.
It also requires some code for all the error variants for extracting the ids.

Co-authored-by: Mikko Lehtonen <scoopr@iki.fi>
2020-11-19 22:42:41 +00:00
Mikko Lehtonen
daa15a853f [rs] Add labels for some error messages
This adds transforms for the ids in the errors to a label,
and adds them to the validation error message.

This changes the formatting of the validation error to happen when
constructing the error, rather than in the unhandled error handler.
It also requires some code for all the error variants for extracting the ids.
2020-11-20 00:36:29 +02:00
Mikko Lehtonen
581674efb3 [rs] Update wgpu-core 2020-11-20 00:36:29 +02:00
bors[bot]
9d35aea08e Merge #1033
1033: Missing label queries r=kvark a=scoopr

I missed few bits needed for labeling the resources in the errors.

Co-authored-by: Mikko Lehtonen <scoopr@iki.fi>
2020-11-19 22:25:04 +00:00
Mikko Lehtonen
48e64fc8c6 Add missing label query methods 2020-11-19 23:37:59 +02:00
Mikko Lehtonen
a41f7ea78f Make inner errors pub 2020-11-19 23:37:36 +02:00
bors[bot]
98bd3033f6 [rs] Merge #630
630: Update wgpu-core r=kvark a=scoopr

Pass label to error id creation methods.

Co-authored-by: Mikko Lehtonen <scoopr@iki.fi>
2020-11-19 15:10:37 +00:00
Mikko Lehtonen
dd7f1735f3 [rs] Update wgpu-core
Pass label to error id creation methods.
2020-11-19 01:21:09 +02:00
bors[bot]
19b4ec58ae Merge #931
931: Retain labels for resources r=kvark a=scoopr

This is wip, mostly a conversation starter.

I've attempted to have some labels show up in the errors, outside of only creation errors.
Steps to do that include,
1. Retain the label in the underlying struct (here, `Buffer`). It is guarded by `debug_assertions`
2. Add the label option to the error variant, and show it
3. Add label option to the `Element::Error` variant, so that invalid ids retain the label also. Didn't guard it with `debug_assertions` yet, but probably should. `buffer_error` now takes the label option.
4. Added a query for invalid id labels
5. Add `Global::buffer_label` for returning the label from the struct, or the invalid id.
6. Change the error variants to query the `buffer_label` when creating the error

with that (and little bit of fudging to get in to the error state), I can get
```
wgpu error: Validation error

Caused by:
    In CommandEncoder::copy_buffer_to_buffer
    buffer (0, 1, Metal) (label: Some("Staging buffer")) is invalid
```
instead of 
```
wgpu error: Validation error

Caused by:
    In CommandEncoder::copy_buffer_to_buffer
    buffer (0, 1, Metal) is invalid
```

Some of the hub handling etc. is a bit iffy for me, I really have no idea what I'm doing.

The point would be to massage this to the point that there would be a simple steps to follow on how to decorate all the errors with labels to whatever they refer to.

Other ideas I had, included trying to have `impl Debug for Id<BufferId>` to print out the label (from the struct, wouldn't work for invalid ids), but in that context I don't think I have access to the Global, so I'm not sure how resolve the id to anything useful. I suppose there could a whole separate singleton storage for id to label maps which could be easier to access in any context. Then the errors could just store the Id, and not have a separate label field.




Co-authored-by: Mikko Lehtonen <scoopr@iki.fi>
2020-11-18 22:47:02 +00:00
Mikko Lehtonen
4498f172cc Retain labels for resources
As a braking api change, adds also label for the error id generation,
for labeling invalid ids too.

Also adds query methods the label.
2020-11-19 00:09:21 +02:00
bors[bot]
ed96a4218f [rs] Merge #629
629: Update wgpu, work around surface validation r=straightforward a=kvark

Works around https://github.com/gfx-rs/wgpu/issues/1030
Includes https://github.com/zakarumych/gpu-alloc/pull/24

Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2020-11-18 15:07:30 +00:00
Dzmitry Malyshau
a14c253e6a [rs] Update wgpu, work around surface validation 2020-11-18 10:05:20 -05:00
bors[bot]
5e1226995c Merge #1031
1031: Update gpu-alloc and naga r=straightforward a=kvark

**Connections**
includes critical https://github.com/zakarumych/gpu-alloc/pull/24

**Description**
Updates Naga and gpu-alloc deps

**Testing**
Tested on wgpu-rs

Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2020-11-18 14:26:07 +00:00
Dzmitry Malyshau
b48764728d Update gpu-alloc and naga 2020-11-18 09:24:43 -05:00
bors[bot]
c56340fb62 [rs] Merge #627
627: Fixed size in "boids" example r=kvark a=infinitesnow

Buffer size is specified in number of items instead of bytes and fails validation against compiled SPIR-V

Co-authored-by: infinitesnow <3xplosive.g@gmail.com>
2020-11-17 22:15:54 +00:00
infinitesnow
ca15e7c1a3 [rs] Fixed size in "boids" example 2020-11-17 21:26:35 +01:00
bors[bot]
8675a0cf5e [rs] Merge #621
621: Drop for surfaces and adapters r=grovesNL a=kvark

Based on https://github.com/gfx-rs/wgpu/pull/1023

Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2020-11-16 21:48:14 +00:00
Dzmitry Malyshau
edbe112d23 [rs] Drop for surfaces and adapters 2020-11-16 16:47:21 -05:00
bors[bot]
dff98ac2a8 [rs] Merge #624
624: Remove implicit conversion hello-triangle shader.vert r=kvark a=Napokue

Remove implicit conversion to float, and change it to explicit conversion. Reason for this change is to prepare the hello-triangle example for Naga glsl-spirv path.

Co-authored-by: Timo de Kort <dekort.timo@gmail.com>
2020-11-15 23:36:30 +00:00
bors[bot]
d3cc2dc511 Merge #1025
1025: Don't install Android NDK r=msiglreith a=kvark

Follows https://github.com/gfx-rs/gfx/pull/3474

Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
Co-authored-by: msiglreith <m.siglreith@gmail.com>
2020-11-15 23:35:47 +00:00
msiglreith
b09027a74a export ndk toolchain path 2020-11-15 18:34:55 -05:00
Timo de Kort
25b7cea64c [rs] Remove implicit conversion hello-triangle shader.vert 2020-11-15 23:13:53 +01:00
Dzmitry Malyshau
c7273b03d6 Don't install Android NDK 2020-11-14 20:07:50 -05:00
bors[bot]
af9713b249 Merge #1023
1023: Drop surfaces and adapters r=cwfitzgerald a=kvark

**Connections**
Not very connected

**Description**
Refactors our destruction paths a bit

**Testing**
tested on wgpu-rs

Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2020-11-13 23:50:28 +00:00
bors[bot]
82021b5e7c Merge #1024
1024: Update naga to 4d4e1cd4cb r=kvark a=kvark

**Connections**
Includes https://github.com/gfx-rs/naga/pull/273, https://github.com/gfx-rs/naga/pull/270, and others

**Description**
Better SPIR-V validation and introspection

**Testing**
Tested on Gecko (yo!)

Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2020-11-13 23:43:33 +00:00
Dzmitry Malyshau
ac89fbab8a Drop surfaces and adapters 2020-11-13 18:39:14 -05:00
Dzmitry Malyshau
b0a98548d1 Update naga to 4d4e1cd4cb 2020-11-13 12:26:48 -05:00
bors[bot]
57901a504c Merge #1021
1021: Normalize `Err(x)?` to `return Err(x.into())` r=kvark a=Kimundi

Just a tiny change based on some matrix discussion.

Co-authored-by: Marvin Löbel <loebel.marvin@gmail.com>
2020-11-12 23:14:14 +00:00
Marvin Löbel
3787d3bedb Change Err(x)? to return Err(x.into()) 2020-11-13 00:03:13 +01:00
bors[bot]
022f19f94c Merge #1018
1018: Add context for errors originating from commads in a Pass r=kvark a=Kimundi

**Description**
This adds some error context information for some errors that can happen in a `{Render,Compute}Pass` to make error messages more clear.

Combined with https://github.com/gfx-rs/wgpu-rs/pull/613, errors in passes will look like this:
```
wgpu error: Validation error

Caused by:
    In a RenderPass
    In a draw command
    index 3600 extends beyond limit 38
```


Co-authored-by: Marvin Löbel <loebel.marvin@gmail.com>
2020-11-12 22:11:37 +00:00
Marvin Löbel
8723a8379a Annotate all commands of {Compute,Render}Passes with error context informations 2020-11-12 23:05:10 +01:00
bors[bot]
92e75723d5 [rs] Merge #618
618: Removed unusued Uniform struct in texture-arrays example. r=cwfitzgerald a=Stygeon

The Uniform struct in the texture-arrays example is unused.

Co-authored-by: Stygeon <denrellum@gmail.com>
2020-11-12 01:30:35 +00:00
Stygeon
6fb829d4df [rs] Removed unusued Uniform struct in texture-arrays example. 2020-11-12 02:26:58 +01:00
bors[bot]
033c896c4f [rs] Merge #613
613: Add more context to errors originating in Passes and Encoders r=kvark a=Kimundi

**Description**
This adds some top-level error context information to indicate wether an error originated in a `{Render,Compute}Pass` or `{Command,RenderBundle}Encoder` to make error messages more clear.

Combined with https://github.com/gfx-rs/wgpu/pull/1018, errors in passes will look like this:
```
wgpu error: Validation error

Caused by:
    In a RenderPass
    In a draw command
    index 3600 extends beyond limit 38
```


Co-authored-by: Marvin Löbel <loebel.marvin@gmail.com>
2020-11-11 04:56:44 +00:00
bors[bot]
2226cc8d31 [rs] Merge #614
614: Bump winit version to 0.23.0 r=cwfitzgerald a=daveshah1

This fixes the following error trying to run the hello-triangle (and probably other) examples on GNOME/Wayland:

    [wayland-client error] Attempted to dispatch unknown opcode 0 for wl_shm, aborting.



Co-authored-by: David Shah <dave@ds0.me>
2020-11-10 20:57:19 +00:00
David Shah
ac806458f9 [rs] Bump winit version to 0.23.0
This fixes the following error trying to run the hello-triangle (and
probably other) examples on GNOME/Wayland:

    [wayland-client error] Attempted to dispatch unknown opcode 0 for wl_shm, aborting.

Signed-off-by: David Shah <dave@ds0.me>
2020-11-10 20:28:41 +00:00
bors[bot]
315dd420f4 [rs] Merge #612
612: Update create_buffer_init_polyfill for wasm32 r=grovesNL a=alankemp

This removes create_buffer_mapped which has been removed in the latest chrome canary and firefox nightly and fixes #609 

Co-authored-by: Alan Kemp <alan@alankemp.com>
2020-11-10 02:59:00 +00:00
Marvin Löbel
a74546f974 [rs] Add more context to errors originating in Passes and Encoders 2020-11-09 23:49:19 +01:00
Alan Kemp
e1b05a583a [rs] Update create_buffer_init_polyfill for wasm32 2020-11-09 21:22:03 +00:00
bors[bot]
2e88de3157 Merge #1015
1015: Replace gfx-memory by gpu-alloc r=cwfitzgerald a=kvark

**Connections**
Fixes #1011
Blocked on:
- https://github.com/zakarumych/gpu-alloc/issues/4
- https://github.com/zakarumych/gpu-alloc/pull/14
- https://github.com/zakarumych/gpu-alloc/issues/16

**Description**
Moves us to gpu-allocator, which should be simpler and better supported than gfx-memory.

**Testing**
Untested and unfinished (to be updated)

Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2020-11-09 17:58:16 +00:00
Dzmitry Malyshau
22efbeae70 Replace gfx-memory by gpu-alloc 2020-11-09 12:16:34 -05:00
bors[bot]
ccc178a3d0 [rs] Merge #611
611: Match inputs/outputs in msaa-line shader r=kvark a=kvark

Note: this shouldn't be necessary, as the varyings are matched by location and not the name. However, spirv-cross doesn't try to fiddle with the varying names, so it fails if they are unmatched.

Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2020-11-09 14:31:28 +00:00
Dzmitry Malyshau
b8f157f7df [rs] Match inputs/outputs in msaa-line shader 2020-11-09 09:27:51 -05:00
bors[bot]
8c386efb7c [rs] Merge #610
610: Rename TextureUsage::OUTPUT_ATTACHMENT to RENDER_ATTACHMENT r=kvark a=yzsolt

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

Co-authored-by: Zsolt Bölöny <bolony.zsolt@gmail.com>
2020-11-09 14:03:43 +00:00
Zsolt Bölöny
e6d7873844 [rs] Update dependencies 2020-11-09 13:50:06 +01:00
bors[bot]
789b09c7bd Merge #1017
1017: Rename output attachment usage r=grovesNL a=yzsolt

**Connections**
Implements #1001 

**Description**
Rename OUTPUT_ATTACHMENT texture usage to RENDER_ATTACHMENT to match the WebGPU spec

**Testing**
Ensure that `wgpu-rs` and `wgpu-native` build after the rename

**TODO**
- [ ] Update `wgpu-rs`
- [ ] Update `wgpu-native`

Co-authored-by: Zsolt Bölöny <bolony.zsolt@gmail.com>
2020-11-09 12:32:07 +00:00
Zsolt Bölöny
7c290fdd8d [rs] Rename TextureUsage::OUTPUT_ATTACHMENT to RENDER_ATTACHMENT 2020-11-09 10:35:55 +01:00
Zsolt Bölöny
a493ed06d8 Rename OutputAttachment helper struct to RenderAttachment too to avoid confusion 2020-11-08 14:27:44 +01:00
Zsolt Bölöny
2151a252ad Rename TextureUsage::OUTPUT_ATTACHMENT to RENDER_ATTACHMENT 2020-11-08 14:24:39 +01:00
Dzmitry Malyshau
73d3f71caa Enable the non-fill polygon mode feature if requested (#1016)
* Enable the non-fill polygon mode feature if requested

* Update wgpu-core/src/instance.rs

Co-authored-by: monocodus[bot] <49363530+monocodus[bot]@users.noreply.github.com>

Co-authored-by: monocodus[bot] <49363530+monocodus[bot]@users.noreply.github.com>
2020-11-06 00:32:04 -05:00