Commit Graph

31 Commits

Author SHA1 Message Date
Triang3l
fe3f0f26e4 [UI] Image post-processing and full presentation/window rework
[GPU] Add FXAA post-processing
[UI] Add FidelityFX FSR and CAS post-processing
[UI] Add blue noise dithering from 10bpc to 8bpc
[GPU] Apply the DC PWL gamma ramp closer to the spec, supporting fully white color
[UI] Allow the GPU CP thread to present on the host directly, bypassing the UI thread OS paint event
[UI] Allow variable refresh rate (or tearing)
[UI] Present the newest frame (restart) on DXGI
[UI] Replace GraphicsContext with a far more advanced Presenter with more coherent surface connection and UI overlay state management
[UI] Connect presentation to windows via the Surface class, not native window handles
[Vulkan] Switch to simpler Vulkan setup with no instance/device separation due to interdependencies and to pass fewer objects around
[Vulkan] Lower the minimum required Vulkan version to 1.0
[UI/GPU] Various cleanup, mainly ComPtr usage
[UI] Support per-monitor DPI awareness v2 on Windows
[UI] DPI-scale Dear ImGui
[UI] Replace the remaining non-detachable window delegates with unified window event and input listeners
[UI] Allow listeners to safely destroy or close the window, and to register/unregister listeners without use-after-free and the ABA problem
[UI] Explicit Z ordering of input listeners and UI overlays, top-down for input, bottom-up for drawing
[UI] Add explicit window lifecycle phases
[UI] Replace Window virtual functions with explicit desired state, its application, actual state, its feedback
[UI] GTK: Apply the initial size to the drawing area
[UI] Limit internal UI frame rate to that of the monitor
[UI] Hide the cursor using a timer instead of polling due to no repeated UI thread paints with GPU CP thread presentation, and only within the window
2022-01-29 13:22:03 +03:00
Triang3l
12a907bfa5 [GPU] Shaders to common, xb buildshaders instead of buildhlsl 2021-06-05 18:53:53 +03:00
Triang3l
6b988d43c7 [D3D12] Cleanup: pipeline state -> pipeline, other things 2020-11-14 16:43:18 +03:00
Triang3l
c2e8c5554d [UI] Replace ImmediateTexture handles with pointers + small cleanup 2020-09-27 16:30:53 +03:00
Triang3l
f5f8714c3f [D3D12] Delayed ImmediateTexture releasing 2020-09-27 16:21:14 +03:00
Triang3l
d437555036 [UI] Remove immdraw restrict_texture_samples + cleanup 2020-09-26 22:06:04 +03:00
Triang3l
18031a8f6d [D3D12] Immdraw texture upload leak fix + cleanup 2020-09-26 18:36:31 +03:00
Triang3l
c218d6dc10 [D3D12] Move D3D12ImmediateTexture to D3D12ImmediateDrawer 2020-09-21 23:15:51 +03:00
Triang3l
fc55b1f81d [UI] Remove pass-unfriendly UpdateTexture of ImmediateDrawer 2020-09-20 20:34:22 +03:00
Triang3l
183c7eee2b [D3D12] Various refactoring mostly on the immediate drawer side, cache immdraw scissor, force stretch alpha to 1 2020-09-20 15:15:08 +03:00
Triang3l
189a38826f [UI] UploadBufferPool common code 2020-09-17 21:37:44 +03:00
Triang3l
2cebd3cabe [D3D12] Unify UploadBufferPool page size (2 MB), add alignment parameter 2020-09-15 22:13:53 +03:00
Triang3l
38e0cc4941 [D3D12] Non-zeroed heaps on 2004 2020-09-06 00:52:30 +03:00
Triang3l
1e9ee8f43b [D3D12] Change most subsystem pointers to references 2020-08-30 22:07:35 +03:00
Joel Linn
3d2982e845 [ImGui] Fix drawing lines.
ImGui does not orientate triangles.
Culling must not be applied in immediate drawer.
2020-04-19 01:38:58 +02:00
gibbed
a48bb71c2f Overhaul logging. 2020-04-07 16:09:41 -05:00
Triang3l
d3b6f71ae1 [D3D12] Don't use D3D12Context for command processor fence 2019-10-28 10:49:32 +03:00
Triang3l
b4af63fe31 [D3D12] Detach UploadBufferPool and DescriptorHeapPool from D3D12Context 2019-10-27 20:53:53 +03:00
Triang3l
b3382f3de1 [Vulkan v2] Upload buffer chain, immediate drawer without textures 2019-08-26 22:57:14 +03:00
Triang3l
940ef4ad7a [UI/GPU] Fix include order 2019-08-08 22:11:51 +03:00
Triang3l
2334e475de [Vulkan v2] Physical device, [D3D12] Small cleanup 2019-08-08 00:08:20 +03:00
Triang3l
43f34d804a [D3D12] Load D3D dynamically 2018-10-23 19:21:01 +03:00
Triang3l
be2d522e19 [D3D12] Rename shaders/bin to shaders/dxbc because of .gitignore 2018-09-16 20:35:10 +03:00
Triang3l
5be78ab369 [D3D12] Non-indexed triangle fans and resource creation refactoring 2018-09-15 23:41:16 +03:00
Triang3l
ff014d47d4 [D3D12] Refactor root signature creation 2018-08-25 23:37:11 +03:00
Triang3l
dba8ab4eed [D3D12] Refactor descriptors and resolve logging 2018-08-25 22:42:18 +03:00
Triang3l
b0dd9b6fd0 [D3D12] Shutdown immediate textures in the destructor 2018-08-18 15:25:30 +03:00
Triang3l
bf0f20df9b [D3D12] Immediate drawer 2018-08-17 16:55:31 +03:00
Triang3l
a627ef3d66 [D3D12] Immediate drawer pixel shader and root signature 2018-08-01 18:15:17 +03:00
Triang3l
5629a8248e [D3D12] Use a single command list for all composition 2018-07-20 17:18:57 +03:00
Triang3l
cd1cf3a857 [D3D12] Make something buildable 2018-07-20 15:18:02 +03:00