Commit graph

1741 commits

Author SHA1 Message Date
Joshua Ashton
4e7cd8882b steamcompmgr: Force composite when using reshade fx 2023-09-24 07:29:35 +01:00
Joshua Ashton
2aa742b080 reshade: Fix GAMESCOPE_SDR_ON_HDR_NITS define 2023-09-24 07:18:36 +01:00
Joshua Ashton
502f3b3a1a rendervulkan: Disable maintenance5 for now
Not in a Mesa release yet... Bleh

Only needed for spec compliance
2023-09-24 07:10:13 +01:00
Joshua Ashton
fcdcd86897 reshade: Add GAMESCOPE_SDR_ON_HDR_NITS define 2023-09-24 06:31:14 +01:00
Joshua Ashton
40462b5bf9 reshade: Improve compatibility with reshade shaders
Fix a few bugs, clear and discard images, pick right rts, etc.
2023-09-24 06:22:11 +01:00
Joshua Ashton
b19e928496 layer: Include family in layer name 2023-09-20 02:20:36 +01:00
Joshua Ashton
eedcc73dfd layer: Ensure .so files for x64 and x86 have different names 2023-09-20 02:14:00 +01:00
Joshua Ashton
af3f6bf827 rendervulkan: ensure queue is idle before swapchain recreation
The CVulkanDevice::waitIdle call at the beginning of
vulkan_remake_swapchain only waits for the most recently submitted
command buffer to complete. This is inadequate because it does not wait
for any additional commands which may have been submitted by the driver
during vkQueuePresentKHR.  Such commands could reference resources
associated with the old swapchain, so it is not safe to destroy it until
they are also complete.

To fix the issue, instead of calling CVulkanDevice::waitIdle,
vulkan_remake_swapchain will call vkQueueWaitIdle.

Fixes: #945

Co-authored-by: Erik Kurzinger <ekurzinger@nvidia.com>
2023-09-14 18:53:38 +01:00
Joshua Ashton
ae73dd1ce0 wlserver: Add gamescope-control protocol 2023-09-14 09:08:46 -07:00
Joshua Ashton
ab7d2a75c9 reshade: Fix warnings 2023-09-14 09:03:12 -07:00
Joshua Ashton
a1217e0833 readme: Add reshade info to readme 2023-09-14 09:03:12 -07:00
Joshua Ashton
732422cebe reshade: Add initial reshade support 2023-09-14 09:03:12 -07:00
Joshua Ashton
0cf24ee20c rendervulkan: Load some more vk procs for gfx work 2023-09-14 09:03:12 -07:00
Joshua Ashton
608f3ca286 rendervulkan: Expose prepare*Image, etc functions publicly 2023-09-14 09:03:12 -07:00
Joshua Ashton
b306131b72 rendervulkan: Add discardImage to CVulkanCmdBuffer 2023-09-14 09:03:12 -07:00
Joshua Ashton
555f94548e rendervulkan: Allow controlling if CmdBuffers are reset in WaitIdle 2023-09-14 09:03:12 -07:00
Joshua Ashton
0f703262a7 rendervulkan: Add submitInternal that does not GC CVulkanCmdBuffers 2023-09-14 09:03:12 -07:00
Joshua Ashton
58747ca65b rendervulkan: Move to Vulkan 1.3, enable maintenance 5 2023-09-14 09:03:12 -07:00
Joshua Ashton
d038f8aadc rendervulkan: Add color attachment flag to textures 2023-09-14 09:03:12 -07:00
Joshua Ashton
adee493d8b rendervulkan: Store current queue family in CVulkanTexture 2023-09-14 09:03:12 -07:00
Joshua Ashton
ea15be6f1a rendervulkan: Store queue and queue family in CVulkanCmdBuffer 2023-09-14 09:03:12 -07:00
Joshua Ashton
6d0b0f5503 rendervulkan: Expose format table lookup functions 2023-09-14 09:03:12 -07:00
Joshua Ashton
4f4ace5ee0 rendervulkan: Expose some additional internal formats in the format table 2023-09-14 09:03:12 -07:00
Joshua Ashton
37fc7d7178 rendervulkan: Move CVulkanCmdBuffer to hpp 2023-09-14 09:03:12 -07:00
Joshua Ashton
bd722f786f rendervulkan: Get a general graphics+compute queue as well as a async compute queue 2023-09-14 09:03:12 -07:00
Joshua Ashton
191a85da04 rendervulkan: Move CVulkanDevice to header 2023-09-14 09:03:12 -07:00
Joshua Ashton
63fb573900 build: Add reshade submodule 2023-09-14 09:03:12 -07:00
Joshua Ashton
cf19852ce3 drm: Patch physical dimensions 2023-09-01 22:26:57 +01:00
Joshua Ashton
a8471d81b3 steamcompmgr: Fix build (rebase woes) 2023-09-01 01:42:37 +01:00
Joshua Ashton
32894fa7cd steamcompmgr: If we have an override surface, make sure new commits are for it
Fixes HDR in an unannounced game.
2023-09-01 01:26:49 +01:00
Jason Nader
35c0aa0c9a Remove reference to non-existent key bind
Missed by e631460bc5a1ce53af994cf7f0c9f9e96325a298
2023-08-27 17:52:49 +02:00
Joshua Ashton
0f0c5eba08 steamcompmgr: Fix disable color mgmt leaving some states behind 2023-08-23 05:29:04 +01:00
Alex Maese
a64a5a8653 Only SetSelectionOwner when syncing selections
When a client becomes the selection owner, and sets the selection, an
XFixes event is raised, and gamescope responds by retrieving the contents
of the selection, and re-setting ourWindow as the owner of the selection.
We don't need to call XChangeProperty when syncing across Xwayland
instances, as that gets called when a client makes a SelectionRequest.
2023-08-22 19:50:48 -07:00
Alex Maese
a883f133a3 Improve clipboard handling
This change properly syncs the primary selection and clipboard across
all xwayland instances, even in embedded mode
2023-08-22 19:50:48 -07:00
Alex Maese
371fcf0b32 Remove unnecessary key bind 2023-08-22 19:50:48 -07:00
Alex Maese
ead1840a28 Fix build issue
Fixes the following error:
error: control reaches end of non-void function [-Werror=return-type]
2023-08-22 19:50:48 -07:00
Alex Maese
87f83aab19 Fix documentation 2023-08-22 19:50:48 -07:00
Alex Maese
daf36e9993 Update documentation and --help 2023-08-22 19:50:48 -07:00
Alex Maese
dcffbd4be9 Add clipboard support 2023-08-22 19:50:48 -07:00
Joshua Ashton
77d943294f steamcompmgr: Remove heatmap hard flag when GAMESCOPE_DEBUG_HDR_HEATMAP is set 2023-08-18 00:58:13 +01:00
Joshua Ashton
22618ea084 wlserver: Filter out garbage HDR metadata
Elden Ring and Sekiro pass all zero HDR metadata which royally messes up some displays.
2023-08-18 00:36:09 +01:00
Joshua Ashton
5e7006205f layer: Handle multiple swapchains in QueuePresentKHR 2023-08-17 20:16:20 +01:00
Joshua Ashton
4c788db880 steamcompmgr: Force composite when fading
Otherwise we end up with test commits failing which is a waste of time.
2023-08-16 23:44:51 +01:00
Jan Beich
9e34c3e104 layer: add missing header after 540323ac37
layer/VkLayer_FROG_gamescope_wsi.cpp:53:5: error: use of undeclared identifier 'pread'
    pread(fd, &overrideValue, sizeof(overrideValue), 0);
    ^
2023-08-16 10:20:13 +02:00
Jeremy Selan
6fb83bfc5d color: added atom to control chromatic adaptation mode
(default of bradford is unchanged)
2023-08-15 12:15:36 -07:00
Jeremy Selan
7470845fda [color]: removed errant printf 2023-08-15 09:45:45 -07:00
Jeremy Selan
da12ca6b76 [color]: Added support for overriding the apparent (virtual) white point
Also, updated the steamdeck colorimetry to measured values
2023-08-15 09:38:35 -07:00
Jeremy Selan
f2e925f5d6 fix clang build break (attempt #2) 2023-08-10 16:45:25 -07:00
Jeremy Selan
a2ad21c0b2 fix compilation on clang 2023-08-10 14:18:48 -07:00
Jeremy Selan
52caca952d mute format-truncation compile warning 2023-08-10 11:47:26 -07:00