Commit Graph

28 Commits

Author SHA1 Message Date
Triang3l
12ff951972 [Base] More flexible Xenos float16 conversion functions 2022-04-26 22:35:37 +03:00
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
866a29e153 [Base] saturate_signed NaN comment 2021-06-05 15:04:06 +03:00
Triang3l
3c20a83972 [Base] Float clamping cleanup 2021-06-05 14:55:55 +03:00
Joel Linn
4800194f0d [Base] Add faster bit_count variants
- Use C++20 `popcount()` when available
- Else use compiler specific built-ins
2021-06-02 22:28:43 -05:00
Triang3l
2d50fc07b4 [Linux] __builtin_ffsll instead of GNU/BSD-specific ffsll 2021-05-17 02:38:51 +03:00
Triang3l
2cebd3cabe [D3D12] Unify UploadBufferPool page size (2 MB), add alignment parameter 2020-09-15 22:13:53 +03:00
gibbed
0b3cdf2aaa [Base] Fix non-Windows bit_scan_forward. 2020-02-09 16:37:52 -06:00
Joel Linn
d6ce72ddc9 [Base] Clock reworked.
- Time progression is now equal and in sync on all threads.
- Floating point imprecisions do not interfere with timing.
2019-12-01 17:11:58 -06:00
Triang3l
e466687f11 [Base] Fix tzcnt logic 2019-07-31 23:08:41 +03:00
Triang3l
2350810f4e [Base] Add typename to sat_add/sub 2019-07-20 16:14:13 +03:00
Triang3l
26c24b4726 [CPU] Move saturating add/sub to base/math.h 2019-07-19 23:12:11 +03:00
scribam
b6e7e66fbe Fix travis LINT 2017-09-20 23:29:39 +02:00
Doug Johnson
2dbdc24d52 Add LaunchBrowser implementation for linux 2017-07-11 11:47:24 -06:00
Dr. Chat
254fd3631f Math: Fix [l/t]zcnt intrinsics on GCC
X64Context: Surround with architecture ifdef
2017-05-11 10:32:13 -05:00
Dr. Chat
e26aa6c189 Add XE_ARCH_* 2017-05-07 18:25:06 -05:00
Dr. Chat
fe2c887c34 Math tzcnt 2016-11-04 19:17:12 -05:00
Ben Vanik
618ca80011 Count packed bytes used by a constant map. 2016-02-18 16:43:41 -08:00
Ben Vanik
cc72de0f64 Moving disasm to new tables.
Also adding useful CPU docs.
2015-12-28 20:49:22 -08:00
Ben Vanik
64b8dcfd99 Lint fixes. 2015-10-17 09:30:28 -07:00
Ben Vanik
5d033f9cb3 A new debugger.
Lots of bugs/rough edges/etc - issues will be filed.
Old-style debugging still works (just use --emit_source_annotations to get
the helpful movs back and --break_on_instruction will still fire).
2015-09-20 21:31:05 -07:00
Ben Vanik
74d2df2004 libxenia-base can now compile with clang. 2015-07-15 23:02:04 -07:00
Ben Vanik
72ad899e9e Starting to remove windows.h includes from things. 2015-07-13 20:49:29 -07:00
Ben Vanik
fb1f4906d9 xb format --all (we are now format clean). Buildbot will yell at you. 2015-06-22 22:26:51 -07:00
gibbed
3300945660 Fixed 8-bit and 16-bit xe::lzcnt. 2015-05-28 12:16:19 -05:00
Ben Vanik
d9eca84d0b Formatting. 2015-05-12 18:17:34 -07:00
gibbed
be1c60c74f Disabled lzcnt intrinsic usage for now. 2015-05-12 00:48:39 -05:00
Ben Vanik
e3220f7ae6 Code cleanup: moving poly/ into xenia/base/ 2015-05-02 03:42:51 -07:00