Commit Graph

405 Commits

Author SHA1 Message Date
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
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
daxpedda
bec6560e10 Add WasmNotSendSync (#4702) 2023-11-16 19:47:10 -05: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
Brad Werth
4e65eca1e8 More complete implementation of "lose the device". (#4645)
* More complete implementation of "lose the device".

This provides a way for wgpu-core to specify a callback on "lose the
device". It ensures this callback is called at the appropriate times:
either after device.destroy has empty queues, or on demand from
device.lose.

A test has been added to device.rs.

* Updated CHANGELOG.md.

* Fix conversion to *const c_char.

* Use an allow lint to permit trivial_casts.

* rustfmt changes.
2023-11-08 22:22:18 +01:00
Kevin Reid
e0341c52cf Document nonzero surface size requirement. (#4609) 2023-10-29 23:22:38 -04:00
Connor Fitzgerald
ca7ac86ccd DXC on DX12 in CI (#4571) 2023-10-26 04:01:38 -04:00
DevJac
6b859a15d8 Improve error message: "Format Bgra8UnormSrgb can't be multisampled" (#4294)
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>
2023-10-26 01:36:32 -04:00
Zoxc
3bdad8bd77 Add timestamp support to OpenGL (#4267) 2023-10-23 21:26:23 -04:00
Zoxc
2b985e2fad Add WGL context creation and OpenGL support (#4248)
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>
2023-10-18 18:40:33 +00:00
Nicolas Silva
8c03aa85e6 Make it possible to filter labels out ahead of wgpu-hal (#4246)
* Make it possible to filter labels out.

Co-authored-by: Jim Blandy <jimb@red-bean.com>
2023-10-18 17:45:59 +02:00
Nicolas Silva
ff306d20e0 Add support for bgra8unorm-storage (#4228)
* Add `BGRA8UNORM_STORAGE` extension

* Leave a comment in the backends that don't support bgra8unorm-storage

* Pass the appropriate storage format to naga

* Check for bgra8unorm storage support in the vulkan backend

* Add a test

Co-authored-by: Jinlei Li <jinleili0@outlook.com>
Co-authored-by: Teodor Tanasoaia <28601907+teoxoy@users.noreply.github.com>
2023-10-13 10:07:11 +00:00
Nicolas Silva
f95d1c55e3 Expose Instance flags (#4230)
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>
2023-10-11 17:39:04 +00:00
Leo Kettmeir
d0a7f46e3a update deno and spec (#4143)
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>
2023-10-04 04:25:56 +00:00
Teodor Tanasoaia
422c636877 Add Rgb10a2Uint format (#4199) 2023-10-03 14:56:21 +02:00
Jim Blandy
8e393ca213 Add some missing Debug implementations. (#4166) 2023-09-22 23:00:07 -04:00
Aaron Hill
2b4a8b318f wgpu-core: Only produce StageError::InputNotConsumed on DX11/DX12 (#4116)
* wgpu-core: Only produce StageError::InputNotConsumed on DX11/DX12

This error only exists due to an issue with naga's HLSL support:
https://github.com/gfx-rs/naga/issues/1945
The WGPU spec itself allows vertex shader outputs that are
not consumed by the fragment shader.

Until the issue is fixed, we can allow unconsumed outputs on
all platforms other than DX11/DX12.

* Add Features::SHADER_UNUSED_VERTEX_OUTPUT to allow disabling check

* Pick an unused feature id
2023-09-20 21:02:37 -04:00
Alphyr
82f0cd9ee6 Fix Features::TEXTURE_COMPRESSION_ASTC* doc (#4157)
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>
2023-09-20 18:45:09 +00:00
Frederik Magnus Johansen Vestre
dc5beac8c9 Support dual source blending (#4022)
Co-authored-by: Teodor Tanasoaia <28601907+teoxoy@users.noreply.github.com>
2023-09-19 13:26:30 +02:00
Andreas Reich
0ffdae31a1 Metal encoder & pass timestamp support (#4008)
Implements timer queries via write_timestamp on Metal for encoders (whenever timer queries are available) and passes (for Intel/AMD GPUs, where we should advertise TIMESTAMP_QUERY_INSIDE_PASSES now).

Due to some bugs in Metal this was a lot harder than expected. I believe the solution is close to optimal with the current restrictions in place. For details see code comments.
2023-09-16 20:01:46 +00: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
Nicolas Silva
1ced67f056 Parametrize the size of the non-sampler descriptor heap in dx12 (#4077) 2023-08-25 21:51:29 +02:00
Pieter-Jan Briers
e973a06268 Allow specifying minor GLES3 version (#3998) 2023-08-16 11:51:56 -04:00
Teodor Tanasoaia
c7da76a4c6 Validate DownlevelFlags::READ_ONLY_DEPTH_STENCIL (#4031) 2023-08-11 16:34:35 -04:00
Teodor Tanasoaia
5bbaca7d55 DX12 doesn't support Features::POLYGON_MODE_POINT (#4032) 2023-08-11 16:30:01 -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
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
Pieter-Jan Briers
09b010b26a Update Dx12Compiler documentation even more. (#3995) 2023-07-31 23:47:42 -04:00
Bruce Mitchener
2a77bbd80d Fix some typos. (#3965) 2023-07-23 08:15:20 +00:00
Small White
ac9ac8bcae Updated documentation to clarify dx12compiler usage. (#3957) 2023-07-21 17:50:25 +00:00
Nicolas Silva
4ab9dbea8f Update max_bindings_per_bind_group from 640 to 1000 to reflect spec (#3942)
* Update max_bindings_per_bind_group from 640 to 1000 to reflect change in the spec.

* Add changelog entry.
2023-07-20 10:02:59 -04:00
amfaber
a60efbde96 Expose TextureUsages in SurfaceCapabilities (#3874)
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>
2023-07-19 22:57:41 +00:00
Aaron Hill
fd5550cc89 Make RequestAdapterOptions.power_preference optional (#3903)
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>
2023-07-19 21:04:31 +00:00
Erich Gubler
c062e18858 Update max_bindings_per_bind_group default to 1000 (#3943) 2023-07-19 16:19:26 -04:00
daxpedda
88f18ed190 Don't implement Send or Sync on Wasm (#3691)
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>
2023-06-29 20:31:18 +00:00
Connor Fitzgerald
e6be20f72e Make wgpu-info into a proper CLI Tool (#3856) 2023-06-15 19:56:15 +00:00
Connor Fitzgerald
10172e1f38 Move Examples and Tests to Their Own Crates (#3841)
Co-authored-by: Connor Fitzgerald <connor@modyfi.io>
2023-06-10 18:35:46 +00:00
Connor Fitzgerald
173820222f Migrate to nv-flip for image comparison (#3830)
Co-authored-by: Connor Fitzgerald <connor@modyfi.io>
2023-06-08 11:48:06 -04:00
Teodor Tanasoaia
2e4209c537 Add back components info of TextureFormats (#3843)
* add back components info of `TextureFormat`s
* add changelog
2023-06-06 19:28:46 +02:00
Elabajaba
e6314c4070 DX12 increase max_storage_buffers_per_shader_stage and max_storage_textures_per_shader_stage (#3798) 2023-05-30 12:38:54 +02:00
Jim Blandy
7f4c39c8db Fix doc links in wgpu-types/src/lib.rs. (#3799) 2023-05-23 13:21:14 -04:00
Jim Blandy
3563849585 Document that various sizes and offsets are in bytes. (#3773) 2023-05-13 22:22:28 -04:00
Erich Gubler
f71a1bc736 docs(adapter): document device and vendor IDs repr. (#3763) 2023-05-10 12:13:01 +00:00
Ame
4d8a7ed38d Change AdapterInfo::{device,vendor} fields to u32 (#3760)
* Change AdapterInfo device and vendor to u32s

* Add CHANGELOG
2023-05-09 11:17:27 +02:00
Erich Gubler
3e562aaeaa docs: note feature req. for Depth32FloatStencil8 (#3734)
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>
2023-05-03 10:08:52 +00:00
Jinlei Li
62ea7813e4 Implement Features::RG11B10UFLOAT_RENDERABLE (#3701) 2023-04-19 13:34:29 +02:00
J
191cabc833 fix a minor typo (#3703)
L1642 `creates` -> `create`
2023-04-19 09:09:58 +00:00
François
bf8e6fe371 add feature RG11B10UFLOAT_RENDERABLE on webgpu (#3689)
* add feature RG11B10UFLOAT_RENDERABLE on web

* changelog
2023-04-14 14:52:37 +02:00