70 Commits

Author SHA1 Message Date
libretroadmin
daa9e352cc Remove asserts 2023-01-09 00:51:05 +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
15048027e7 (D3D11) Turn booleans into flags 2022-11-02 08:31:40 +01:00
LibretroAdmin
951b98fe1b
Bools to flags (#14486)
* (D3D11) Use flags instead of bools

* (RPNG) Use flags

* Simplify rpng_is_valid

* (rpng_is_valid) Prevent potential NULL pointer dereference
(D3D11) Some whitespacing changes/code nits

* (task_pl_thumbnail_download.c) Simplify some code
2022-10-06 19:26:38 +02: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
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