Cameron Gutman
a1b74e1220
Fix vaExportSurfaceHandle() detection with i965 VAAPI driver
2020-05-14 20:56:24 -07:00
Cameron Gutman
01f6188824
Add VAAPI_FORCE_DIRECT and VAAPI_FORCE_INDIRECT env vars to control rendering technique
2020-05-13 19:45:30 -07:00
Cameron Gutman
283f31a734
Test if vaExportSurfaceHandle() works before claiming EGL export is supported
2020-05-13 19:39:45 -07:00
Cameron Gutman
b800ce9ebe
Allow use of VA drivers without VAEntrypointVideoProc
2020-05-13 19:31:25 -07:00
Cameron Gutman
eb9d54465c
Don't use EGLRenderer if not built with SDL 2.0.10+
2020-05-13 19:19:11 -07:00
Cameron Gutman
eb9e1f81d4
Enable the EGLRenderer to use the render thread
2020-05-13 19:09:20 -07:00
Cameron Gutman
51e9ab83ad
Send a null AVFrame to indicate end of stream to allow renderers to do render thread cleanup
2020-05-13 18:55:21 -07:00
Cameron Gutman
5ed7e03b2e
Merge pull request #365 from xdbob/wayland_for_upstream
...
Introduce a new FFMPEG frontend renderer: EGLRenderer
2020-05-13 18:39:18 -07:00
Cameron Gutman
b4548c1af2
Flush all window events after SDL_CreateRenderer()
2020-05-12 18:41:36 -07:00
Antoine Damhet
0a396f3112
Introduce a new FFMPEG frontend renderer: EGLRenderer
...
Right now this renderer works on X11 & Wayland with VAAPI as a backend.
Some rendering latency benchmarks on my `i7-10510U` (with
`intel-media-driver` 20.1.1 which cause a *huge* regression with the
SDL_Renderer):
| | X11 | Wayland |
| Before | 6.78ms | 22.50ms |
| EGLRenderer | 0.76ms | 00.77ms |
Signed-off-by: Antoine Damhet <antoine.damhet@lse.epita.fr>
2020-05-12 11:11:35 +02:00
Cameron Gutman
fc9871b075
Delay mouse capture until after SDL_RecreateWindow() has been called
2020-05-09 19:48:13 -07:00
Cameron Gutman
3cb3c1c6d8
Revert "Use the physical desktop size in pixels rather than the native resolution on macOS"
...
Let's wait until functionality is confirmed on a 5K iMac before doing this.
This reverts commit 8fe3474589
.
2020-05-09 16:52:18 -07:00
Cameron Gutman
8fe3474589
Use the physical desktop size in pixels rather than the native resolution on macOS
...
It seems like some Macs (5K iMacs at least) don't have kDisplayModeNativeFlag set
2020-05-09 16:34:48 -07:00
Cameron Gutman
0428bc8fe3
Generate synthetic mouse button up if the mouse has left the window and the button is raised
2020-05-07 19:26:02 -07:00
Cameron Gutman
514a8575a2
Use the viewport size for computing the overlay position
2020-05-07 18:56:53 -07:00
Cameron Gutman
f30c11ddf4
Properly fix SDL_HINT_MOUSE_FOCUS_CLICKTHROUGH on macOS VTRenderer
2020-05-06 22:20:21 -07:00
Cameron Gutman
51c4ecc879
Revert "Partially unrevert 05e82c24
for macOS which still needs it"
...
This reverts commit 080421f2fb
.
2020-05-06 21:41:57 -07:00
Cameron Gutman
080421f2fb
Partially unrevert 05e82c24
for macOS which still needs it
2020-05-06 21:18:23 -07:00
Cameron Gutman
8cc61ca8b8
Use SDL_HINT_MOUSE_FOCUS_CLICKTHROUGH to get click events on focus gain
2020-05-06 20:43:41 -07:00
Cameron Gutman
400754c5b3
Revert "Pass through focus-gain clicks to the host in absolute mouse mode"
...
This reverts commit 05e82c24f8
.
2020-05-06 20:04:07 -07:00
Cameron Gutman
05e82c24f8
Pass through focus-gain clicks to the host in absolute mouse mode
2020-05-06 18:58:43 -07:00
Cameron Gutman
dfa63297fc
Fix incorrectly scaled output from the SDL renderer on macOS
2020-05-04 17:48:32 -07:00
Cameron Gutman
417aa2815c
Add a friendly error message when no video traffic is received
2020-05-01 21:28:48 -07:00
Cameron Gutman
2fdabe37aa
Raise the window before capturing in relative mode
2020-05-01 18:44:22 -07:00
Cameron Gutman
d8270dfb6a
Capture mouse by default on debug builds too
2020-05-01 18:43:54 -07:00
Cameron Gutman
9bf52eb63a
Improve relative touch deadzone behavior
2020-04-30 21:04:51 -07:00
Cameron Gutman
0c9d72a9a1
Restore the option for relative touch mode
2020-04-30 20:55:15 -07:00
Cameron Gutman
c2c2bd2df6
Split input.cpp into smaller files
2020-04-30 20:22:43 -07:00
Cameron Gutman
78fc594d84
Move input code into a subfolder
2020-04-30 20:09:36 -07:00
Cameron Gutman
96e6750f9c
Don't confine the cursor to the full-screen window when not capturing input
2020-04-28 20:37:00 -07:00
Cameron Gutman
dbafd05a4e
Store a pointer to the window inside the input handler
2020-04-28 20:24:27 -07:00
Cameron Gutman
d7fd578cc3
Don't set MODIFIER_META when meta key is disabled
2020-04-28 20:06:30 -07:00
Cameron Gutman
1852f74e8b
Add missing return statement
2020-04-26 20:42:01 -07:00
Cameron Gutman
55e3e16860
Try radeonsi if other VAAPI drivers fail
2020-04-26 20:18:46 -07:00
Cameron Gutman
7cf2a55b43
Allow radeonsi to direct render on XWayland
2020-04-26 20:13:00 -07:00
Cameron Gutman
c41cbbd2da
Allow the radeonsi VAAPI driver on XWayland
2020-04-26 20:06:53 -07:00
Cameron Gutman
7283bb046b
Disable initial mouse capture on XWayland
2020-04-26 19:33:25 -07:00
Cameron Gutman
aaa112c3f3
Don't use VAAPI drivers that lack VPP support
...
intel-media-va-driver (free) is one example of such a driver which
is apparently missing the shaders to perform colorspace conversion.
2020-04-26 15:38:05 -07:00
Cameron Gutman
f749b38aa2
Warn when starting a game with remote desktop mouse mode enabled
2020-04-25 23:50:12 -07:00
Cameron Gutman
f2d5cf785e
Don't cancel mouse capture on focus loss in absolute mode
2020-04-25 15:42:13 -07:00
Cameron Gutman
f926ad9b5e
Fix inverted capture-by-default setting
2020-04-25 15:41:45 -07:00
Cameron Gutman
68acf969f2
Move focus handling into the input code
2020-04-25 15:37:33 -07:00
Cameron Gutman
65d53e800b
Confine the cursor to the window in full-screen exclusive mode
2020-04-25 13:15:14 -07:00
Cameron Gutman
d1823dd6e1
Capture the mouse by default always on release builds and in absolute mode for debug builds
2020-04-25 13:01:15 -07:00
Cameron Gutman
80bfd3b8e9
Change raw input checkbox to adjust absolute vs relative mouse mode
2020-04-25 13:00:39 -07:00
Cameron Gutman
07128cc7fe
Allow keyboard input when the mouse is not captured
2020-04-24 21:35:38 -07:00
Cameron Gutman
0892f0b0bb
Don't capture the cursor on a touch event
2020-04-24 21:26:59 -07:00
Cameron Gutman
8cf7f3ac08
Fix absolute mouse positioning on SDL renderer
2020-04-24 19:37:15 -07:00
Cameron Gutman
ab2bb51879
Clamp mouse motion to the video region rather than dropping it
2020-04-24 17:35:35 -07:00
Cameron Gutman
8cb98b5365
Rewrite touchscreen support for direct input
2020-04-23 21:34:03 -07:00