Commit Graph

712 Commits

Author SHA1 Message Date
Nick
00cf05c1d0 Fix Queue::write_texture, Fix DX12 write_texture_subset_2d and re-enable the test. (#4990) 2024-01-04 19:50:41 -05:00
Valaphee The Meerkat
7c21e605fb gles: use already existing debug__fn private capabilty instead of checking extensions (#4974) 2024-01-04 09:48:28 +01:00
Connor Fitzgerald
ad23b450d6 Pin DXC and Vulkan SDK version (#4980) 2024-01-04 08:41:13 +00:00
Ian Douglas Scott
771f64917c wgpu-hal: Fix Mesa version check for version with suffix containing . (#4959)
On Pop!_OS we have versions like
`Mesa 23.3.0-1pop0~1702935939~22.04~67e417a`. This failed to parse here
since it tried to split at the `.` in the suffix.

Not sure if other distros use a suffix with a `.`, but splitting from
the left and comparing as a tuple instead of a float seems cleaner
overall.

Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>
2024-01-04 07:22:33 +00:00
Connor Fitzgerald
b989e56874 Use Custom Mesa for Building (#4977) 2024-01-03 22:49:40 -05:00
Teodor Tanasoaia
6fdec5cc6b [gl] fix RGBA8 format capabilities (#4968)
- `Rgba8UnormSrgb` can't be used as a storage texture
- `Rgba8Snorm` can be used as a storage texture
2024-01-03 12:14:15 +01:00
sotaroikeda
1d6c7a0263 Support Device fence sharing with dx12 on Windows (#4900)
Co-authored-by: Sotaro Ikeda <you@example.com>
2023-12-20 13:33:47 -05:00
daxpedda
bcdc240a9a WebGL: add support for more RawWindowHandle variants (#4888) 2023-12-17 20:47:38 -05:00
daxpedda
2053358d89 Add wgpu crate features for backends (#4815)
* Introduce `dx12` and `metal` crate features to `wgpu`

* Implement dummy `Context` to allow compilation with `--no-default-features`

* Address review

* Remove `dummy::Context` in favor of `hal::api::Empty`

* Add changelog entry

* Panic early in `Instance::new()` if no backend is enabled

Co-Authored-By: Andreas Reich <1220815+Wumpf@users.noreply.github.com>

---------

Co-authored-by: Andreas Reich <1220815+Wumpf@users.noreply.github.com>
2023-12-16 10:39:53 +01:00
Xiaopeng Li
ecc301ea16 fix present mode for wgl (#4865) 2023-12-12 13:36:43 -05:00
Michael Palmos
eff9a362be Add COPY_SRC to Metal's surface usage bits. (#4852) 2023-12-10 08:32:36 +00:00
Theo Dulka
cf8e11efc3 Use VK_EXT_robustness2 only when not using an outdated intel iGPU driver (#4602) 2023-12-07 14:08:21 -05:00
Teodor Tanasoaia
0cbabcf229 Update multi-planar texture API (#4837) 2023-12-07 14:06:56 -05:00
Nicolas Silva
ff7b2c3993 Work around cbindgen issue
cbindgen spins out of control if wgpu_hal reexports a wgpu_types type using pub type in stead of pub use while keeping the same name.
2023-12-07 11:45:57 +01:00
Daniel Keitel
0f4df52b5a [wgpu-hal] Inline RayQuery Support (#3507)
Co-authored-by: JMS55 <47158642+JMS55@users.noreply.github.com>
Co-authored-by: Ashley Ruglys <ashley.ruglys@gmail.com>
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>
2023-12-06 21:12:41 +00:00
Valaphee The Meerkat
5022a6244b [gl] add support for line and point polygon modes (#4836)
Co-authored-by: Nicolas Silva <nical@fastmail.com>
2023-12-06 15:51:27 -05:00
Valaphee The Meerkat
a1fafe394f Remove DX11 backend (#4828) 2023-12-06 15:12:46 -05:00
Teodor Tanasoaia
12869e36fe [vk] remove (old) unused blocklist for dual source blending (#4758) 2023-12-06 15:50:10 +01:00
xiaopengli89
2882735cb9 check multi-planar format 2023-12-06 10:36:50 +01:00
Almar Klein
32c5a22293 Add feature float32-filterable (#4759) 2023-12-04 14:23:13 +01:00
Leo Kettmeir
41fb222726 update deno (#4801) 2023-11-30 15:29:30 +01:00
Andreas Reich
8da4925948 Remove surface extent validation (and thus fix the annoying Requested size ... is outside of the supported range warning) (#4796)
* Remove surface extent validation

* silence pnext vulkan validation warning which can happen on surface resize

* remove old VUID-VkSwapchainCreateInfoKHR-imageExtent-01689 validation warning ignore

* Validate surface against max texture size
2023-11-29 18:21:26 +01:00
Xiaopeng Li
a6503e59c9 Support nv12 texture format (#4573)
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>
2023-11-28 16:11:26 +00:00
Teodor Tanasoaia
f4c6faf773 Rename ALLOW_NONCOMPLIANT_ADAPTER to ALLOW_UNDERLYING_NONCOMPLIANT_ADAPTER (#4760)
* rename `ALLOW_NONCOMPLIANT_ADAPTER` to `ALLOW_UNDERLYING_NONCOMPLIANT_ADAPTER`

* clarify comment
2023-11-24 14:29:54 -05:00
Connor Fitzgerald
3c261f3652 Allow Tests to Expect Certain Panic or Validation Messages (#4748) 2023-11-23 03:49:01 -05:00
i509VCB
1a7db86917 wgpu-hal(vk): Add WGPU_ALLOW_NONCOMPLIANT_ADAPTER (#4754) 2023-11-22 23:13:29 -05:00
Connor Fitzgerald
1df98d9888 Test And Normalize Vertex Behavior on All Backends (#4723)
Co-authored-by: teoxoy <28601907+teoxoy@users.noreply.github.com>
2023-11-21 22:11:24 +00:00
Jim Blandy
72462267e8 [naga]: Let TypeInner::Matrix hold a Scalar, not just a width.
Let `naga::TypeInner::Matrix` hold a full `Scalar`, with a kind and
byte width, not merely a byte width, to make it possible to represent
matrices of AbstractFloats for WGSL.
2023-11-21 12:02:50 +01:00
Mauro Gentile
6e21f7a929 Arcanization of wgpu core resources (#3626)
Arcanization of wgpu_core resources

---------

Co-authored-by: Elabajaba <Elabajaba@users.noreply.github.com>
Co-authored-by: Niklas Korz <niklas@niklaskorz.de>
Co-authored-by: grovesNL <josh@joshgroves.com>
Co-authored-by: Jim Blandy <jimb@red-bean.com>
Co-authored-by: Mauro Gentile <Mauro.Gentile@ubisoft.com>
Co-authored-by: Sludge <96552222+SludgePhD@users.noreply.github.com>
2023-11-20 08:41:52 +01:00
Teodor Tanasoaia
666f681dae [vk] check that adapters are Vulkan compliant (#4718) 2023-11-17 17:42:53 -05:00
Teodor Tanasoaia
a34e39ad2f [dx12] filter out haswell iGPUs (#4709) 2023-11-17 13:40:09 -05:00
daxpedda
bec6560e10 Add WasmNotSendSync (#4702) 2023-11-16 19:47:10 -05:00
Jim Blandy
9f91c95c24 [naga] Introduce Scalar type to IR.
Introduce a new struct type, `Scalar`, combining a `ScalarKind` and a
`Bytes` width, and use this whenever such pairs of values are passed
around.

In particular, use `Scalar` in `TypeInner` variants `Scalar`, `Vector`,
`Atomic`, and `ValuePointer`.

Introduce associated `Scalar` constants `I32`, `U32`, `F32`, `BOOL`
and `F64`, for common cases.

Introduce a helper function `Scalar::float` for constructing `Float`
scalars of a given width, for dealing with `TypeInner::Matrix`, which
only supplies the scalar width of its elements, not a kind.

Introduce helper functions on `Literal` and `TypeInner`, to produce
the `Scalar` describing elements' values.

Use `Scalar` in `wgpu_core::validation::NumericType` as well.
2023-11-14 14:21:27 +01:00
Andreas Reich
f7420511d0 rename/deprecate block_size -> block_copy_size, improve docs (#4647)
Co-authored-by: Teodor Tanasoaia <28601907+teoxoy@users.noreply.github.com>
2023-11-13 19:04:35 +00:00
Westerbly Snaydley
2e7fd75712 vk: Enable FifoRelaxed PresentMode (#4666) 2023-11-10 17:09:42 +00:00
Teodor Tanasoaia
1d4fa812ef Gate usage of metal::ComputePassDescriptor on timestamp query support (#4643) 2023-11-06 14:30:04 +00:00
Connor Fitzgerald
7f72c9fc3b Fix GL Push Constant Layout (#4607)
* It verks!

* More tests

* Fixes

* Working multi-stage push constants

* Comments

* Add push constant partial update teste

* Docs

* Update Cargo.toml

* Comments
2023-11-06 07:58:26 -05:00
exrook
e7e2f2aa73 vulkan: Log validation layer messages during instance creation/destruction (#4586) 2023-11-05 23:14:59 -05:00
daxpedda
9501ccc6b0 Use HLSL 2018 (#4629) 2023-11-04 19:53:48 +00:00
Zoxc
3f80ee785c Implement mipmap views on the OpenGL backend (#4278) 2023-11-01 16:57:24 -04:00
Zoxc
8f6fcb1e6f Further OpenGL 3.1 support (#4612) 2023-10-30 11:51:13 -04:00
Zoxc
ac896cf223 Improve OpenGL 3.1 support (#4272)
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>
2023-10-30 05:35:24 +00:00
Zoxc
ff1ba0b4fe [wgl] Create a hidden window per instance (#4603) 2023-10-30 01:10:01 -04:00
Connor Fitzgerald
2aa7c29068 Extra Profiling Scopes (#4610) 2023-10-30 03:58:32 +00:00
TornaxO7
4c5a817071 Bump raw window handle to 0.6.0 (#4202)
Co-authored-by: junglie85 <junglie85@gmail.com>
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>
2023-10-27 05:24:46 +00:00
Nicolas Silva
9fd13dcce3 Validate max_vertex_buffers in set_vertex_buffer (#4574) 2023-10-26 19:48:03 -04:00
Connor Fitzgerald
ca7ac86ccd DXC on DX12 in CI (#4571) 2023-10-26 04:01:38 -04:00
Zoxc
3bdad8bd77 Add timestamp support to OpenGL (#4267) 2023-10-23 21:26:23 -04:00
wicast
9dc57617e4 feat(spv): shader debug option (#4028)
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>
2023-10-23 23:44:04 +00:00
Connor Fitzgerald
85cab49c53 Normalize GL language versions (#4283) 2023-10-23 05:17:00 +00:00