Commit Graph

747 Commits

Author SHA1 Message Date
Connor Fitzgerald
42a0683d48
Remove unwraps inside surface.configure (#3585) 2023-03-14 11:01:02 +01:00
Jinlei Li
9445317f26
Set max_memory_allocation_size via PhysicalDeviceMaintenance3Properties (#3567)
* vulkan: set  `max_memory_allocation_size` via `PhysicalDeviceMaintenance3Properties`

* Update CHANGELOG

* Follow the suggestions

* Fix fmt

* Update wgpu-hal/src/vulkan/adapter.rs

Co-authored-by: Teodor Tanasoaia <28601907+teoxoy@users.noreply.github.com>

* Enable `KhrMaintenance3Fn` on vk < 1.1

---------

Co-authored-by: Teodor Tanasoaia <28601907+teoxoy@users.noreply.github.com>
2023-03-09 20:05:39 +01:00
Teodor Tanasoaia
cf40e64b16
Change type of bytes_per_row and rows_per_image (#3529) 2023-03-06 16:44:36 -05:00
Josh Groves
2eb27f2c0e
Fix definition of NSOperatingSystemVersion (#3557) 2023-03-06 16:43:39 -05:00
Teodor Tanasoaia
54e4c8654d
[dx12] use typeless formats for textures that might be viewed as srgb or non-srgb (#3555)
query `CastingFullyTypedFormatSupported` and skip typeless formats if available
2023-03-03 19:42:34 +00:00
Teodor Tanasoaia
7e72f30179
Allow copying of textures with copy-compatible formats (#3528)
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>
2023-03-03 17:24:17 +00:00
Teodor Tanasoaia
ac689cbe1f
Update feature documentation (#3534) 2023-03-03 12:09:17 -05:00
Connor Fitzgerald
db3be88f90 Uppercase all error strings 2023-03-03 11:33:20 -05:00
Jinlei Li
de695fca0b
metal: if new_texture() returns NULL, create_texture() returns an error (#3554) 2023-03-03 13:51:38 +01:00
James Liu
6ee0d4c14d
Replace fxhash with rustc-hash (#3502)
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>
2023-03-01 18:46:38 +00:00
teoxoy
87a31bb74b don't rename the khronos-egl package 2023-03-01 13:45:16 -05:00
teoxoy
e2130a1d1e don't rename the d3d12 package 2023-03-01 13:45:16 -05:00
teoxoy
dc66d83f20 don't rename the metal package 2023-03-01 13:45:16 -05:00
James0124
9dc834a0ac
Treat VK_SUBOPTIMAL_KHR as VK_SUCCESS on Android. (#3525) 2023-02-27 10:52:09 +01:00
Jim Blandy
df54bc49dc
[msl-out]: Delete unused variable. (#3526) 2023-02-24 09:15:39 +01:00
Red Artist
af5f4d20f4
enable debug extension on emscripten (#3519)
* enable debug extension on emscripten

* update changelog

* extract emscripten stuff into a separate module

* use unmasked queries on w-u-u, and only enable extension on emscripten

* fix docs
2023-02-22 01:16:14 -05:00
daxpedda
74303308cd
Make crate features no-op on incompatible targets (#3466)
* Make crate features no-op on incompatible targets

* Remove `portable_features`

* Test `--all-features` in CI

* Make `renderdoc` no-op on WASM

* Address review
2023-02-21 13:50:55 +01:00
dependabot[bot]
9cdcd6749f
Bump renderdoc-sys from 0.7.1 to 1.0.0 (#3511)
Bumps [renderdoc-sys](https://github.com/ebkalderon/renderdoc-rs) from 0.7.1 to 1.0.0.
- [Release notes](https://github.com/ebkalderon/renderdoc-rs/releases)
- [Changelog](https://github.com/ebkalderon/renderdoc-rs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ebkalderon/renderdoc-rs/commits)

---
updated-dependencies:
- dependency-name: renderdoc-sys
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-21 12:59:28 +01:00
dependabot[bot]
0590a1cfc5
Bump glow from 0.12.0 to 0.12.1 (#3510)
Bumps [glow](https://github.com/grovesNL/glow) from 0.12.0 to 0.12.1.
- [Release notes](https://github.com/grovesNL/glow/releases)
- [Commits](https://github.com/grovesNL/glow/commits)

---
updated-dependencies:
- dependency-name: glow
  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-02-21 12:56:09 +01:00
Nicolas Silva
438d6394ef
Update naga to 0.11.0@git:9742f1616c3e3dd2cc9a5880616fc886c391bb9f (#3512)
* Update naga to 0.11.0@git:9742f1616c3e3dd2cc9a5880616fc886c391bb9f

* Mark the zero init workgroup test as passing.
2023-02-21 12:50:22 +01:00
Nicolas Silva
71ee61aa09
Update naga to 0.11.0@git:58105a06e2bd5aefeb9330984d47976e63c11dc4 (#3506) 2023-02-20 14:37:08 +00:00
Teodor Tanasoaia
b534379acb
[dx11] fix storage related features (#3497) 2023-02-18 00:10:31 -05:00
Teodor Tanasoaia
074d1da831
Set the new naga capabilities (#3494)
* remove redundant flag

* set the `MULTISAMPLED_SHADING` downlevel flag for gles and dx11

* set the right naga capabilities

add `Features::SHADER_EARLY_DEPTH_TEST`

* add changelog entry

* remove `@early_depth_test` from water example
2023-02-16 22:43:38 -05:00
Nicolas Silva
bf38b4b0b1
Update naga to 0.11.0@git:568d7c4c136dada369ef7f59ee8414a263d6c7b2 (#3491)
* Update naga to 0.11.0@git:568d7c4c136dada369ef7f59ee8414a263d6c7b2

* Fix the clear_texture after naga update.
2023-02-16 15:24:24 +01:00
daxpedda
e4445205c2
Remove emscripten crate features (#3467) 2023-02-15 21:46:00 +00:00
Teodor Tanasoaia
c51edd36fd
Support stencil-only views and copying to/from combined depth-stencil textures (#3436) 2023-02-15 16:20:22 -05:00
Artavazd Balaian
ee33f4d384
[gles] fix: Set FORCE_POINT_SIZE if it is vertex shader with mesh consist of point list (#3440) 2023-02-15 10:05:52 -05:00
Hanno Braun
581b22e6a0
Move warning to correct location (#3484)
It seems that where it was, it warned about the context being recreated
in every case, no matter whether the context would actually be recreated
or not.
2023-02-14 12:23:29 +00:00
dependabot[bot]
bd712e083c
Bump env_logger from 0.9.3 to 0.10.0 (#3479)
Bumps [env_logger](https://github.com/rust-cli/env_logger) from 0.9.3 to 0.10.0.
- [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.9.3...v0.10.0)

---
updated-dependencies:
- dependency-name: env_logger
  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-02-10 20:12:04 +00:00
dependabot[bot]
0c273bc496
Bump hassle-rs from 0.9.0 to 0.10.0 (#3473)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-10 12:17:17 -05:00
daxpedda
5b8c55c451
Build for WASM on docs.rs (#3462) 2023-02-09 15:38:40 -05:00
Jinlei Li
4593f951dd
vk: fix surface view formats validation error (#3432)
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>
2023-02-09 13:00:42 -05:00
Jinlei Li
0d5b4841d5
web: reimplement adapter|device_features (#3428) 2023-02-09 12:14:15 -05:00
Connor Fitzgerald
49cfc88f35
[GL] Unbind Vertex Buffers After Renderpass (#3459)
Closes https://github.com/gfx-rs/wgpu/issues/3457
2023-02-09 10:32:27 -05:00
Nathan Adams
238697c2da
Add MULTISAMPLE_X16 texture format feature flag where supported (#3454) 2023-02-06 19:53:48 +01:00
Teodor Tanasoaia
41de797c74
Change type of mip_level_count and array_layer_count (members of TextureViewDescriptor and ImageSubresourceRange) from Option<NonZeroU32> to Option<u32> (#3445)
Clean up duplicated code related to texture layers/mips.
2023-02-03 15:03:34 +01:00
Nicolas Silva
6399dd4866
Update naga to 0.11.0@git:4b796b157cb2b67b0ab166a2238fe4e9473bfd52 (#3451) 2023-02-03 12:30:08 +01:00
Elabajaba
42b48ecb9f
Update gpu allocator to 0.22 (#3447)
* bump gpu-allocator version

* cargo.lock
2023-02-03 00:58:07 -05:00
Elabajaba
7826092d86
Fix dx12 shader validation errors when dxil.dll isn't available in the local scope. (#3434)
* Fix dx12 shader validation errors when dxil.dll isn't available in the local scope.

* changelog

* clippy

* always explicitly validate shaders to simplify code

* destructor ordering
2023-02-01 22:55:54 -05:00
Elabajaba
c5e2f5a7b9
Add SHADERINT_16 feature to allow 16bit ints in Vulkan shaders (#3401)
* add support for vulkan SHADER_INT16

* changelog

* deno shader-i16

* better INT16 docs

Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>

* fix typo

---------

Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>
2023-02-02 02:00:22 +00:00
AdrianEddy
2562f323bb
[Metal] Add a way to create a device and queue from raw resources in wgpu-hal (#3338) 2023-02-01 23:56:48 +00:00
Elabajaba
1e27fd4afb
fix clippy for rust 1.67 (#3435)
* clippy --fix

* elide lifetimes

* fmt and more fixes

* disable clippy::needless_borrowed_reference as it clashes with clippy::pattern_type_mismatch

* missed flags for target=wasm32-unknown-unknown
2023-02-01 23:06:03 +01:00
João Capucho
c371e7039d
Implement the new checks for readonly stencils (#3443)
wgpu currently checks if the `write_mask` is 0 to determine wether a
stencil is used as readonly or not. However Webgpu contains a more
complex ruleset that also checks the cull mode and face operations to
determine if the stencil is readonly or not.

This commit brings these new rules to wgpu.
2023-02-01 21:13:46 +01:00
Jinlei Li
b31069f14a
Improve vk format msaa capabilities detection (#3429)
* Improve vk format msaa capabilities detection

* Update CHANGELOG

* Follow the suggestions

* Update wgpu-hal/src/vulkan/adapter.rs

Co-authored-by: Teodor Tanasoaia <28601907+teoxoy@users.noreply.github.com>
2023-01-28 12:03:43 +00:00
Connor Fitzgerald
b04cae69c0
Fix winapi features 2023-01-25 19:38:29 -05:00
Connor Fitzgerald
cf17230e32
Fix d3d12 version 2023-01-25 19:32:47 -05:00
Connor Fitzgerald
c3ed411375
Fix wgpu-hal versioning 2023-01-25 19:27:20 -05:00
Connor Fitzgerald
d3fec9524f
Release of 0.15 (#3424) 2023-01-25 19:25:41 -05:00
Teodor Tanasoaia
d2809137ba
Zero-initialize workgroup memory (#3174)
fixes https://github.com/gfx-rs/wgpu/issues/2430
2023-01-25 18:28:35 -05:00
Jinlei Li
33f94c7c84
Implement view_formats for SurfaceConfiguration (#3409)
Co-authored-by: Teodor Tanasoaia <28601907+teoxoy@users.noreply.github.com>
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>
2023-01-25 21:04:41 +00:00
Ashley
c039a74884
[WebGL] Allow creating a texture from an external web_sys::WebGlFramebuffer and writing to it (#2609) 2023-01-24 13:47:03 -05:00
Connor Fitzgerald
95a760bb42
Implement queue.copy_external_image_to_texture for WebGL2 and improve WebGPU Impl (#3288)
Co-authored-by: Teodor Tanasoaia <28601907+teoxoy@users.noreply.github.com>
Closes https://github.com/gfx-rs/wgpu/issues/1888
2023-01-24 18:44:15 +00:00
Josh Groves
5a999e624a
Update glow to 0.12.0 (#3417) 2023-01-24 02:36:31 +00:00
Jinlei Li
4cd753bccd
vk: improve view_formats setting (#3412)
* vk: improve view_formats setting

* Fix extension detection

* Update wgpu-hal/src/vulkan/device.rs

Co-authored-by: Teodor Tanasoaia <28601907+teoxoy@users.noreply.github.com>

* Follow the suggestion

* Tiny doc fix

* Follow the suggestion

Co-authored-by: Teodor Tanasoaia <28601907+teoxoy@users.noreply.github.com>
2023-01-23 16:02:25 +01:00
Nathan Adams
c5851275c5
GLES: Cache and reuse programs between similar pipelines (#3380)
* Cache programs in GLES backend by their stage info, to avoid recreating the same program untold many times

* Don't duplicate an arcs ref count in gles programs

* Extract ProgramCacheKey from gles ProgramCache

* gles: Panic if we can't acquire program_cache lock

* Clarify why the program cache is safe
2023-01-20 09:44:34 -05:00
Xiaopeng Li
24a904256e
Add create_surface_from_surface_handle (#3225)
Co-authored-by: lixiaopeng.jetspark <lixiaopeng.jetspark@bytedance.com>
2023-01-19 11:16:11 -05:00
Nicolas Silva
a3e3d2503f
Update naga to 1be8024. (#3405) 2023-01-19 15:25:25 +00:00
Connor Fitzgerald
5f99940afd
Remove update after bind workaround (#3397) 2023-01-19 09:44:58 -05:00
Connor Fitzgerald
2c3f9fabb7
Allow vulkan to change view formats (#3399) 2023-01-19 14:20:15 +01:00
Nathan Adams
cecf0633a3
Don't panic when gl.create_buffer() fails on webgl (#3396) 2023-01-18 21:31:16 +00:00
Elabajaba
81569dd6c3
Updated Dxc integration for DX12 backend (#3356)
Co-authored-by: unknown <alimilhim5@gmail.com>
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>
Closes https://github.com/gfx-rs/wgpu/issues/2722
closes https://github.com/gfx-rs/wgpu/pull/3147
2023-01-18 21:25:56 +00:00
Teodor Tanasoaia
b22cfa1298
Clearing a non-color attachment should be unreachable (#3393) 2023-01-18 15:52:25 -05:00
Nathan Adams
0705c7ad6b
Create gles buffers with DYNAMIC_DRAW instead of STATIC_DRAW (#3391) 2023-01-17 10:56:27 +01:00
Nathan Adams
4400ff8289
Increase GL MAX_PUSH_CONSTANTS from 16 to 64 (#3374) 2023-01-13 00:18:54 +00:00
Teodor Tanasoaia
48fbb921ca
update ash (#3370)
fixes https://github.com/gfx-rs/wgpu/issues/3079
2023-01-11 15:58:52 +00:00
Nicolas Silva
5a2e60c50e
Update naga to e98bd92 (#3352) 2023-01-10 14:04:18 -05:00
Teodor Tanasoaia
80d237725e
[vk] Set WEBGPU_TEXTURE_FORMAT_SUPPORT downlevel flag depending on the proper format support (#3367) 2023-01-10 16:33:33 +01:00
Teodor Tanasoaia
98ddb402eb
Set COPY_SRC/COPY_DST only based on Vulkan's TRANSFER_SRC/TRANSFER_DST (#3366)
* remove `BLIT_SRC`/`BLIT_DST`

* add changelog entry
2023-01-10 15:48:16 +01:00
James0124
e7ca1716f5
Fix panic in the GLES backend when creating a pipeline with opaque ty… (#3361)
* Fix panic in the GLES backend when creating a pipeline with opaque types other than samplers.

* Add changelog entry for #3361.
2023-01-10 09:26:45 +01:00
Teodor Tanasoaia
39f6b03e19
Document and improve extension detection (#3327)
* document and improve extension detection

* add changelog entry

* request `VK_KHR_get_physical_device_properties2` unconditionally

* remove commented code

* remove vk 1.1 check
2023-01-05 11:20:56 +01:00
Xiaopeng Li
71f50409e6
GraphicsCommandList validation (#3204)
* GraphicsCommandList validation

* Add change to CHANGELOG.md

* Close command list

* Destroy command buffer

* Find valid command list for reuse

* Fix clippy
2023-01-04 14:22:39 +01:00
Nathan Adams
186a29c34d
Implement TextureFormat::Stencil8 + add stencil example (#3343)
* Implement TextureFormat::Stencil8

* Add stencil-triangles demo to test Stencil8 and show how to use stencil testing

* Added changelog for Stencil8
2023-01-02 13:47:10 +01:00
Connor Fitzgerald
aa46e82f40 Fix texture view creation with full-resource views when using an explicit mip_level_count or array_layer_count 2022-12-21 17:24:46 -05:00
Connor Fitzgerald
9b9cc330ca
Fix up strict-assert usage (#3320)
* Removes unused assertions.rs

* Strict assert macro fixes

* Strict asserts shouldn't be default on wgpu
2022-12-20 22:04:45 -08:00
Connor Fitzgerald
4c5fef4a28
Re-add indirect execution to vulkan downlevel flags (#3319)
Closes https://github.com/gfx-rs/wgpu/issues/3318
2022-12-20 21:06:12 +00:00
Connor Fitzgerald
5241633b3a
Implement Presentation Timestamp Correlation (#3240)
Co-authored-by: Jim Blandy <jimb@red-bean.com>
2022-12-20 17:52:08 +00:00
Elabajaba
f3c50918c2
Suballocate DX12 buffer creation (#3163)
closes https://github.com/gfx-rs/wgpu/issues/2720
2022-12-20 12:23:44 -05:00
Teodor Tanasoaia
62e932b0a8
Add missing DEPTH_BIAS_CLAMP and FULL_DRAW_INDEX_UINT32 downlevel flags (#3316)
* add missing `DEPTH_BIAS_CLAMP` and `FULL_DRAW_INDEX_UINT32` downlevel flags

* add changelog entry

* use require_downlevel_flags
2022-12-20 18:21:54 +01:00
Teodor Tanasoaia
c91cae47d2
[dxgi] fix depth16Unorm formats for nodepth and typeless (#3313)
* [dxgi] fix `depth16Unorm` formats for nodepth and typeless

* add changelog entry
2022-12-20 15:29:43 +01:00
Erich Gubler
3cc6621fd3
Resolve Rust 1.66 clippy lints (#3304) 2022-12-16 17:23:12 -05:00
Jim Blandy
0e4c7dd6d2
Remove workspace inheritance (#3295) 2022-12-15 15:46:28 -05:00
Elabajaba
85fda2d18e
Update to ash 0.37.1 to replace deprecated function call (#3273)
* update to ash 0.37.1 to fix CI

* changelog

* Use equals for ash version

Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>

Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>
2022-12-08 15:22:30 -05:00
Connor Fitzgerald
458fb9bed7
Implement SHADER_PRIMITIVE_INDEX on all Backends (#3272)
* Fix bunnymark on GL

* Implement SHADER_PRIMITIVE_INDEX on all backends

* Changelog
2022-12-08 08:47:44 -05:00
Jim Blandy
a50836e0cb
Make wgpu-core users responsible for choosing back ends. (#3254) 2022-12-07 20:58:45 -05:00
Erich Gubler
feddf187c0
fix: oops, remove gles feature from wgpu-hal's defaults (#3264) 2022-12-05 16:46:07 -05:00
Ashley
6147c91818
Support OES_texture_float_linear in webgl (#3261)
closes https://github.com/gfx-rs/wgpu/issues/3215
2022-12-05 12:58:06 -05:00
Kevin Reid
2209463a54
Return an error instead of panicking when canvas context is unavailable (#3052)
* Low-level error handling in canvas context creation (for WebGPU and WebGL 2).

Part of fixing #3017. This commit changes the handling of `web_sys`
errors and nulls from `expect()` to returning `Err`, but it doesn't
actually affect the public API — that will be done in the next commit.

* Breaking: Change type of `create_surface()` functions to expose canvas errors.

Part of fixing #3017.
2022-11-30 23:41:29 -05:00
Erich Gubler
46b121667b
refactor(dx12): remove unsafe ops in Adapter::texture_format_capabilities (#3194) 2022-11-30 16:48:03 -05:00
Jinlei Li
d7fe7ef8cc
vk: eliminate duplicate values in SurfaceCapabilities's formats field (#3227) 2022-11-26 03:37:37 -05:00
Jim Blandy
73b23f1c8d
Move minimum supported rust version (MSRV) from 1.65 back to 1.64. (#3231) 2022-11-23 21:22:03 +00:00
Andreas Reich
2ccfb42440
allow gles float textures to be multisampled if available (#3183) 2022-11-23 16:10:11 -05:00
Erich Gubler
18f3f5f6f0
Enable unsafe_ops_in_unsafe_fn lint in all workspaces (#3044) 2022-11-14 10:49:39 -08:00
Jim Blandy
bc1728065b
wgpu-hal: Document some details of buffer binding. (#3169) 2022-11-09 15:50:06 -05:00
Ali
3c82a4cd5c
Added support for MSAA(x2,x8) beyond WEBGPU restrictions for native a… (#3140)
Closes https://github.com/gfx-rs/wgpu/issues/2910
2022-11-09 15:19:05 -05:00
Jinlei Li
04d12baa81 Change get_metal_layer() visiability to pub(crate) 2022-11-08 20:16:32 -08:00
Erich Gubler
4a9797276a refactor: resolve clippy::needless_borrow 2022-11-07 17:36:04 -08:00
Erich Gubler
a818b8540a refactor: resolve clippy::needless_return in raw-gles example 2022-11-07 17:36:04 -08:00
Erich Gubler
fb67de908e refactor: resolve clippy::explicit_auto_deref 2022-11-07 17:36:04 -08:00
Erich Gubler
98eb19c854 refactor: resolve clippy::bool_to_int_with_if 2022-11-07 17:36:04 -08:00
Andreas Reich
a377ae2b7f
Alpha to coverage support for GLES (#3187) 2022-11-07 16:56:59 -05:00
Andreas Reich
b838b0871c
Added new UNRESTRICTED_INDEX_BUFFER downlevel flag. (#3157)
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>
2022-11-07 15:45:50 -05:00
Lilith
a31cd2ef5c
Remove DEPTH24PLUS_STENCIL8 feature (#3151) 2022-11-02 16:44:15 -04:00
i509VCB
d81cb46be0
enable doc_auto_cfg for docs.rs (#3113)
* enable doc_auto_cfg for docs.rs

This should expose more feature labels in the generated documentation and removes the needs for the manually labeling the features for a type, function or enum variants.

* enable docsrs cfg when building docs for master
2022-10-26 17:07:25 -04:00
Jinlei Li
cc448817e7
Use cargo 1.64 workspace inheritance feature (#3107) 2022-10-20 01:41:17 -04:00
Ashley
d3ab5a197e
WebGL2 multiview support via OVR_multiview2 (#3121)
* Add OVR_multiview2 support

* Add changelog entry

* Only use multiview on wasm32 + unknown

* Add note to Features::MULTIVIEW
2022-10-18 12:14:18 -04:00
Connor Fitzgerald
ce081796c8
Rework CI (#3097) 2022-10-14 22:55:36 -04:00
i509VCB
7aca31fe9c
allow creation of wgpu_hal textures for gles backend (#3046)
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>
2022-10-13 06:41:12 +00:00
Xiaopeng Li
9272cc65cc
Fix memory leak on macOS (#3056) 2022-10-13 02:13:31 -04:00
Jim Blandy
f3d455b617
vulkan: Don't use pointer to dropped PhysicalDeviceDriverProperties. (#3076)
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>
2022-10-12 20:52:32 +00:00
Andreas Reich
351ca3ea3d
Fix webgl srgb blit not setting the viewport correctly (#3093)
* Fix webgl srgb blit not setting the viewport correctly

* Add changelog notes
2022-10-11 14:04:06 -04:00
Andreas Reich
acadd8dad5
webgl backend supports now non-srgb framebuffer (#3070) 2022-10-08 23:48:44 -04:00
daxpedda
02cc2ae234
[BREAKING] Make Shader(Module)Source::Wgsl optional (#2890) 2022-10-08 01:12:50 -04:00
Nicolas Silva
0a3e209c90 Shrink the default max binding index to 640 and expose it in Limits.
Following the corresponding changes happening in WebGPU.
2022-10-06 10:12:16 -07:00
Nicolas Silva
7892b0f96e Set web-sys dep to 0.3.60.
Looks like web-sys makes non-breaking version bumps when there are breaking changes in unstable APIs so sticking to specific versions should avoid unnecessary breakage.
2022-10-06 10:12:16 -07:00
Connor Fitzgerald
872b436104 Update version to 0.14 2022-10-05 18:45:25 -04:00
Connor Fitzgerald
91e0dbd1ae Update naga + deps 2022-10-05 18:45:25 -04:00
Nicolas Silva
37de3a3574
Set the image stride to zero when updating a single layer on metal. (#3063)
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>
2022-10-05 21:45:12 +00:00
Jinlei Li
b13bb468cb
gl: add Rgba16Float format support for color attachments (#3045)
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>
2022-10-05 21:31:22 +00:00
Jinlei Li
4992de5938
gl: ASTC_HDR feature detection (#3042) 2022-10-05 17:08:45 -04:00
Dragoș Tiselice
5c33e23b66
Fixed buffer sizes encoding on Metal. (#3047) 2022-10-05 16:44:51 -04:00
i509VCB
2372895944
Handle unsupported surfaces more gracefully (#3054) 2022-10-05 16:42:06 -04:00
Jim Blandy
b79c455144
Make hal::CommandEncoder and hal::CommandBuffer extend Debug. (#3060) 2022-10-05 16:38:21 -04:00
Mauro Gentile
7b8dd4e0bd
Vulkan Command pool optimization (#3065) 2022-10-05 16:36:18 -04:00
Xiaopeng Li
c927e810de
Fix label leak (#3053) 2022-09-27 02:49:21 -04:00
Jim Blandy
27a27568d6
Placate clippy 0.1.64. (#3048)
Derive `Eq` on some types in `wgpu-hal`.
2022-09-23 23:54:40 +00:00
i509VCB
061e04bff1
expose driver info in AdapterInfo (#3037)
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>
2022-09-21 02:45:28 +00:00
Mauro Gentile
cdf6ee0c87
Updating TextureFormat matching specs (#2954)
Co-authored-by: Mauro Gentile <Mauro.Gentile@ubisoft.com>
2022-09-20 12:08:06 -04:00
i509VCB
65e405193e
vulkan: use effective api version for determining device features (#3011) 2022-09-20 01:11:15 -04:00
i509VCB
f877a8a3c9
Vendor id clarification (#3036)
* set GL vendor for id Mesa and Apple

* match on "apple m" to mark M2 cpu as integrated in gles

* document AdapterInfo::vendor if the vendor has no PCI id
2022-09-19 23:52:00 -04:00
João Capucho
c61f61ca0e
dx12: Add support for push constants (#2866) 2022-09-19 20:47:24 -04:00
i509VCB
6f2c393024
move GL vendor magic numbers to "auxil::db" (#3035) 2022-09-19 06:48:15 +00:00
daxpedda
95408cd48b
[BREAKING] Wrap ShaderSource::Naga in Cow<'static> (#2903) 2022-09-19 00:50:46 -04:00
Jinlei Li
44399bb4a3
Expose alpha_mode, support non-opaque mode on metal and vk backends (#2836) 2022-09-19 00:10:21 -04:00
Alphyr
d1c94d09e2
Update dependencies (#3021) 2022-09-18 23:53:21 -04:00
i509VCB
9e3efd7019
pass around RawDisplayHandle and RawWindowHandle in implementation (#3022)
This change is to help with an attempt to allow the Context type in wgpu to be swappable at runtime. In order to do that, the functions provided by Context and it's associated types need to be object safe. Instead of passing a impl trait that combines both HasRawWindowHandle and HasRawDisplayHandle, we seperate the types into their RawDisplayHandle and RawWindowHandle parts internally to reduce some of the hal implementation code mess.
2022-09-15 16:29:20 -07:00
Jinlei Li
e350f50b2f
metal: remove PrivateCapabilities's format_rgb10a2_unorm_surface field (#2981)
* metal: remove PrivateCapabilities's format_rgb10a2_unorm_surface field

* Update CHANGELOG
2022-09-02 20:28:26 -07:00
Andreas Monitzer
6348a07d28
Expose the vk::Queue and the queue index in the Vulkan hal. (#2950) 2022-09-02 22:58:01 +00:00
Jinlei Li
ee7fd47ecb
metal: fix max_storage_xx max_texture max_sampler and max_vertex_xx limits (#2978) 2022-09-02 15:36:07 -07:00
i509VCB
c519901d57
vulkan: remove use of Vulkan12Features/Properties types (#2936)
Vulkan prohibits including `VkPhysicalDeviceVulkan12Features` structures in the chain passed to `VkCreateDevice` along with other more specific features structs. Similiar restrictions apply to the `...Properties` structures.

Fixes #2925.
2022-09-02 21:05:13 +00:00
François
b9564dbe74 enable union feature of smallvec 2022-09-02 11:41:20 -07:00
François
a50335f0f8 use smallvec instead of onplace_it with fixed size 2022-09-02 11:41:20 -07:00
Jim Blandy
58bc205f2a Update to Naga b209d911 (2022-9-1).
This removes an expected failure on AMD RADV. I guess #2751 was our
bug all along.
2022-09-02 11:33:55 -07:00
Jim Blandy
2cd08a1c9c
Placate Clippy 0.1.63. (#2977) 2022-08-24 17:25:59 -04:00
Jinlei Li
f918ac1ed1
vk: fix astc_hdr formats support (#2971)
* vk: fix `astc_hdr` formats support

* Update CHANGELOG
2022-08-20 19:18:39 +00:00
Jinlei Li
a08ea2a255
metal: add the missing msg_send![view, retain] call within from_view (#2976)
* metal: add the missing `msg_send![view, retain]` call within `from_view`

* Update CHANGELOG
2022-08-20 07:14:57 -07:00
Wyatt Herkamp
f7526ae960
winit 0.27 Update and raw-window-handle 0.5 (#2918) 2022-08-04 06:09:37 +00:00
i509VCB
8444fbe460
vulkan: fix issues querying multiview support (#2934) 2022-08-01 20:55:53 -04:00
Seamooo
0dce58dfbd
changed websys features in core and hal to align with used features (#2922)
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>
2022-08-01 19:06:26 +00:00
Reece
4cbf8cfcf1
Fix opening of renderdoc lib (#2930)
* Fix opening renderdoc lib

Renderdoc needs to not be opened by us, but instead open the existing copy.
Unfortunately this requires OS specific flags for opening, plus `libloading`
doesn't have full API coverage currently.

* Added changelog entry for #2930

* Hide RTLD_NOLOAD behind a cfg for unix

Co-authored-by: ABuffSeagull <reecevanatta@hey.com>
2022-08-01 01:39:55 +00:00
Kevin Reid
b784eee5af
Silence clippy::let_unit_value false positives on objc::msg_send calls. (#2924) 2022-07-31 17:55:37 -04:00