Joshua Ashton
a953bd276e
drm: Fix leaking mode properties
2022-02-02 23:00:38 +00:00
Joshua Ashton
88852d187c
steamcompmgr: HACK! Always composite with a cursor
...
Cursor plane on AMDGPU is very broken with both rotation and overlay planes that are not screen sized. Workaround for now.
2022-02-02 23:00:30 +00:00
Joshua Ashton
a1d560e836
steamcompmgr: Handle cursor image width being different to surface width for rotation offset
...
The surface width for the cursor is 256, but the image width is 64 which means we have a bunch of blank space, so we need to account for this in DRM code for the CRTC offsets.
2022-02-02 22:58:11 +00:00
Joshua Ashton
8313853802
steamcompmgr: Fix clang build
2022-02-01 00:34:10 +00:00
Joshua Ashton
f4c3425a85
steamcompmgr: Add GAMESCOPE_FSR_SHARPNESS property
...
0 to 20, controls FSR sharpness
2022-02-01 00:30:59 +00:00
Joshua Ashton
d01363e35e
steamcompmgr: Implement GAMESCOPE_SCALING_MODE atom
...
0 = linear
1 = nearest
2 = integer
3 = fsr
2022-02-01 00:26:45 +00:00
Joshua Ashton
7755bb635d
steamcompmgr: Clean up code to determine if we need composite
2022-02-01 00:06:08 +00:00
Joshua Ashton
0b5368efe7
steamcompmgr: Force composite when we must force nearest filtering
...
SCALING_FILTER is not hooked up in AMDGPU.
2022-02-01 00:04:25 +00:00
Joshua Ashton
0bc3a2493d
steamcompmgr: Add tuneables for vblank red zone + decay rate
2022-01-31 23:49:39 +00:00
Joshua Ashton
797ee59cbb
vblankmanager: Estimate draw buffer time based on max rolling average draw time
...
Handles spikes much better and allows us to have a lower buffer when not needed.
2022-01-31 23:49:39 +00:00
Joshua Ashton
a659fef806
drm: Use vblank time from page flip handler
2022-01-31 23:49:39 +00:00
Joshua Ashton
779d8f1bee
wlserver: Handle tapping overrides off screen
...
This clamp was stopping us from clicking off the current surface, which we want now.
2022-01-31 23:45:45 +00:00
Joshua Ashton
15dc09adfb
steamcompmgr: Extend cursor barriers tto override
...
It's only fair we can click what we can now see!
2022-01-31 23:45:45 +00:00
Joshua Ashton
289a739358
steamcompmgr: Resize to fit dropdowns
2022-01-31 23:45:45 +00:00
Joshua Ashton
3416cde9f4
steamcompmgr: Raise override redirects
...
Don't give them explicit focus. Allows us to have the cursor off them and have taps and stuff work.
2022-01-31 23:45:45 +00:00
Georg Lehmann
b70ec1b1ad
rendervulkan: Restore force nearest optimization.
2022-01-31 23:41:04 +00:00
Georg Lehmann
3fbcb4d3cd
steamcompmgr: Force compositing for FSR.
2022-01-31 23:41:04 +00:00
Georg Lehmann
a9dac11f15
main: FSR sharpness setting.
2022-01-31 23:41:04 +00:00
Georg Lehmann
96acb9de7e
rendervulkan: Fp16 easu.
2022-01-31 23:41:04 +00:00
Georg Lehmann
3aec05925c
rendervulkan: Enable fp16 extension and feature.
2022-01-31 23:41:04 +00:00
Georg Lehmann
ead46a2db0
main: Add FSR command line option and shortcut.
2022-01-31 23:41:04 +00:00
Georg Lehmann
6cfe2fe09c
rendervulkan: Inital FSR support.
2022-01-31 23:41:04 +00:00
Georg Lehmann
3d3b9ad503
rendervulkan: Create FSR pipelines.
2022-01-31 23:41:04 +00:00
Georg Lehmann
d0605bef22
rendervulkan: Add fsr shaders.
2022-01-31 23:41:04 +00:00
Georg Lehmann
463dabe199
rendervulkan: Move descriptor set definition to separate header.
2022-01-31 23:41:04 +00:00
Georg Lehmann
9a8b3bd22c
rendervulkan: Import fsr headers.
2022-01-31 23:41:04 +00:00
Georg Lehmann
7f3aebbcc0
rendervulkan: Prepare for multiple descriptor sets.
2022-01-31 23:41:04 +00:00
Georg Lehmann
56fb91ea72
rendervulkan: Use drmformats everywhere, create srgb and linear image views
2022-01-31 23:41:04 +00:00
Georg Lehmann
861435aeba
rendervulkan: Allow readwrite images.
2022-01-31 23:41:04 +00:00
Georg Lehmann
5d20c56f2e
rendervulkan: Compile Pipelines on a separate thread.
2022-01-31 23:41:04 +00:00
Georg Lehmann
ebc159869e
rendervulkan: Move VkPipeline creation to its own function.
2022-01-31 23:41:04 +00:00
Joshua Ashton
3dc36c8799
wlserver: Redirect volume events to root xwayland
...
Avoids games being the ones to recieve our lower volume/raise volume keys -- Steam should handle these.
2022-01-31 20:39:35 +00:00
Joshua Ashton
3f4aa2a75f
sdlwindow: Do nothing for title or PushUpdate when nested
...
Waste of cycles.
2022-01-31 18:45:58 +00:00
Joshua Ashton
a5ec3728d9
steamcompmgr: Fix focusDirty tracking being lost when switching to windows without commits
2022-01-31 18:45:58 +00:00
Joshua Ashton
899f1c802e
steamcompmgr: Bring back stats to un-break CI
...
Don't know if we want to bring this back or not... We have better things for this now. But it's breaking CI.
2022-01-31 17:16:18 +00:00
Georg Lehmann
a9654d6cfb
rendervulkan: Only create useful pipelines.
2022-01-31 17:09:10 +00:00
Simon Ser
c110515345
build: bump min meson version to 0.58.0
...
Fixes the following warning:
../meson.build:59: WARNING: Project targeting '>=0.55.0' but tried to use feature introduced in '0.58.0': Positional argument to dep.get_variable().
2022-01-31 14:39:34 +01:00
Simon Ser
429107e193
build: set check: false
in run_command()
...
Fixes this warning:
WARNING: You should add the boolean check kwarg to the run_command call.
It currently defaults to false,
but it will default to true in future releases of meson.
See also: https://github.com/mesonbuild/meson/issues/9300
2022-01-31 14:38:12 +01:00
Simon Ser
718cfee03c
Upgrade libliftoff
2022-01-31 14:35:20 +01:00
Tobias Jakobi
1f5c56ba6d
build: link to librt since the pipewire code uses shm_open()
2022-01-28 21:19:15 +01:00
Georg Lehmann
bf55e08712
rendervulkan: Remove swap channels pipeline variant.
2022-01-26 13:06:30 +00:00
Georg Lehmann
4f0f0065ad
rendervulkan: Remove swap channels.
...
Unused since 76292f01cb
, partially broken and
unnecessary because we should be able to always use the correct VkFormat.
2022-01-26 13:06:30 +00:00
Joshua Ashton
698d14b7e9
steamcompmgr: Use SRGB for cursor image
...
This is it's correct color space after all!
Thanks to Georg Lehmann for pointing this out.
2022-01-25 05:13:20 +00:00
Joshua Ashton
10943045ff
rendervulkan: Support modifiers on SRGB images
2022-01-25 05:13:20 +00:00
Joshua Ashton
79f66f9729
steamcompmgr: Warp cursor off of Steam when cursor is hidden
...
Stops misleading hover events from happening while also not intefering with touch.
2022-01-24 11:38:41 -08:00
Georg Lehmann
83cf86bcc1
build: rebuild shaders when included files changed
2022-01-23 05:10:41 +00:00
Georg Lehmann
5bfc27576d
build: preparations for more shaders
2022-01-23 05:10:41 +00:00
Joshua Ashton
3ae7c0c0f5
steamcompmgr: Keep being interactive when switching between focus windows and waiting for commits
...
Avoids bubbles of no focus window
2022-01-23 05:09:18 +00:00
Joshua Ashton
60f20b9fe5
steamcompmgr: Don't care if game is focused to paint
...
We could just want to render the overlay and our held base commit.
2022-01-23 05:09:18 +00:00
Joshua Ashton
98dc1a5a7e
steamcompmgr: Track X dirtying outside of dispatch
...
If we dirty the X server outside of the dispatch, xlib can flush its events, leading us to a state where XPending(dpy), would be true but the poll returns false.
Check if we have locally queued events before polling and flush those to mitigate this. This does not involve a system call.
2022-01-20 10:39:30 +01:00