Dmitry Zamkov
bbb7cc79ef
Implement clip-distances extension for GL and Vulkan backends ( #7730 )
...
* Basic implementation of `clip_distances` for Vulkan and GL backends
* Added GPU test for `clip-distances`
* Update feature array size
* Add changelog entry
* Validate `clip_distances` array size
* Check for `clip_distances` enable directive
* Consolidate code for generating `enable` directives in WGSL backend and add `clip_distances`.
2025-06-16 10:33:31 +02:00
Andy Leiserson
620c9d1e8b
Deferred error reporting for debug commands ( #7789 )
2025-06-12 11:53:32 -07:00
Erich Gubler
cf83de3a5d
chore!: remove deprecated type aliases for idents. in 2024-08 spec. rename ( #7790 )
...
This backs out commit 9436d56271 .
2025-06-12 09:55:00 -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
Vecvec
efbac5dfba
Add extra acceleration structure vertex formats. ( #7580 )
2025-06-11 18:17:14 -04:00
Andy Leiserson
ce89c916f8
Add storage for an error in CommandEncoderStatus ( #7785 )
2025-06-11 09:56:14 -07:00
Jim Blandy
9046b439d7
Add more logging to Instance::device_request_adapter. ( #7786 )
2025-06-11 08:36:15 +00:00
Andy Leiserson
24f779696b
Tweak MapPassErr to work for both errors and results ( #7780 )
2025-06-10 10:26:36 -07:00
Andy Leiserson
77d2b0017a
Split EncoderStateError from CommandEncoderError ( #7779 )
2025-06-10 09:46:30 -07:00
Andy Leiserson
d9c4bf22ea
Panic on errors in pass_end_with_unresolved_commands ( #7765 )
2025-06-09 11:28:43 -07:00
Raphael Hetzel
0d569d5550
Optional web-specific deps for wasm32 ( #7565 )
2025-05-29 22:26:01 +00:00
Andy Leiserson
3cca5f8cfd
Make the copy_buffer_to_buffer size parameter optional ( #7659 )
...
* Make wgpu-core's copy_buffer_to_buffer `size` parameter optional
* Make the copy size optional in more places
* Fix for webgpu backend
* [deno_webgpu] Support additional copyBufferToBuffer signatures
* Add changelog entry
* Add copyBufferToBuffer tests to CTS test list
(This doesn't actually enable the tests for the new overloads, because
of a different error reporting issue that affects many CTS tests
including these. But if you run the tests for the new overloads
manually, before and after the fix, you can see that the behavior has
changed.)
* Reproducible formula for vendoring modified webgpu-sys
Commit the updated vendor command in all the files for consistency.
2025-05-28 17:21:19 +02:00
Andy Leiserson
24d0eae36c
Remove another type of error that could be raised by destroy ( #7720 )
2025-05-24 17:02:00 +02:00
Amogh Shivaram
55725d6483
Destroy texture views in clear_mode when destroying texture ( #7705 )
2025-05-19 22:44:25 -04:00
Lucien Greathouse
45b3d66301
Fix error message for sampler arrays ( #7704 )
2025-05-19 19:25:36 -07:00
Andy Leiserson
0dc6bfdd67
Don't raise AlreadyDestroyed error on repeated destroy() calls ( #7686 )
...
* Don't raise `AlreadyDestroyed` error on repeated `destroy()` calls
* Add changelog entry
2025-05-13 09:10:48 +02:00
Mehmet Oguz Derin
2a62299a84
Support Sliced 3D for ASTC ( #7577 )
...
Enables "texture-compression-astc-sliced-3d" for backends that support ASTC (such as excluding D3D12).
2025-05-04 12:48:16 +02:00
Connor Fitzgerald
9fccdf5cf3
Extract texture <-> buffer copy logic to wgpu-types ( #7553 )
2025-04-28 21:15:59 +00:00
Jasper St. Pierre
38b6663f3c
validation: Fix type compatibility for streams vs. vertex inputs ( #7600 )
...
The old is_compatible_with handled scalar/scalar, scalar/vector, vector/vector, but was missing vector/scalar.
Since is_compatible_with is only used by vertex shader inputs, and vertex shader inputs can't be matrices (only scalars and vectors), we can actually simplify this by removing the other match and just only checking the kind.
Fixes #7568
2025-04-25 15:08:27 +02:00
teoxoy
d14849df48
[vk] add support for rendering to slices of 3D textures
2025-04-25 12:39:45 +02:00
teoxoy
d714e3d95a
[d3d12,metal,gl] add support for rendering to slices of 3D textures
2025-04-25 12:39:45 +02:00
teoxoy
15477b84a9
[wgpu-hal] make begin_render_pass fallible
2025-04-25 12:39:45 +02:00
teoxoy
5ecc48d494
add RenderPassColorAttachment::depth_slice
2025-04-25 12:39:45 +02:00
teoxoy
6058dd4296
[wgpu-core] allow 2D-Array texture views with a single layer to be used as render attachments
2025-04-25 12:39:45 +02:00
Teodor Tanasoaia
195217b269
allow read-write and read-only storage textures without TEXTURE_ADAPTER_SPECIFIC_FORMAT_FEATURES ( #7623 )
2025-04-24 11:45:24 -04:00
Zachary Harrold
66263789bc
[wgpu-core]: Remove x_instead_of_y exceptions ( #7598 )
2025-04-23 03:17:29 +00:00
teoxoy
3b72d59a3c
make memory pressure detection optional and configurable
2025-04-22 09:21:27 +02:00
teoxoy
7b482622d3
allow sampler creation to return OOMs
...
This is to preserve the current behavior as tested by the `SAMPLER_CREATION_FAILURE` test.
This is not spec compliant but it's unclear what we should do instead. I opened https://github.com/gpuweb/gpuweb/issues/5142 to figure out what we should do.
2025-04-22 09:21:27 +02:00
teoxoy
c13fc3d141
don't call release_gpu_resources when losing the device
...
This removes the possibility of deadlocks happening since `release_gpu_resources` tries to lock resources (trackers, snatchable_lock, pending_writes, life_tracker) while they might be already locked; `handle_hal_error` is called in lots of places.
Removing the call only delays destruction since `release_gpu_resources` is still called in `maintain`.
2025-04-22 09:21:27 +02:00
teoxoy
ece29b6e68
[D3D12/VK] add OOM check on submit and poll that will lose the device if we are over 95% of our budget
2025-04-22 09:21:27 +02:00
teoxoy
c144f2a697
invalidate Device on OOM errors with the exception of buffer, texture, query set and acceleration structure creation
2025-04-22 09:21:27 +02:00
teoxoy
c49620d1a2
add device validity checks to Queue methods
2025-04-22 09:21:27 +02:00
RedMindZ
f64eae7734
Fixed a deadlock caused by locking the device's snatchable lock **after** locking the queue's pending writes ( #7582 )
2025-04-21 11:08:57 -04:00
Ebbe Steenhoudt
7cab1747ee
Loosen Viewport validation requirements to match the new specs ( #7564 )
2025-04-18 15:17:53 +02:00
teoxoy
597114052e
[d3d12] get vertex_index & instance_index builtins working for indirect draws
2025-04-15 17:56:17 +02:00
Teodor Tanasoaia
78d05f5f71
[core] check that indirect buffers have not been destroyed ( #7534 )
2025-04-14 11:06:32 -04:00
Connor Fitzgerald
45d8f42513
Use workspace package information everywhere
2025-04-10 20:41:28 -04:00
Bruce Mitchener
dde9422114
Fix build with profiling enabled ( #7509 )
2025-04-11 00:34:05 +00:00
Bruce Mitchener
3081c4f094
Fix typos ( #7510 )
2025-04-10 15:09:03 -04:00
Connor Fitzgerald
8c2c2ce203
Release v25 ( #7505 )
2025-04-10 16:13:02 +00:00
Vecvec
8010203281
Rework acceleration structure build tracking.
2025-04-09 22:27:04 -04:00
Vecvec
382a1e3c9b
Make submission index lockable.
2025-04-09 22:27:04 -04:00
Vecvec
1c4b73c098
Implement as_hal for BLASes and TLASes ( #7303 )
2025-04-09 14:50:43 -04: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
Vecvec
e8e66afb72
Fix new acceleration structure building validation errors. ( #7486 )
2025-04-07 15:17:06 +02: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
Connor Fitzgerald
c344bec508
Comments
2025-04-03 10:35:20 -04:00
Connor Fitzgerald
6a986f4bc4
Timestamp normalization
2025-04-03 10:35:20 -04:00
Josh Groves
ab38e8e430
Avoid overflows for extreme scissor coordinates ( #7459 )
2025-04-01 09:47:39 -04:00