Commit Graph

55 Commits

Author SHA1 Message Date
twinaphex c3c7f5167f Buildfix 2022-05-06 22:31:42 +02:00
tunip3 ba2203e1e4
fix uwp debug build (#13918)
* fix uwp debug build
2022-05-06 21:49:21 +02:00
twinaphex 77adfb1c1a Simplify D3D10/D3D12 headers 2022-04-24 21:56:06 +02:00
MajorPainTheCactus 9151326b73
Added support for HDR shaders - if we detect a shader that uses SLANG_FORMAT_A2B10G10R10_UNORM_PACK32 or SLANG_FORMAT_R16G16B16A16_SFLOAT as the format for the last render target in the shader chain AND hdr is switched on then this disables the internal HDR shader and allows the shader chain to define an inverse tonemapper and hdr10 shader. The first use of this is for my hdr shader crt\crt-sony-pvm-4k-hdr.slangp - submitted seperately (#13390) 2021-12-22 02:17:17 +01:00
Tony 09880e92d2
Logging cleanups (#13320) 2021-12-04 14:21:12 +01: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
sonninnos 8584b122e1 (D3D11+12) Allow fastforward in fullscreen 2021-06-04 04:31:11 +03:00
twinaphex 26824b1f27 (D3D) Comment out Debug functions 2021-03-23 21:24:17 +01:00
aliaspider 16f997172f (D3D12) allocate rt_view descriptors for feedback render targets too. 2020-12-20 08:08:04 +01:00
aliaspider bf2adda421 (D3D12) move D3D12SignalCommandQueue to d3d12_gfx_sync. 2020-12-20 07:13:11 +01:00
twinaphex d6a0bdaa30 (D3D12) Increase this to 2048 - avoids D3D12 crash on startup 2020-12-17 09:41:05 +01:00
twinaphex 682462fb20 Cleanups 2020-02-19 19:23:10 +01:00
twinaphex 64c515bac4 Turn while (true) into for (;;) for easier MSVC backwards compatibility 2020-02-01 04:15:22 +01:00
Dwedit 81b6703912 Fix wrong reference count for D3D12 adapters (crash at close due to a destroyed adapter being released again) 2019-07-03 15:35:06 -05: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 3691f4fabf Fix CXX_BUILD errors 2019-03-13 17:00:52 +01:00
Brad Parker 10df615d14 add "Send Debug Info" option under Help 2019-03-07 19:17:54 -05:00
krzys-h 3c18232448 Fix d3d12 swap chain creation
Apparently, HAVE_WINDOW was not defined in this file (and this obviously
doesn't appear on MSVC because of how griffin.c works...)
2019-01-28 10:44:47 +01: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
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 832cc4e945 (MSVC) Silence warnings 2018-04-21 05:20:22 +02:00
twinaphex ff9aebedca Some more Clang warning fixes 2018-04-09 17:48:11 +02:00
twinaphex 008900e73d (D3D11/D3D12) Fix crashes with completely black or white thumbnail
textures in XMB
2018-03-30 02:30:56 +02:00
twinaphex ef5830b233 Silence some CXX_BUILD warnings 2018-03-29 15:27:30 +02:00
twinaphex 9057ffbde4 use boolean.h instead of stdbool.h 2018-03-24 11:45:50 +01:00
twinaphex 070c09faec Avoid more pointer grabbing for video driver ptr 2018-02-16 20:42:37 +01:00
aliaspider 8a93e8d503 (D3D12) silence warning. 2018-02-12 01:29:44 +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 6fe379d978 (D3D12) add a compute shader for mipmap generation. 2018-02-09 14:57:07 +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
aliaspider 700fce3bd2 various fixes for CXX_BUILD. 2018-02-04 20:03:27 +01:00
aliaspider 3865856aa2 (D3D11) add support for `#pragma format` in slang shaders. 2018-02-01 15:07:12 +01:00
aliaspider f907f2ea7d (D3D11) save spirv-cross's hlsl output when shader compilation fails. 2018-01-31 15:55:59 +01:00
twinaphex 80bdcd89a6 (D3D10/11/12) Cleanup non-HAVE_DYNAMIC codepaths 2018-01-30 17:06:57 +01:00
twinaphex a5f232793b Silence warnings 2018-01-30 16:44:42 +01:00
twinaphex 05e35bd4b1 Compiles with MSVC 2013 2018-01-29 21:31:03 +01:00
twinaphex a6f8013c24 More MSVC2013 buildfixes 2018-01-29 17:19:36 +01:00
twinaphex a18e7767f3 Fix some unreferenced local variable warnings 2018-01-25 10:25:50 +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
aliaspider cba3c5b68c (D3D12) add remaining guids. 2018-01-24 07:33:14 +01:00