Evan Hemsley
9163913305
GPU: Correctly recycle D3D12 descriptor heaps ( #14234 )
...
(cherry picked from commit 20206b8e66 )
2025-10-13 13:00:38 -07:00
Evan Hemsley
8d4324cba2
GPU: Bump MAX_COLOR_TARGET_BINDINGS to 8 ( #13937 )
...
(cherry picked from commit fe314a1b8a )
2025-09-12 13:38:58 -07:00
Evan Hemsley
0e24267eb5
gpu: D3D12 only requires feature level 11_0 with Resource Binding Tier 2. ( #13782 )
...
We previously thought this wasn't possible because constant buffer offsets and
partial updates were unavailable, but we were reading the wrong table - this is
only the case for D3D11...
https://learn.microsoft.com/en-us/windows/win32/direct3d11/overviews-direct3d-11-devices-downlevel-intro
... while 12 doesn't list this feature at all:
https://learn.microsoft.com/en-us/windows/win32/direct3d12/hardware-feature-levels
We double checked and Jesse Natalie confirmed that this feature is required for
D3D12 even for 11_0 drivers. (Thanks Jesse!)
Additionally, D3D12 requires that UAVs are accessible from all shader stages,
meaning Tier 2 is enough to support the number of UAVs we need. Tier 1 could be
a property to lower the requirements, but that can be done later.
2025-08-22 14:07:58 -07:00
Evan Hemsley
a65fbb0211
GPU: Fix incorrect block size when D3D12 uniform buffer is rotated ( #13469 )
...
(cherry picked from commit 07af4b237b )
2025-07-29 15:51:58 -07:00
Evan Hemsley
ef58dd77ca
GPU: Clean up properties in SDL_ReleaseGPUTexture ( #13378 )
2025-07-17 00:23:52 -07:00
Evan Hemsley
25816bea41
GPU: Binding validation and prevent null dereference if expected binding is missing ( #13164 )
2025-06-02 13:40:40 -07:00
Evan Hemsley
142700f909
GPU: Check that a texture format is valid for compute writes ( #13044 )
2025-05-14 16:25:24 -07:00
Evan Hemsley
9f1a1405a6
GPU: Special case to avoid assert on GenerateMipmaps ( #12995 )
...
(cherry picked from commit 86b206dadf )
2025-05-09 22:00:57 -07:00
Evan Hemsley
56c76c20a0
GPU: Validate that textures are not bound for both read and write on render passes ( #12925 )
...
(cherry picked from commit a163257295 )
2025-04-29 16:53:45 -07:00
Evan Hemsley
efd812c399
GPU Vulkan: Add locks for layout object lookups ( #12924 )
...
(cherry picked from commit e1a41c1c97 )
2025-04-29 15:44:37 -07:00
Evan Hemsley
c4fba75a12
GPU Vulkan: Clean up in Submit in headless mode ( #12744 )
...
(cherry picked from commit 33f90f2e41 )
2025-04-04 14:27:53 -07:00
Evan Hemsley
943226edc1
GPU Vulkan: Fix recursive Submit calls causing defrag to fail ( #12718 )
...
---------
Co-authored-by: Sam Lantinga <slouken@libsdl.org >
(cherry picked from commit b53e7b4478 )
2025-04-03 15:01:43 -07:00
Evan Hemsley
ac21e3ef3f
GPU Vulkan: Fix render pass race ( #12587 )
...
(cherry picked from commit c696e93180 )
2025-03-19 13:34:26 -07:00
Evan Hemsley
daf468e141
GPU: Fix Vulkan backend never checking deallocations ( #12567 )
...
---------
Co-authored-by: Sam Lantinga <slouken@libsdl.org >
(cherry picked from commit 0bd70684b3 )
2025-03-17 13:59:47 -07:00
Evan Hemsley
86691d325b
GPU: Remove stencil bit from sampler aspect mask on Vulkan ( #12196 )
2025-02-05 17:52:35 -08:00
Evan Hemsley
70a239210e
GPU: Describe "readonly storage" images as sampled images on Vulkan backend ( #12149 )
2025-01-31 15:07:33 -08:00
Evan Hemsley and Caleb Cornett
8e766c9252
GPU: Resource binding state shadowing ( #12138 )
...
---------
Co-authored-by: Caleb Cornett <caleb.cornett@outlook.com >
2025-01-31 08:34:10 -08:00
Evan Hemsley
fb6df93384
GPU: Add name properties to resources ( #11946 )
2025-01-13 17:29:08 -08:00
Evan Hemsley
0fbcd0d586
GPU: Optimize usage of D3D12 staging descriptors ( #11657 )
2024-12-17 22:22:22 -08:00
Evan Hemsley and Lucas Murray
3ee39f6c3f
GPU: Revise swapchain acquisition ( #11633 )
...
---------
Co-authored-by: Lucas Murray <22484+lmurray@users.noreply.github.com >
2024-12-11 11:16:35 -08:00
Evan Hemsley
fa5f84fb6e
GPU: Add SetGPUAllowedFramesInFlight ( #11599 )
2024-12-06 11:56:20 -08:00
Evan Hemsley
119b4fa5f5
GPU: Remove D3D11 backend and allow D3D12 to ingest DXBC ( #11456 )
2024-11-12 10:55:21 -08:00
Evan Hemsley and Caleb Cornett
b4dff42dcd
GPU: Add SDL_CancelGPUCommandBuffer ( #11316 )
...
---------
Co-authored-by: Caleb Cornett <caleb.cornett@outlook.com >
2024-10-29 14:43:22 -07:00
Evan Hemsley
423337796c
GPU Vulkan: Use dedicated allocation for download buffers ( #11298 )
2024-10-23 09:37:06 -07:00
Evan Hemsley
82598e5ca9
GPU Vulkan: Fix frame counter timing ( #11189 )
2024-10-12 22:02:22 -07:00
Evan Hemsley and Sam Lantinga
6ea4a66451
GPU: Add SDL_CalculateGPUTextureFormatSize ( #11146 )
...
---------
Co-authored-by: Sam Lantinga <slouken@libsdl.org >
2024-10-10 16:34:38 -07:00
Evan Hemsley
da5a1585cd
GPU: Avoid calling SDL_GetWindowSizeInPixels when possible ( #11139 )
2024-10-09 18:59:07 -07:00
Evan Hemsley
c1084bfaa3
GPU Introduction ( #11062 )
2024-10-04 11:21:36 -07:00
Evan Hemsley
afdf325fb4
GPU: Add swapchain dimension out params ( #11003 )
2024-09-30 10:23:19 -07:00
Evan Hemsley
fc242abbd2
GPU: recreate swapchain on window pixel size change event ( #10985 )
2024-09-28 18:09:56 -07:00
Evan Hemsley
66f6b40c92
Render GPU: Don't call GetWindowSizeInPixels during RenderPreset ( #10984 )
2024-09-28 18:01:16 -07:00
Evan Hemsley
05d0656bd6
GPU: Simultaneous compute pass read-write ( #10965 )
2024-09-27 12:49:37 -07:00
be401dd1e3
GPU: More robust error reporting ( #10958 )
...
---------
Co-authored-by: Ethan Lee <flibitijibibo@gmail.com >
Co-authored-by: Caleb Cornett <caleb.cornett@outlook.com >
2024-09-27 00:30:18 -07:00
Evan Hemsley
89c6bc5f50
Prefer Vulkan even on Windows ( #10912 )
2024-09-20 13:42:15 -07:00
Evan Hemsley
980b4ff6db
GPU: Vulkan descriptor management rewrite ( #10910 )
2024-09-20 12:55:39 -07:00
Evan Hemsley and Caleb Cornett
66489f91bb
GPU: Cube Arrays ( #10800 )
...
---------
Co-authored-by: Caleb Cornett <caleb.cornett@outlook.com >
2024-09-12 13:41:46 -07:00
Evan Hemsley and Caleb Cornett
2b8a349b26
Add SDL_BindGPUComputeSamplers ( #10778 )
...
---------
Co-authored-by: Caleb Cornett <caleb.cornett@outlook.com >
2024-09-10 19:20:14 -07:00
Evan Hemsley
0b6f993dea
GPU: Zero-init handling ( #10786 )
2024-09-10 18:17:08 -07:00
Evan Hemsley
668e2f82d2
Add load op and clear color to SDL_BlitGPUTexture ( #10767 )
2024-09-09 10:19:52 -07:00
Evan Hemsley
68a9991ec9
GPU: Document structs ( #10742 )
2024-09-07 08:29:14 -07:00
Evan Hemsley
42a0df91bf
Add padding for non-32-bit-aligned types in structs ( #10701 )
2024-09-05 09:52:57 -07:00
Evan Hemsley
1c8c014481
GPU: Document opaque handles and enums ( #10700 )
2024-09-04 18:24:11 -07:00
Evan Hemsley
1788be8547
GPU: Add const to some function parameters ( #10694 )
2024-09-04 13:53:41 -07:00
Evan Hemsley
12ecdb9dde
GPU: Rename some awkwardly named functions ( #10642 )
2024-08-30 15:31:10 -07:00
Evan Hemsley
4bbf0d45fd
GPU D3D12: Fix teardown and leaks on device creation failure ( #10639 )
2024-08-30 10:24:02 -07:00