50 Commits

Author SHA1 Message Date
libretroadmin
19705a3453 (D3D12) Get rid of some wrapper functions 2023-01-24 18:33:52 +01:00
libretroadmin
fd59309fcd Cleanups 2022-12-05 14:03:21 +01:00
MajorPainTheCactus
7ebd8e190a
Fixes for d3d12 and d3d11 drivers when using shaders with TATE mode arcades etc (#14678)
Added support for break on errors in d3d12 (development aid)
Added support for DRED (device remove extended data) in d3d12 (development aid)
Made d3d12 viewport and scissors to behave more like vulkan drivers (or be more correct)
Fixed validation error on start up due to buffers not being setup correctly for one frame
2022-11-27 10:20:34 +01:00
LibretroAdmin
bba1fdca30 (D3D12) Use flags instead of boolean variables 2022-11-03 01:31:15 +01:00
LibretroAdmin
75757d7d02 Remove unused DXGI inline functions 2022-09-11 23:15:25 +02:00
sonninnos
a0bfdcce3b
(D3D11/12) Make waitable swapchains optional (#14074) 2022-06-19 21:25:37 +02:00
sonninnos
ca0b3095e8
(D3D11/12) Make low-latency optional (#14073) 2022-06-19 14:14:34 +02:00
sonninnos
0bb65fb39c (D3D11/12) Add waitable swapchains and max frame latency option 2022-06-07 00:25:03 +03:00
libretroadmin
05797eb6b8 (D3D12) Move functions over to files that need it 2022-06-04 06:02:50 +02:00
libretroadmin
92a7d5bf61 (D3D12) Get rid of some unused inline functions 2022-06-04 02:51:59 +02:00
libretroadmin
281fe83936 (D3D12) Remove unused inline functions 2022-06-04 00:20:47 +02:00
twinaphex
2864f70bd9 (D3D12) Cleanups 2022-04-24 23:33:08 +02:00
twinaphex
77adfb1c1a Simplify D3D10/D3D12 headers 2022-04-24 21:56:06 +02:00
Autechre
7b9cbc08d7
Add HDR support for D3D12 (rebased PR from MajorPainTheCactus) (#12917)
* Add HDR support

* Attempt to fix Mingw build and Metal builds

* (D3D12) Fix relative header includes

* Add missing hdr_sm5.hlsl.h

* (d3d12_common.c) Some C89 build fixes

* Fix MSVC build

* - Attempt to fix build on mingw/msys unix with dirty hack
- Fix shader compilation of hdr_sm5.hlsl.h on MSVC/Visual Studio -
the define was seen as an error and was causing the first pipeline
to error out
- Make sure we manually set handle of backBuffer to NULL

* Moving the release of the texture above the freeing of desc.srv_heap
and desc.rtv_heap solves the hard crashes on teardown/setup in RA -
it was crashing hard in d3d12_release_texture before

* Add HAVE_D3D12_HDR ifdef - needs to be disabled for WinRT for now
because of several things that are Windows desktop-specific right now
(GetWindowRect)

* Add dirty GUID hack - should work for both mingw/msys on Windows/Linux
as well as MSVC/Visual Studio (hopefully)

* Change HAVE_D3D12_HDR to HAVE_DXGI_HDR

* Move away from camelcase named variables

* Fix RARCH_ERR logs - they need a newline at the end

* d3d12_check_display_hdr_support - make it return a bool on return
and set d3d12->hdr.support and d3d12->hdr.enable outside of the
function

* (DXGI) Remove D3D12 dependencies from dxgi_check_display_hdr_support and
move it to dxgi_common.c instead

* (DXGI) move d3d12_swapchain_color_space over to dxgi_common.c and
rename it dxgi_swapchain_color_space

* (DXGI) move d3d12_set_hdr_metadata to dxgi_common.c and
rename it dxgi_set_hdr_metadata

* (DXGI) dxgi_check_display_hdr_support - better error handling?

* Fix typo

* Remove video_force_resolution

* (D3D12) Address TODO/FIXME

* (D3D12) Backport
c1b6c0bff2
- Fixed resource transition for present when HDR is off
Fixed cel shader displaying all black as blending was enabled when the hdr shader was being applied - turned off blending during this shader

* Move d3d12_hdr_uniform_t to dxgi_common.h and
rename it dxgi_hdr_uniform_t

* (D3D11) Add HDR support

* Add TODO/FIXME notes

* Cache hdr_enable in video_frame_info_t

* Update comment
2021-09-03 06:15:25 +02:00
sonninnos
917fb1f796 D3D12 Updates:
- Relocated 'd3d12_gfx_sync()'
- Fixed swap interval option
- Cleanups
2021-06-18 21:54:36 +03:00
twinaphex
26824b1f27 (D3D) Comment out Debug functions 2021-03-23 21:24:17 +01:00
aliaspider
1681322ffc (D3D12) fix the D3D12GetCompletedValue function wrapper.
- a function wrapper shouldn't contain any NULL checks, and it should
return the original UINT64 value, not a boolean.
2020-12-20 07:08:33 +01:00
twinaphex
212f32e2fd Get rid of the static asserts 2020-03-07 22:54:57 +01:00
Dwedit
10343d51b9 Small fixes for D3D12: Do not return false when enumerating, and add a null check for the Fence object 2019-07-02 19:46:02 -05:00
Brad Parker
d01f04c146 d3d10/11/12: add GPU selection 2019-06-18 16:35:50 -04:00
twinaphex
ee3208ac39 Integrate video_driver.c into retroarch.c 2019-06-17 15:10:22 +02:00
LazyBumHorse
b54ad4d67f implement FrameDirection slang semantic for d3d10,11,12 2019-05-29 18:09:37 +02:00
twinaphex
0e5fbbb9e1 Silence some warnings 2018-12-29 02:12:50 +01:00
krzys-h
4fb06703b3 Port d3d12 driver for UWP 2018-12-28 22:10:26 +01:00
twinaphex
070c09faec Avoid more pointer grabbing for video driver ptr 2018-02-16 20:42:37 +01:00
aliaspider
98682197c9 (D3D11/12) add overlays. 2018-02-12 01:19:43 +01:00
aliaspider
37bebb5b65 (D3D12) slang shaders support. 2018-02-11 00:00:20 +01:00
aliaspider
6fe379d978 (D3D12) add a compute shader for mipmap generation. 2018-02-09 14:57:07 +01:00
aliaspider
97813b9722 (D3D11/12) fix dialogbox / gradient. 2018-02-08 17:11:24 +01:00
aliaspider
0d88799e6d (D3D12) add menu display driver. 2018-02-08 00:18:05 +01:00
aliaspider
92afd7387d (D3D12) add a font driver. 2018-02-08 00:18:04 +01:00
aliaspider
e42015e026 (D3D12) allow for dynamic allocation of descriptors. 2018-02-08 00:18:04 +01:00
aliaspider
4ccb844ad6 (D3D12) add font and menu pipelines. 2018-02-08 00:18:04 +01:00
aliaspider
b030588669 (D3D12) refactor d3d12_init_samplers, add support for wrap modes. 2018-02-08 00:18:04 +01:00
aliaspider
6d90aae5d6 (D3D12) refactor init_pipeline. 2018-02-08 00:18:04 +01:00
aliaspider
5549b136c2 (msvc) CXX_BUILD + griffin fixes. 2018-02-05 00:25:03 +01:00
twinaphex
6982dd838f (MSVC 2017) Fix VS 2017 solution 2018-02-05 00:04:41 +01:00
twinaphex
2b4890220a (D3D) Silence CXX_BUILD warnings 2018-02-04 20:40:28 +01:00
aliaspider
700fce3bd2 various fixes for CXX_BUILD. 2018-02-04 20:03:27 +01:00
aliaspider
13f18afcd9 (D3D10/11/12) cleanups / fixes. 2018-01-30 19:34:53 +01:00
twinaphex
aeab2e5bd1 enable d3d10/11/12 again for mingw build 2018-01-30 16:04:45 +01:00
twinaphex
a6f8013c24 More MSVC2013 buildfixes 2018-01-29 17:19:36 +01:00
aliaspider
30d5cd1a07 (D3D10/11/12) add viewport settings.
- move some common routines to video_driver.c
2018-01-24 15:00:32 +01:00
aliaspider
a6b24ce995 (d3d10/11/12) reformat some files. 2018-01-24 07:45:45 +01:00
twinaphex
4dd3a22679 (D3D12) Silence MSVC warnings 2018-01-24 00:38:11 +01:00
twinaphex
0e363164b1 Attempt to get further with D3D12 for mingw - now compiles
but doesn't link yet
2018-01-24 00:14:26 +01:00
aliaspider
956c6ca25a (d3d10/11/12) resize swapchain correctly when the window's size changes. 2018-01-23 20:27:03 +01:00
aliaspider
a5bf9d8dc6 (D3D10/11/12)
.add a d3d10 driver.
.add more utility functions to d3d*_common files.
.add an image transfer/convert function to dxgi_common.
.various refactors / style nits.
2018-01-23 18:04:55 +01:00
aliaspider
80df049f41 (D3D11/12) refactors/fixes. add blending and selectable samplers for
d3d12.
2018-01-21 23:46:50 +01:00
aliaspider
094196220d (D3D11/D3D12) initial video driver implementation.
- some headers from the windows 10 sdk need to be added to the include
path when targeting mingw :
   d3d11.h
   d3d11sdklayers.h
   d3d12.h
   d3d12sdklayers.h
   d3d12shader.h
   d3dcommon.h
   d3dcompiler.h
2018-01-21 04:10:45 +01:00