bors[bot]
35896df3b7
Merge #1716
...
1716: Update winit to 0.25 r=kvark a=Gordon-F
**Connections**
**Description**
Update winit to 0.25
**Testing**
Examples
Co-authored-by: Gordon-F <ishaposhnik@icloud.com>
2021-07-23 15:05:45 +00:00
Dzmitry Malyshau
8dc4942431
Update naga to bbfa9a0
, tweak DX12 debug output
2021-07-23 10:48:32 -04:00
Gordon-F
f0b1d5a673
Update winit to 0.25
2021-07-23 14:30:38 +03:00
Dzmitry Malyshau
2c45796d9c
Update Naga to cc91c77
2021-07-23 02:19:42 -04:00
bors[bot]
1f7d60d065
Merge #1713
...
1713: hal/dx12: rewrite view creation, use arrays more aggressively r=kvark a=kvark
**Connections**
**Description**
D3D12 has this thing where you can't create a 2D view with non-zero base array index.
So we have special logic now to fall back to 2D array views in these cases.
**Testing**
Tested on the Shadow example.
Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2021-07-23 06:07:18 +00:00
Dzmitry Malyshau
726cf4f614
hal/dx12: rewrite view creation, use arrays more aggressively
2021-07-23 00:07:23 -04:00
munrocket
f909a8e631
update naga revision
2021-07-22 20:52:26 +04:00
Connor Fitzgerald
683d03a8e4
Add Rgb9e5Ufloat
2021-07-21 23:54:46 -04:00
Dzmitry Malyshau
1a9a855ea9
Rename InputStepMode to VertexStepMode
2021-07-21 17:48:00 -04:00
Dzmitry Malyshau
8a971fcf2e
hal/vk: use actual view usage for imageless framebuffers
2021-07-21 12:14:20 -04:00
Dzmitry Malyshau
e9a2a1e438
hal/dx12: reset command pool
2021-07-20 10:39:40 -04:00
Dzmitry Malyshau
be13fe3048
hal/dx12: fix the binding model
2021-07-20 10:07:40 -04:00
Dzmitry Malyshau
35145615bf
Update naga, use binding map in DX12
2021-07-18 12:03:14 -04:00
initial-algebra
0db00e9657
Implement Feature::SHADER_PRIMITIVE_INDEX
on Vulkan
2021-07-17 15:31:35 -03:00
Dzmitry Malyshau
5419947095
hal/vk: relay semaphore
2021-07-16 17:55:03 -04:00
Connor Fitzgerald
0f84c7cf6e
Use EGL_KHR_gl_colorspace for srgb if available
2021-07-16 01:03:18 -04:00
xiaopengli89
6e63964e51
fix: readWriteTextureSupport is support on macOS 10.13+ / iOS 11.0
2021-07-15 14:40:05 +08:00
Dzmitry Malyshau
b98cba9bfd
hal/dx12: reset scissor and viewport
2021-07-15 02:10:28 -04:00
Dzmitry Malyshau
e2bd9c935c
hal/dx12: flip the root signature upside down
2021-07-15 01:37:49 -04:00
Dzmitry Malyshau
22fff526ab
dx12/hal: invalidate root elements on signature change
2021-07-14 23:13:08 -04:00
Dzmitry Malyshau
d85e8c6011
Clippy fixes
2021-07-14 16:17:39 -04:00
Dzmitry Malyshau
509b683e6b
hal: renderdoc integration
2021-07-14 16:17:39 -04:00
Boris-Chengbiao Zhou
1ecb48db80
hal/vulkan: Respect swapchain's minImageCount
2021-07-14 19:20:17 +02:00
Dzmitry Malyshau
8cd17aafe3
Switch read-only storage textures to be exclusive and behind a feature
2021-07-14 01:04:37 -04:00
Zicklag
2896a6e5f3
Fix Vulkan Backend Texture Format Mapping
...
Fixes the Bgra8UnormSrgb texture format.
Resolves #1646 .
2021-07-13 20:21:47 -05:00
bors[bot]
0f784bb3c0
Merge #1602
...
1602: New DX12 backend (unfinished) r=kvark a=kvark
**Connections**
Continuation of #1471
**Description**
Mostly fresh implementation on DX12 backend for wgpu-hal
Core changes:
- texture usage is filtered before passing to `create_texture_view`, so that wgpu-hal can assume every bit is important.
- all the copies involving textures are limited to one array layer at a time
- remove render pass boundary usages
**Testing**
Examples (not running yet)
Co-authored-by: Dzmitry Malyshau <dmalyshau@mozilla.com>
Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2021-07-13 22:26:44 +00:00
Zicklag
f0c7e990f7
Disable Intel Fastclear in GL Backend
...
This works around a Mesa bug on Intel cards:
- https://gitlab.freedesktop.org/mesa/mesa/-/issues/2565
- https://github.com/gfx-rs/wgpu/issues/1627#issuecomment-877854185
2021-07-13 11:21:06 -05:00
Dzmitry Malyshau
0df804e9c2
hal/dx12: bunch of validation fixes
2021-07-13 02:54:37 -04:00
Dzmitry Malyshau
7fb0315700
hal/dx12: build fixes for the new arrayvec
2021-07-13 01:11:47 -04:00
Dzmitry Malyshau
450e5dc08b
hal/dx12: queue operations
2021-07-13 01:04:08 -04:00
Dzmitry Malyshau
8163dc7b47
hal/dx12: pipeline creation
2021-07-13 01:04:07 -04:00
Dzmitry Malyshau
0a609e74c0
hal/dx12: compute pipelines, update naga
2021-07-13 01:04:06 -04:00
Dzmitry Malyshau
040a602b69
hal/dx12: bind group creation
2021-07-13 01:03:45 -04:00
Dzmitry Malyshau
7d29a3b70e
hal/dx12: binding resources and index/vertex buffers
2021-07-13 01:03:44 -04:00
Dzmitry Malyshau
c0432761d9
hal/dx12: use range-alloc for descriptor heaps
2021-07-13 01:03:15 -04:00
Dzmitry Malyshau
ba1bff58ed
hal/dx12: attachment clears and resolvess
2021-07-13 01:03:14 -04:00
Dzmitry Malyshau
00859b9e0c
Stop using render pass boundary usages for resource transitions
2021-07-13 01:02:42 -04:00
Dzmitry Malyshau
12bc3eb3fc
hal/dx12: set render targets
2021-07-13 01:01:31 -04:00
Dzmitry Malyshau
81f31f5555
hal: change blend color argument
2021-07-13 01:01:30 -04:00
Dzmitry Malyshau
1f91c5f297
hal/dx12: debug markers
2021-07-13 01:01:30 -04:00
Dzmitry Malyshau
27b8085048
hal/dx12: queries
2021-07-13 01:01:29 -04:00
Dzmitry Malyshau
b818157f67
hal/dx12: draws and dispatches
2021-07-13 01:01:28 -04:00
Dzmitry Malyshau
9069c2301f
hal/dx12: implement fill_buffer with zero
2021-07-13 01:01:28 -04:00
Dzmitry Malyshau
2c76b0e656
hal/dx12: clippy fixes, buffer-texture copies
2021-07-13 01:01:27 -04:00
Dzmitry Malyshau
35ee65707f
hal: make copy to work on one array layer at a time
2021-07-13 01:01:26 -04:00
Dzmitry Malyshau
f79c3781c3
hal/dx12: buffer-buffer and texture-texture copies
2021-07-13 01:01:25 -04:00
Dzmitry Malyshau
4f6812fc36
hal/dx12: resource barriers
2021-07-13 01:01:25 -04:00
Dzmitry Malyshau
43a39a229e
hal/dx12: command pooling
2021-07-13 01:01:24 -04:00
Dzmitry Malyshau
e128021aee
hal/dx12: pipeline layout
2021-07-13 01:01:23 -04:00
Dzmitry Malyshau
904621ee19
hal/dx12: sampler and query set creation
2021-07-13 01:01:23 -04:00
Dzmitry Malyshau
04ca3212de
hal/dx12: intercept debug output
2021-07-13 01:01:22 -04:00
Dzmitry Malyshau
855689462c
hal/dx12: fences
2021-07-13 01:01:21 -04:00
Dzmitry Malyshau
c7519432ee
Filter texture usages on view creation
2021-07-13 01:01:21 -04:00
Dzmitry Malyshau
925ece8b40
hal/dx12: creation of RTV/DSV/UAV
2021-07-13 01:01:20 -04:00
Dzmitry Malyshau
23615aa55d
hal/dx12: texture and view creation
2021-07-13 01:01:19 -04:00
Dzmitry Malyshau
c01f6a557e
hal/dx12: enable the backend in wgpu-core
2021-07-13 01:01:19 -04:00
Dzmitry Malyshau
971aee0e1c
hal/dx12: buffer creation, device idling
2021-07-13 01:01:18 -04:00
Dzmitry Malyshau
0942fb1346
hal/dx12: swap chain configuration
2021-07-13 01:01:17 -04:00
Dzmitry Malyshau
eb565a59f7
hal/dx12: move device and encoder into modules
2021-07-13 01:01:17 -04:00
Dzmitry Malyshau
3a2bbfd563
hal/dx12: adapter initialization
2021-07-13 01:01:16 -04:00
Zicklag
7e837ffcdc
Enable VK_KHR_timeline_semaphore On Vulkan < 1.2
2021-07-12 18:51:38 -05:00
Connor Fitzgerald
6c1dd5e153
Always use EXT Robustness
2021-07-11 22:28:45 -04:00
bors[bot]
4781d9da7b
Merge #1607
...
1607: Fix Downlevel Vertex Stage Storage Buffer Check r=kvark a=cwfitzgerald
**Connections**
Fixes a bug in #1599 . Also follows up on #1583 marking all of hello-compute as a failure.
**Testing**
Tests now pass on rpi4.
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>
2021-07-07 14:01:37 +00:00
Connor Fitzgerald
8ded21862e
Fix downlevel vertex stage storage buffer check
2021-07-06 21:43:47 -04:00
bors[bot]
d2a27e0c4e
Merge #1604
...
1604: Upgrade `arrayvec` to 0.7 r=kvark a=a1phyr
Upgrade `arrayvec` to version 0.7 (using const generics).
Co-authored-by: Benoît du Garreau <bdgdlm@outlook.com>
2021-07-06 05:31:22 +00:00
Dzmitry Malyshau
2efccb2bf8
hal/vk: fix indirect stage flag
2021-07-06 00:56:43 -04:00
Mikko Lehtonen
7e277c2ed9
Fix macos build
2021-07-06 02:08:19 +03:00
Benoît du Garreau
e7269e72f3
Upgrade arrayvec
to 0.7
2021-07-06 00:45:24 +02:00
bors[bot]
118cf2cdba
Merge #1599
...
1599: Fix Limits for lava/llvmpipe and re-enable and re-work CI r=kvark,groves,wumpf a=cwfitzgerald
**Connections**
No longer fixes #1551 .
**Description**
This PR has a couple things going on at once.
- Fixes limits for llvmpipe, lavapipe, and rpi4.
- Added a downlevel limit to express that RPI4 does not allow storage buffers in vertex shaders on GL.
- Added a `Limits::downlevel_default()` that takes minimum limits from GLES and adds some more documentation on how to choose limits.
- Moved all examples to the new downlevel limits
- Reworks CI to re-enable software testing and unify instructions.
**Testing**
It is
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>
2021-07-04 19:23:23 +00:00
Connor Fitzgerald
130ddcf561
Unify CI and testing
2021-07-04 15:22:51 -04:00
Dzmitry Malyshau
3de1681eb0
hal/vk: enable timeline semaphores
2021-07-04 00:50:05 -04:00
Dzmitry Malyshau
8ae7d51c82
hal/vk: request timeline semaphores if available
2021-07-04 00:50:05 -04:00
Connor Fitzgerald
26f3c03150
Add downlevel limit for vertex shader access to SSBO
2021-07-03 22:15:16 -04:00
bors[bot]
762cdb3953
Merge #1589
...
1589: [GL] Fix min_storage_buffer_offset_alignment param r=kvark a=Gordon-F
**Connections**
Android Emulator (11) error:
```
2021-07-02 14:49:12.500 8292-8317/rust.example.cube E/emuglGLESv2_enc: device/generic/goldfish-opengl/system/GLESv2_enc/GL2Encoder.cpp:s_glGetIntegerv:876 GL error 0x500
```
**Description**
As a workaround set this parameter to default value.
Co-authored-by: Gordon-F <ishaposhnik@icloud.com>
2021-07-04 00:33:32 +00:00
Dzmitry Malyshau
a4a4d541b8
hal/metal: bump storage limits
2021-07-03 20:26:15 -04:00
Gordon-F
a077102457
[GL] Fix min_storage_buffer_offset_alignment param
2021-07-03 22:45:45 +03:00
bors[bot]
edbe3b33fa
Merge #1593
...
1593: Fix VVL on halmark example r=kvark a=kvark
**Connections**
We have a bunch of VVL related to resource destruction on the halmark example.
It also seems to leak memory quite a ton and eventually hang the system.
**Description**
This PR fixes the logic of changing the command pools in halmark, its initialization sequence, and its destruction.
**Testing**
Tested on halmark and others
Co-authored-by: Dzmitry Malyshau <kvark@fastmail.com>
2021-07-03 05:13:18 +00:00
Dzmitry Malyshau
e2f97ea659
hal/gles: detect llvmpipe instead of lavapipe
2021-07-03 01:09:39 -04:00
Dzmitry Malyshau
497c6647ee
hal/vulkan: fix instance destruction logic
2021-07-03 01:07:21 -04:00
Dzmitry Malyshau
b15f1ebfb7
halmark: fix the command pool recycling policy
2021-07-03 00:23:11 -04:00
Dzmitry Malyshau
81b382f5cd
Readme and clippy fixes
2021-07-02 20:43:01 -04:00
Clayton Walker
25c452cbdd
Add metal layer back in
2021-07-02 15:51:11 -06:00
bors[bot]
df2b0b5843
Merge #1585
...
1585: hal/egl fix support for context extensions r=cwfitzgerald a=kvark
**Connections**
Follow-up to #1584
Closes #1577
**Description**
TIL that EGL extensions work differently from the EGL-1.5 stuff, and we are now treating them properly.
**Testing**
Basic testing on AMD
Co-authored-by: Dzmitry Malyshau <kvark@fastmail.com>
2021-07-02 19:29:15 +00:00
Dzmitry Malyshau
67625b2a54
hal/egl fix support for context extensions
2021-07-02 15:23:06 -04:00
bors[bot]
43c26e57e0
Merge #1588
...
1588: Update naga to 0b9af95
r=kvark a=kvark
**Connections**
Picks up https://github.com/gfx-rs/naga/pull/1060 for #1581
**Description**
Naga update
**Testing**
Untested
Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2021-07-02 06:00:13 +00:00
Dzmitry Malyshau
ba8fcb937d
Update naga to 0b9af95
2021-07-02 01:58:19 -04:00
Dzmitry Malyshau
34389396f9
hal/metal: mark buffer immutability
2021-07-02 01:52:28 -04:00
bors[bot]
871cbed18a
Merge #1584
...
1584: Update testing limits for rpi4 r=kvark a=cwfitzgerald
**Connections**
Related to #1574 . Exposed #1583 .
**Description**
Changes the reftesting limits to be tolerant of how the RPI4 renders. Fixes the debug half of #1577 .
Fixes some naming issues as well.
**Testing**
It is
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>
2021-07-02 04:34:55 +00:00
Connor Fitzgerald
f76200e725
Update testing limits for rpi4
2021-07-02 00:13:33 -04:00
Dzmitry Malyshau
579de425e5
hal/vk: fix sampler default LOD range
2021-07-02 00:05:36 -04:00
Dzmitry Malyshau
ba006cfaa7
Rename ColorWrite, TextureUsage, and BufferUsage
2021-06-30 14:57:38 -04:00
Dzmitry Malyshau
568ac3fa24
Switch all bitflag names to plural
2021-06-30 14:43:36 -04:00
Dzmitry Malyshau
6f13eebb7b
hal/gles: compressed ETC2 texture support
2021-06-30 12:06:59 -04:00
Dzmitry Malyshau
45074b2939
hal: more implementation comments
2021-06-30 02:31:13 -04:00
Dzmitry Malyshau
4be8864b38
hal/gles: totally rework the vertex data binding
2021-06-30 02:31:13 -04:00
Dzmitry Malyshau
40e2c33c6f
hal/gles: hack around cubemap support
2021-06-30 02:29:30 -04:00
Dzmitry Malyshau
582c128520
Pick up naga's GLSL continuing and Y-flip fixes
2021-06-30 02:29:30 -04:00
Dzmitry Malyshau
3a796c2244
hal/gles: fix buffer mapping
2021-06-30 02:29:30 -04:00
Dzmitry Malyshau
6025a8d25e
hal/gles: enable robust access by default
2021-06-30 02:29:29 -04:00
Dzmitry Malyshau
25ec7447e2
hal/gles: improve the exposed limits
2021-06-30 02:29:29 -04:00