66 Commits

Author SHA1 Message Date
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
libretroadmin
8ec1f3294e (D3D10/11/12) Miscellaneous corrections/safety checks 2022-06-07 06:37:23 +02:00
sonninnos
0bb65fb39c (D3D11/12) Add waitable swapchains and max frame latency option 2022-06-07 00:25:03 +03:00
libretroadmin
4dc08fad5c (D3D) Miscellaneous cleanups 2022-06-04 19:16:14 +02:00
libretroadmin
de4bfa0805 (D3D11) Get rid of some inlined functions 2022-05-17 17:04:43 +02:00
twinaphex
abe85e5e13 (D3D11) Get rid of more ununused inline functions 2022-04-24 21:38:05 +02:00
twinaphex
d6aa3fdce5 (D3D9) Cleanups - get rid of more inline functions 2022-04-24 15:07:56 +02:00
twinaphex
96d7c31983 (D3D11) Cleanups 2022-04-24 13:40:38 +02:00
twinaphex
3c6098dff7 (D3D11) Cleanups of unused inline functions 2022-04-24 11:59:20 +02:00
twinaphex
8973f2ae01 (D3D11) Cleanups - use less inlined functions 2022-04-23 16:25:59 +02:00
twinaphex
0888297f31 (D3D11) Cleanups - go through less inlined functions 2022-04-23 11:36:10 +02:00
twinaphex
1887aee7c4 (D3D11) Cleanup some inline functions 2022-04-23 09:07:00 +02:00
twinaphex
5d82b36f9c (D3D11) Use less inlined functions 2022-04-22 22:58:35 +02:00
twinaphex
7f8a0e352f (D3D11) Get rid of some inline functions 2022-04-22 21:12:05 +02:00
Tony
49d3a947b8
(D3D10/11) Add vsync swap interval (#13521) 2022-01-21 04:35:22 +01:00
twinaphex
274638b89e (D3D11) Look at D3D11 feature level - if we are 11.0 or above,
we use Shader Model 5.0 instead of the default SM 4.0 - this fixes
FSR on D3D11 which requires SM5.0
2021-09-03 07:51:44 +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
Connor McLaughlin
946d87cf89
(gfx/d3d11) Don't use allow tearing flag with blit swap chains (#12529) 2021-06-16 15:19:27 +02:00
twinaphex
26824b1f27 (D3D) Comment out Debug functions 2021-03-23 21:24:17 +01:00
twinaphex
7d313647ae (D3D11) Add flip model support - fallback to blit model for OSes
where flip model is not supported (windows 7 and earlier). Will add
a menu option later allowing the user to switch inbetween the two
2020-12-17 14:39:58 +01:00
aliaspider
c6b77f6c62 (D3D11) get the hwrender texture format from the view desc
the format set in the texture desc isn't necessarily the same as the
view format.
2020-11-15 15:07:53 +01:00
aliaspider
b3134fc05a (D3D11) fix slang shaders 2020-11-15 13:04:24 +01:00
aliaspider
b7d3efc503 (D3D11) rename D3D11SetState to D3D11SetRasterizerState. 2020-11-14 04:29:44 +01:00
Connor McLaughlin
12382c057a (video/d3d11) Cache view left bound by hw renderers
Fixes garbage/black screen when menu is active.
2020-10-01 00:19:11 +10:00
twinaphex
327d82cc1d Struct reordering/alignment 2020-08-14 22:21:05 +02:00
twinaphex
db80281b0f (D3D11) Move static global variables to D3D11 state 2020-08-03 12:36:51 +02:00
twinaphex
212f32e2fd Get rid of the static asserts 2020-03-07 22:54:57 +01: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
Brad Parker
10df615d14 add "Send Debug Info" option under Help 2019-03-07 19:17:54 -05:00
krzys-h
b201d669b5 First iteration of UWP support
Enough to kind of run

Working drivers: xinput, d3d11
Still missing: input driver with keyboard support, audio driver
2018-12-28 22:09:22 +01:00
twinaphex
9f2b56a929 Update Direct3D 10 driver 2018-04-21 03:27:41 +02:00
aliaspider
3d96cacd71 add experimental D3D11 hwrender support. 2018-03-25 23:14:14 +01:00
twinaphex
9057ffbde4 use boolean.h instead of stdbool.h 2018-03-24 11:45:50 +01:00
aliaspider
98682197c9 (D3D11/12) add overlays. 2018-02-12 01:19:43 +01:00
aliaspider
19aed2af36 (D3D11/12) prevent double-free when resizing framebuffers.
(D3D12)
- correctly support lut/filtering/wrap options for slang shaders.
- rework frame sync.
2018-02-11 22:56:37 +01:00
aliaspider
37bebb5b65 (D3D12) slang shaders support. 2018-02-11 00:00:20 +01:00
aliaspider
700fce3bd2 various fixes for CXX_BUILD. 2018-02-04 20:03:27 +01:00
aliaspider
e225e96025 (D3D11) multi-pass shaders: add support for history frames. 2018-02-03 13:29:00 +01:00
aliaspider
e30c7edd8d (D3D11) multi-pass shaders: add support for feed-back textures. 2018-02-02 19:57:45 +01:00
aliaspider
6fe3a31617 (D3D11) multi-pass shaders: add support for wrap modes and lut
mipmapping.
2018-02-02 17:18:41 +01:00
aliaspider
91298255ad (D3D11) resize fbos when the viewport size changes. 2018-02-01 12:45:35 +01:00
aliaspider
e6c455d2c6 (D3D11) move format support checks to d3d11_init_texture(); 2018-02-01 11:21:51 +01:00
aliaspider
0ccfa3804b (D3D11) frame count is an unsigned int. 2018-01-31 17:21:18 +01:00
aliaspider
d8924d6fbb (D3D11) clear out all unused texture/sampler bindings each pass to avoid
hazards with SetRenderTargets.
2018-01-31 17:05:48 +01:00
aliaspider
f907f2ea7d (D3D11) save spirv-cross's hlsl output when shader compilation fails. 2018-01-31 15:55:59 +01:00
aliaspider
5e09af9c77 (D3D11) attach identifiers to the generated slang semantic mappings to
simplify debugging.
2018-01-31 12:00:39 +01:00
aliaspider
5bc78d3ad5 (D3D11) Implement slang shader specification using Spirv-Cross.
(incomplete)
2018-01-31 01:08:36 +01:00