Commit Graph

4502 Commits

Author SHA1 Message Date
Patrik Buhring
41efabbd88
Fix limits interface on web. (#4107) 2023-09-01 05:46:00 +00:00
dependabot[bot]
4a12ab73ae
Bump profiling from 1.0.9 to 1.0.10 (#4102)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-31 23:59:00 -04:00
Rajesh Malviya
625afc3b42
Drop texture clear_views in surface_texture_discard (#4057) 2023-08-30 17:58:47 -04:00
SMG
e47dc2adad
use WGSL for VertexFormat example types (#4035)
* use WGSL for VertexFormat example types

* Update CHANGELOG.md

* use f32 for all VertexFormat float types
2023-08-29 16:53:08 +00:00
Brad Werth
5c2c840159
Prevent Metal from crashing when a still-open encoder is deallocated, resolve issue #2077. (#4023) 2023-08-28 18:23:35 -07:00
Nicolas Silva
1ced67f056
Parametrize the size of the non-sampler descriptor heap in dx12 (#4077) 2023-08-25 21:51:29 +02:00
Nicolas Silva
399637e2b8
Bind group layout dedup (#3925)
* Remove generic parameter in compat::Manager.

The code is specific to bind group layout ids and the generic parameter gets in the way.

* Add a test.

The test actually covers wgpu's configuration where deduplication does not require the indirection rather than the new code. I used it to debug the new code with the configuration hard-coded. It's tedious to add a test to cover dedpuplication of bind group layouts for users of wgpu_core to provide their IDs, we can rely on the CTS which has test for that.

* Implement bind group layout deduplication for all configurations

Currently wgpu-core implement bind group layout deduplication only when it creates its own resource IDs. In other words it works for wgpu but not in Firefox.
This PR bridges the gap by allowing an optional indirection in bind group layouts: each BGL may store an ID referring to its "deduplicated" BGL.
When referring to a BGL the rest of the code must make sure to follow the indirection. The exception is command buffer processing which is considered hot code and where we first validate against the provided BGL ID and only follow the indirection if the initial check failed.

The main pain point with this approach is the various places where wgpu-core manually updates reference counts: we have to be careful about following the indirection to track the right BGL.

* Avoid making decisions based on the size of some generic type.
2023-08-25 21:48:22 +02:00
dependabot[bot]
ac2075e164
Bump serde from 1.0.185 to 1.0.186 (#4086)
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.185 to 1.0.186.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.185...v1.0.186)

---
updated-dependencies:
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-24 12:47:27 +02:00
dependabot[bot]
c7e262c5d6
Bump serde from 1.0.183 to 1.0.185 (#4080)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-21 23:51:37 -04:00
dependabot[bot]
7c65aec9ea
Bump ron from 0.8.0 to 0.8.1 (#4075)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-21 14:26:14 -04:00
dependabot[bot]
d755143c89
Bump png from 0.17.9 to 0.17.10 (#4079)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-21 14:26:04 -04:00
Jim Blandy
636bef9cd5 Tracker mod docs: fix explanation of index re-use. 2023-08-19 17:06:07 -07:00
dependabot[bot]
1ee4bb502c
Bump thiserror from 1.0.46 to 1.0.47 (#4074)
Bumps [thiserror](https://github.com/dtolnay/thiserror) from 1.0.46 to 1.0.47.
- [Release notes](https://github.com/dtolnay/thiserror/releases)
- [Commits](https://github.com/dtolnay/thiserror/compare/1.0.46...1.0.47)

---
updated-dependencies:
- dependency-name: thiserror
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-19 10:22:51 +02:00
Fredrik Fornwall
bf324fb947
Make power_preference_from_env() respect WGPU_POWER_PREF=none (#4076)
Also update wgpu/README.md now that default() is None.
2023-08-18 11:05:34 +02:00
dependabot[bot]
6accf3266d
Bump tokio from 1.31.0 to 1.32.0 (#4069)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-17 15:57:50 -04:00
dependabot[bot]
b9acec6780
Bump anyhow from 1.0.74 to 1.0.75 (#4070)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-17 15:57:45 -04:00
Teodor Tanasoaia
f58be7b8f1
DX12 set Features::VERTEX_WRITABLE_STORAGE based on the right FL (#4033) 2023-08-17 15:55:58 -04:00
JMS55
76aa03c9dc
Faster set_bind_group for WebGPU backend (#4068) 2023-08-16 23:26:29 -04:00
Nicolas Silva
7b07f42beb
Use i32::MAX as the max buffer size for Dx12 (#4020) 2023-08-16 17:12:19 -04:00
Kevin Reid
a2c929427b
webgl: Comment why it's okay to overwrite webgl2_context. (#4064) 2023-08-16 17:11:30 -04:00
dependabot[bot]
f61ed50dbf
Bump thiserror from 1.0.44 to 1.0.46 (#4062)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-16 12:19:21 -04:00
dependabot[bot]
384bd84c3d
Bump anyhow from 1.0.72 to 1.0.74 (#4061)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-16 12:19:16 -04:00
dependabot[bot]
edafd97349
Bump serde_json from 1.0.104 to 1.0.105 (#4060)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-16 12:19:09 -04:00
Pieter-Jan Briers
e973a06268
Allow specifying minor GLES3 version (#3998) 2023-08-16 11:51:56 -04:00
Jim Blandy
e11526e23c
[vulkan] Don't free command buffers before destroying the pool. (#4059)
Calling `vkDestroyCommandPool` automatically frees all command buffers allocated
from that pool, so there is no need for `Device::destroy_command_encoder` to
explicitly call `vkFreeCommandBuffers` on the `CommandEncoder`'s `free` and
`discarded` lists.
2023-08-16 15:23:31 +02:00
hybcloud
57874e5c54
improved PR#4038 by using ash's definition instead (#4044)
of hard-coded c_str.
2023-08-15 07:29:24 +00:00
James0124
7544af0f83
Add validation in accordance with WebGPU setViewport valid usage fo… (#4058)
* Add validation in accordance with WebGPU `setViewport` valid usage for `x`, `y` and `this.[[attachment_size]]`.

`x` and `y` must not be negative, and the rect must be contained in the render target.

* Add changelog entry.
2023-08-15 09:15:19 +02:00
Nicolas Silva
50cfc541aa
Update naga to 0.13.0@git:7a19f3af909202c7eafd36633b5584bfbb353ecb (#4051) 2023-08-15 00:09:53 +02:00
dependabot[bot]
049ce5332e
Bump tokio from 1.30.0 to 1.31.0 (#4048)
Bumps [tokio](https://github.com/tokio-rs/tokio) from 1.30.0 to 1.31.0.
- [Release notes](https://github.com/tokio-rs/tokio/releases)
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-1.30.0...tokio-1.31.0)

---
updated-dependencies:
- dependency-name: tokio
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-15 00:08:20 +02:00
Kevin Reid
2bdb3196f9
Add an overview of RenderPass and how render state works. (#4055)
* Explain the general relationship of `set` and `draw` methods.
* Explain render state changes and that you can have lots of them.
* Specify default values of render state.
2023-08-14 22:24:27 +02:00
Connor Fitzgerald
f825ce4ac2
Fix Callback Ordering (#4036)
* Fix Callback Ordering

* Format & Changelog
2023-08-14 08:33:50 -04:00
dependabot[bot]
406ee5dc1b
Bump bitflags from 2.3.3 to 2.4.0 (#4049)
Bumps [bitflags](https://github.com/bitflags/bitflags) from 2.3.3 to 2.4.0.
- [Release notes](https://github.com/bitflags/bitflags/releases)
- [Changelog](https://github.com/bitflags/bitflags/blob/main/CHANGELOG.md)
- [Commits](https://github.com/bitflags/bitflags/compare/2.3.3...2.4.0)

---
updated-dependencies:
- dependency-name: bitflags
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-14 09:26:44 +02:00
Jinlei Li
cda3f21652
Fix capture example panic in the browser (#4043) 2023-08-13 16:06:22 +02:00
Ryan Kaplan
014ae3fe43
Add get_mapped_range_as_array_buffer which - on wasm WebGPU builds - avoids copying mapped data into wasm heap (#4042)
Co-authored-by: Ryan Kaplan <ryan@Ryans-M2.local>
2023-08-13 16:02:16 +02:00
Jim Blandy
07f92c97b1
[vk] Don't request portability enumeration without the extension. (#4038) 2023-08-11 21:14:25 -04:00
Teodor Tanasoaia
c7da76a4c6
Validate DownlevelFlags::READ_ONLY_DEPTH_STENCIL (#4031) 2023-08-11 16:34:35 -04:00
Teodor Tanasoaia
0d233b44c5
DX11 set some more feature flags (#4034) 2023-08-11 16:33:55 -04:00
Teodor Tanasoaia
5bbaca7d55
DX12 doesn't support Features::POLYGON_MODE_POINT (#4032) 2023-08-11 16:30:01 -04:00
dependabot[bot]
e36c560748
Bump tokio from 1.29.1 to 1.30.0 (#4025)
Bumps [tokio](https://github.com/tokio-rs/tokio) from 1.29.1 to 1.30.0.
- [Release notes](https://github.com/tokio-rs/tokio/releases)
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-1.29.1...tokio-1.30.0)

---
updated-dependencies:
- dependency-name: tokio
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-10 09:23:15 +02:00
dependabot[bot]
671988b2e8
Bump image from 0.24.6 to 0.24.7 (#4018)
Bumps [image](https://github.com/image-rs/image) from 0.24.6 to 0.24.7.
- [Changelog](https://github.com/image-rs/image/blob/master/CHANGES.md)
- [Commits](https://github.com/image-rs/image/compare/v0.24.6...v0.24.7)

---
updated-dependencies:
- dependency-name: image
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-09 09:02:04 +02:00
dependabot[bot]
24ca8c9ca8
Bump serde from 1.0.182 to 1.0.183 (#4015)
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.182 to 1.0.183.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.182...v1.0.183)

---
updated-dependencies:
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-08 13:57:45 +02:00
dependabot[bot]
7c6b857562
Bump serde from 1.0.181 to 1.0.182 (#4009)
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.181 to 1.0.182.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.181...v1.0.182)

---
updated-dependencies:
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-07 09:37:08 +02:00
dependabot[bot]
7cdce3ba34
Bump profiling from 1.0.8 to 1.0.9 (#4011)
Bumps [profiling](https://github.com/aclysma/profiling) from 1.0.8 to 1.0.9.
- [Changelog](https://github.com/aclysma/profiling/blob/master/CHANGELOG.md)
- [Commits](https://github.com/aclysma/profiling/commits)

---
updated-dependencies:
- dependency-name: profiling
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-07 09:36:41 +02:00
dependabot[bot]
2aeaedd9a1
Bump serde from 1.0.180 to 1.0.181 (#4005)
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.180 to 1.0.181.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.180...v1.0.181)

---
updated-dependencies:
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-06 08:59:45 +02:00
Valaphee The Meerkat
359e392322
Update CHANGELOG.md (#4003) 2023-08-03 14:53:24 +00:00
Connor Fitzgerald
edd45ff781
Suppress validation error caused by OBS layer (#4002) 2023-08-03 05:52:41 +00:00
Connor Fitzgerald
d11d2f96dc
Fix Occlusion Queries on Mac (#4001) 2023-08-02 19:10:21 -04:00
Christopher Fleetwood
3305e88d63
feature: Timestamp queries (#3636)
Co-authored-by: Andreas Reich <r_andreas2@web.de>
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>
Co-authored-by: Connor Fitzgerald <connor@modyfi.io>
2023-08-02 18:04:24 -04:00
Valaphee The Meerkat
494ae1a815
Add support for occlusion queries (#3402)
Co-authored-by: Leo Kettmeir <crowlkats@toaxl.com>
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>
2023-08-02 19:05:59 +00:00
JustAnotherCodemonkey
5b4c6b8ae4
List limits for Limits::downlevel_defaults and downlevel_webgl2_defaults in docs. (#3988)
* Add the docs. (And change max_buffer_size for default and downlevel_default to be more readable.)

* Put limits listed in documentation on seperate lines via bullet points.

* Update changelog.

* Fix fmt.

* Turn doc lists into testable code blocks with markers for changed values.
2023-08-02 10:20:20 +02:00