Inner Daemons
80c4468492
Try to fix occasional CI failures caused by #8345 (mipmap-query) ( #8472 )
...
* Try to fix Occasional CI failures on wgpu-examples [Executed] [Vulkan/llvmpipe (LLVM 18.1.3, 256 bits)/0] mipmap-query
Fixes #8345
2025-11-04 15:34:58 -05:00
Kevin Reid
6560412a52
Make StagingBelt own the Device it uses.
...
This means that usage of a `StagingBelt` only requires passing along
the current `CommandEncoder` instead of both the encoder and the device.
It also makes the API reflect the fact that a `StagingBelt` cannot be
reused with a fresh device.
As far as I know, the only reason this was not done previously was that
`Device` was not clonable, and so doing this would have required an
`Arc<Device>` or other specific mechanism.
2025-11-01 21:43:48 -04:00
Inner Daemons
ad0f3111b7
Add multiview limits and tests ( #8206 )
...
Co-authored-by: Andreas Reich <r_andreas2@web.de >
Co-authored-by: Magnus <85136135+SupaMaggie70Incorporated@users.noreply.github.com >
2025-11-01 12:08:15 +00:00
Connor Fitzgerald
a682d9e15a
Update desired_maximum_frame_latency documentation ( #8421 )
2025-10-30 13:57:52 +01:00
Opstic
f0209e3db8
Add support for transient textures on Vulkan and Metal ( #8247 )
...
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com >
2025-10-16 19:50:01 +00:00
Sam
a8f51f8fd1
Split MipmapFilterMode from FilterMode ( #8314 )
2025-10-08 18:06:33 +02:00
Robin Cramer
4652ea4189
Changed enumerate_adapters to be able to work with custom backends ( #8230 )
...
Co-authored-by: Andreas Reich <r_andreas2@web.de >
2025-10-06 19:27:23 +00:00
Connor Fitzgerald
482a983e10
Release v27 ( #8287 )
2025-10-01 19:36:18 -04:00
Andreas Reich
333f811e9c
Rework wgpu::PollType to only two enum variants ( #8285 )
2025-10-01 18:08:07 -04:00
Magnus
05cc6dca82
[hal/dx12] Mesh Shaders ( #8110 )
...
* Features and draw commands added
* Tried to implement the pipeline creation (completely untested)
* Fixed clippy issues
* Fixed something I think
* A little bit of work on the mesh shader example (currently doesn't work on dx12)
* Reached a new kind of error state
* Fixed an alignment issue
* DirectX 12 mesh shaders working :party:
* Removed stupid change and updated changelog
* Fixed typo
* Added backends option to example framework
* Removed silly no write fragment shader from tests to see if anything breaks
* Tried to make mesh shader tests run elsewhere too
* Removed printlns and checked that dx12 mesh shader tests run
* Documented very strange issue
* I'm so lost
* Fixed stupid typos
* Fixed all issues
* Removed unnecessary example stuff, updated tests
* Updated typos.toml
* Updated limits
* Apply suggestion from @cwfitzgerald
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com >
* Apply suggestion from @cwfitzgerald
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com >
* Removed supported backends, made example & tests always pass the filename to shader compilers
* Removed excessive bools in test params
* Added new tests to the list
* I'm a sinner for this one (unused import)
* Replaced random stuff with test params hashing
* Updated typos.toml
* Updated -Fo typo thing
* Actually fixed typo issue this time
* Update CHANGELOG.md
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com >
* Update tests/tests/wgpu-gpu/mesh_shader/mod.rs
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update wgpu-hal/src/dx12/mod.rs
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com >
* Addressed comments
* Lmao
---------
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-09-25 03:24:56 +00:00
renovate[bot]
4566e56677
chore(deps): update rust crate encase to 0.12 ( #8228 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com >
2025-09-24 22:18:05 +00:00
renovate[bot]
6bab36d1fd
chore(deps): update cargo.lock ( #8197 )
...
* chore(deps): update cargo.lock
* Update to png 0.18
* Waive cargo-deny advisory check for `adler` crate
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Andy Leiserson <aleiserson@mozilla.com >
2025-09-08 18:14:34 -04:00
Connor Fitzgerald
8d1f4bb5f2
Require token for experimental features ( #8163 )
2025-08-29 15:43:27 -04:00
Connor Fitzgerald
97ba77d668
We're just lowercase bro ( #8160 )
2025-08-28 11:09:07 -04:00
Connor Fitzgerald
fe86710af7
Properly enable getrandom in nanorand ( #8098 )
2025-08-20 17:16:58 -04:00
Magnus
17a17f716a
Initial precompiled shaders implementation ( #7834 )
...
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com >
2025-08-20 16:20:59 -04:00
Kevin Reid
ea8315e28e
Change uncaptured error handler pointer type from Box to Arc.
...
This will be necessary for the next change.
2025-08-13 16:26:46 +01:00
Bot-Kerem
e990388af9
Update README.md ( #8069 )
2025-08-08 23:58:57 +01:00
Connor Fitzgerald
09d0c94576
Use explicit test enumeration
2025-08-01 01:54:01 -04:00
SupaMaggie70Incorporated
074c0e7191
Add mesh shading api to wgpu & wgpu-core ( #7345 )
2025-07-24 20:58:56 -04:00
Jamie Nicol
acfa8c5776
[wgpu-core] Add ExternalTexture type to wgpu-core
...
`ExternalTexture` will form the basis of wgpu's implementation of
WebGPU's `GPUExternalTexture`. [1]
The application will be responsible for creating `Texture`(s) and
`TextureView`(s) from the external texture source and managing their
lifecycle. It may have a single RGBA texture, or it may have multiple
textures for separate Y and Cb/Cr planes. It can then create an external
texture by calling `create_external_texture()`, providing the texture
views and a descriptor. The descriptor provides the following required
information:
* Whether the texture data is RGBA, or multiplanar or interleaved
YCbCr.
* The purpoted size of the external texture, which may not match the
actual size of the underlying textures.
* A matrix for converting from YCbCr to RGBA, if required.
* A transform to apply to texture sample coordinates, allowing for
rotation and crop rects.
The external texture stores a reference to the provided texture views,
and additionally owns a `Buffer`. This buffer holds data of the type
`ExternalTextureParams`, and will be provided as a uniform buffer to
shaders containing external textures. This contains information that
will be required by the shaders to handle external textures correctly.
Note that attempting to create an external texture will fail unless the
`Feature::EXTERNAL_TEXTURE` feature is enabled, which as of yet is not
supported by any HAL backends.
Additionally add the relevant API to wgpu, implemented for the
wgpu-core backend. The web and custom backends are unimplemented.
[1] https://www.w3.org/TR/webgpu/#gpuexternaltexture
2025-07-22 15:38:15 -07:00
Andy Leiserson
9a596fa1dc
Fix warnings from the nightly Rust compiler ( #7964 )
2025-07-17 16:08:06 -04:00
Connor Fitzgerald
ff0de91ad7
Bump REPO_MSRV to 1.88 ( #7960 )
2025-07-17 13:00:40 -04:00
Vecvec
4844fa6b5e
Merge acceleration structure feature and ray query feature. ( #7913 )
...
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com >
2025-07-10 19:53:32 +00:00
Connor Fitzgerald
03f1b535ca
Bump version to v26
2025-07-09 20:38:11 -04:00
Vecvec
dc0d457a9a
Add limits for acceleration structures ( #7845 )
2025-06-25 14:49:55 -04:00
Vecvec
aa427de4ea
Remove unsafe acceleration structure build ( #7513 )
2025-06-12 00:43:03 -04:00
Vecvec
73eb83ded1
[wgpu] Blas compaction ( #7285 )
...
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com >
2025-06-11 21:40:10 -04:00
Andy Leiserson
54d30da44a
Fix the publish job ( #7783 )
2025-06-10 17:19:42 +00:00
renovate[bot]
d09c730c02
chore(deps): update rust crate nanorand to 0.8 ( #7772 )
2025-06-09 04:10:11 +00:00
Zachary Harrold
6151330e3a
[wgpu-hal]: MVP no_std support ( #7599 )
...
* MVP `no_std` support in `wgpu-hal`
* Update CHANGELOG.md
* Fix visibility
* Fix unused imports
* Response to feedback
Co-Authored-By: Connor Fitzgerald <connorwadefitzgerald@gmail.com >
* Update other `validation_canary` usages
Co-Authored-By: Connor Fitzgerald <connorwadefitzgerald@gmail.com >
---------
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com >
2025-05-30 12:31:44 -04:00
Raphael Hetzel
0d569d5550
Optional web-specific deps for wasm32 ( #7565 )
2025-05-29 22:26:01 +00:00
Vecvec
85001b2436
Use new struct AnimationTimer instead of Instant to prevent random test failures. ( #7685 )
2025-05-13 22:52:49 -04:00
Connor Fitzgerald
267f14632f
Reduce versions to minimum required
2025-04-27 18:34:52 +02:00
Kevin Reid
9727e75ad7
Update Cargo.toml to direct-minimal-versions consistency.
2025-04-25 14:40:12 -04:00
teoxoy
5ecc48d494
add RenderPassColorAttachment::depth_slice
2025-04-25 12:39:45 +02:00
Connor Fitzgerald
a9e93f9acb
Update missed dependencies
2025-04-22 12:04:36 -04:00
sagudev
6666d528b2
Allow obtaining custom implementation from wgpu api types ( #7541 )
2025-04-18 16:58:49 -04:00
sagudev
bbff2c4e0b
use wgt::PollType<u64> in device interface instead of wgt::PollType<SubmissionIndex> ( #7562 )
2025-04-17 18:29:11 -04:00
Connor Fitzgerald
defca6ee35
Ensure raytracing tests run on slightly downlevel adapters
2025-04-16 15:02:42 -04:00
Connor Fitzgerald
6efeae98dd
Fix path to images on ray_cube_normals test
2025-04-16 15:02:42 -04:00
Connor Fitzgerald
0e898baa8d
Fix skybox example parameters
2025-04-16 15:02:42 -04:00
Connor Fitzgerald
146018cf6e
Update VulkanSDK to 1.4.309
2025-04-16 15:02:42 -04:00
Connor Fitzgerald
1f6a21c5e6
Remove unneeded file
2025-04-16 15:02:42 -04:00
teoxoy
62d4e82149
[example] ray_cube_shadows: wrap push constant in a struct
...
We are aware of this issue, I don't know why the example doesn't fail on trunk though...
2025-04-15 17:56:17 +02:00
Connor Fitzgerald
8c2c2ce203
Release v25 ( #7505 )
2025-04-10 16:13:02 +00:00
Sylvain Benner
14690470bb
[metal] Metal compute shader passthrough ( #7326 )
...
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com >
2025-04-09 14:25:41 +00:00
dependabot[bot]
cd81063aef
chore(deps): bump the patch-updates group with 11 updates ( #7485 )
...
Bumps the patch-updates group with 11 updates:
| Package | From | To |
| --- | --- | --- |
| [env_logger](https://github.com/rust-cli/env_logger ) | `0.11.7` | `0.11.8` |
| [smallvec](https://github.com/servo/rust-smallvec ) | `1.14.0` | `1.15.0` |
| [tokio](https://github.com/tokio-rs/tokio ) | `1.44.1` | `1.44.2` |
| [petgraph](https://github.com/petgraph/petgraph ) | `0.7.1` | `0.8.0` |
| [cc](https://github.com/rust-lang/cc-rs ) | `1.2.17` | `1.2.18` |
| [clap](https://github.com/clap-rs/clap ) | `4.5.34` | `4.5.35` |
| [clap_builder](https://github.com/clap-rs/clap ) | `4.5.34` | `4.5.35` |
| [errno](https://github.com/lambda-fairy/rust-errno ) | `0.3.10` | `0.3.11` |
| [foldhash](https://github.com/orlp/foldhash ) | `0.1.4` | `0.1.5` |
| [prettyplease](https://github.com/dtolnay/prettyplease ) | `0.2.31` | `0.2.32` |
| [quick-xml](https://github.com/tafia/quick-xml ) | `0.37.3` | `0.37.4` |
Updates `env_logger` from 0.11.7 to 0.11.8
- [Release notes](https://github.com/rust-cli/env_logger/releases )
- [Changelog](https://github.com/rust-cli/env_logger/blob/main/CHANGELOG.md )
- [Commits](https://github.com/rust-cli/env_logger/compare/v0.11.7...v0.11.8 )
Updates `smallvec` from 1.14.0 to 1.15.0
- [Release notes](https://github.com/servo/rust-smallvec/releases )
- [Commits](https://github.com/servo/rust-smallvec/compare/v1.14.0...v1.15.0 )
Updates `tokio` from 1.44.1 to 1.44.2
- [Release notes](https://github.com/tokio-rs/tokio/releases )
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-1.44.1...tokio-1.44.2 )
Updates `petgraph` from 0.7.1 to 0.8.0
- [Release notes](https://github.com/petgraph/petgraph/releases )
- [Changelog](https://github.com/petgraph/petgraph/blob/master/CHANGELOG.md )
- [Commits](https://github.com/petgraph/petgraph/compare/petgraph@v0.7.1...petgraph@v0.8.0 )
Updates `cc` from 1.2.17 to 1.2.18
- [Release notes](https://github.com/rust-lang/cc-rs/releases )
- [Changelog](https://github.com/rust-lang/cc-rs/blob/main/CHANGELOG.md )
- [Commits](https://github.com/rust-lang/cc-rs/compare/cc-v1.2.17...cc-v1.2.18 )
Updates `clap` from 4.5.34 to 4.5.35
- [Release notes](https://github.com/clap-rs/clap/releases )
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md )
- [Commits](https://github.com/clap-rs/clap/compare/clap_complete-v4.5.34...clap_complete-v4.5.35 )
Updates `clap_builder` from 4.5.34 to 4.5.35
- [Release notes](https://github.com/clap-rs/clap/releases )
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md )
- [Commits](https://github.com/clap-rs/clap/compare/v4.5.34...v4.5.35 )
Updates `errno` from 0.3.10 to 0.3.11
- [Release notes](https://github.com/lambda-fairy/rust-errno/releases )
- [Changelog](https://github.com/lambda-fairy/rust-errno/blob/main/CHANGELOG.md )
- [Commits](https://github.com/lambda-fairy/rust-errno/compare/v0.3.10...v0.3.11 )
Updates `foldhash` from 0.1.4 to 0.1.5
- [Commits](https://github.com/orlp/foldhash/compare/v0.1.4...v0.1.5 )
Updates `prettyplease` from 0.2.31 to 0.2.32
- [Release notes](https://github.com/dtolnay/prettyplease/releases )
- [Commits](https://github.com/dtolnay/prettyplease/compare/0.2.31...0.2.32 )
Updates `quick-xml` from 0.37.3 to 0.37.4
- [Release notes](https://github.com/tafia/quick-xml/releases )
- [Changelog](https://github.com/tafia/quick-xml/blob/master/Changelog.md )
- [Commits](https://github.com/tafia/quick-xml/compare/v0.37.3...v0.37.4 )
---
updated-dependencies:
- dependency-name: env_logger
dependency-version: 0.11.8
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: patch-updates
- dependency-name: smallvec
dependency-version: 1.15.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: patch-updates
- dependency-name: tokio
dependency-version: 1.44.2
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: patch-updates
- dependency-name: petgraph
dependency-version: 0.8.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: patch-updates
- dependency-name: cc
dependency-version: 1.2.18
dependency-type: indirect
update-type: version-update:semver-patch
dependency-group: patch-updates
- dependency-name: clap
dependency-version: 4.5.35
dependency-type: indirect
update-type: version-update:semver-patch
dependency-group: patch-updates
- dependency-name: clap_builder
dependency-version: 4.5.35
dependency-type: indirect
update-type: version-update:semver-patch
dependency-group: patch-updates
- dependency-name: errno
dependency-version: 0.3.11
dependency-type: indirect
update-type: version-update:semver-patch
dependency-group: patch-updates
- dependency-name: foldhash
dependency-version: 0.1.5
dependency-type: indirect
update-type: version-update:semver-patch
dependency-group: patch-updates
- dependency-name: prettyplease
dependency-version: 0.2.32
dependency-type: indirect
update-type: version-update:semver-patch
dependency-group: patch-updates
- dependency-name: quick-xml
dependency-version: 0.37.4
dependency-type: indirect
update-type: version-update:semver-patch
dependency-group: patch-updates
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-07 13:11:14 -04:00
Andy Leiserson
a843c880d2
[metal] Fix handling of stage visibility for binding arrays ( #7479 )
...
Fixes #7287
2025-04-04 11:20:57 -04:00
Connor Fitzgerald
c860a2cf8c
Rename and unsafe start_capture -> start_graphics_debugger_capture ( #7470 )
...
* Improve `start_capture` docs
* Docs
2025-04-03 13:07:22 -04:00