Commit Graph
90 Commits
Author SHA1 Message Date
Paul Gofman f0064b6799 proton: Add threadname to default logs. 2023-06-05 17:55:10 +03:00
Paul Gofman 2f851ecb82 vrclient: Support v1.23.7. 2023-06-05 17:55:10 +03:00
Paul Gofman 967b7878e5 vrclient: Update clang path in gen_wrapper.py to 15. 2023-06-05 17:55:10 +03:00
Paul Gofman f5da6b1c22 lsteamclient: Allocate SteamClient interface from native steamclient.dll data.
CW-Bug-Id: #22137
2023-05-19 18:05:06 +03:00
Paul Gofman f7c895c287 steam_helper: Trigger EA Desktop reinstall if link2ea association is missing.
CW-Bug-Id: #21645
2023-03-08 17:35:54 +02:00
Paul Gofman 5610e4538f steam_helper: Set desktop close timeout for EA Desktop.
CW-Bug-Id: #21645
2023-03-08 17:35:54 +02:00
Paul Gofman b59a3040d9 lsteamclient: Fix _GetAppInstallDir() return value.
CW-Bug-Id: #21864
2023-02-14 16:07:44 +02:00
Paul Gofman e1d797fd97 wineopenxr: Use custom Vk structures instead of custom functions for creating Vk device through OpenXR. 2023-02-14 16:07:43 +02:00
Paul Gofman 09bbd8c0bf wineopenxr: Load unwrappers from winevulkan.so. 2023-02-14 16:07:43 +02:00
Paul Gofman e2ab395020 steam_helper: Load unwrappers from winevulkan.so. 2023-02-14 16:07:43 +02:00
Paul Gofman 74ae018197 vrclient: Load unwrappers from winevulkan.so. 2023-02-14 16:07:43 +02:00
Paul Gofman 89a2dac0b2 proton: Enable gamedrive compat option for Creativerse.
CW-Bug-Id: #21729
2023-02-14 16:07:43 +02:00
Paul Gofman f693c48a4c proton: Enable gamedrive compat option for As Dusk Fails.
CW-Bug-Id: #21485
2023-02-14 16:07:43 +02:00
Paul Gofman 30c6b5c41e lsteamclient: Return NULL from manual_convert_SteamAPI_CheckCallbackRegistered_t() if win_func is NULL.
CW-Bug-Id: #21313
2022-10-14 18:21:56 +03:00
Paul Gofman be25891a0c proton: Enable WINE_HEAP_DELAY_FREE for Call of Duty: Black Ops II Zombies and Multiplayer.
CW-Bug-Id: #21106
2022-10-14 18:21:56 +03:00
Paul Gofman 8d2e85be8c proton: Disable forced LAA for Sword and Fairy 4.
CW-Bug-Id: #21180
2022-10-14 18:21:56 +03:00
Paul Gofman 7e27da4bc2 proton: Add Warframe to OPWR disablement list.
CW-Bug-Id: #20944

The game's launcher starts hitting unimplemented d3dcompiler
bits with OPWR supported.
2022-08-10 19:29:30 +03:00
Paul Gofman 7d4ca96ae1 proton: Add WINE_DISABLE_VULKAN_OPWR hack appid list.
CW-Bug-Id: #20680
2022-08-10 19:29:30 +03:00
Paul Gofman a62a80be58 vrclient: Use PROTON_VR_RUNTIME from registry if env var is not there.
CW-Bug-Id: #21036
2022-08-10 19:29:30 +03:00
Paul Gofman 5e7036d566 steam_helper: Also store PROTON_VR_RUNTIME in registry.
CW-Bug-Id: #21036
2022-08-10 19:29:30 +03:00
Paul Gofman bcd3d5218f lsteamclient: Wrap SteamAPIWarningMessageHook_t callback.
CW-Bug-Id: #20813
2022-08-10 19:29:30 +03:00
Paul Gofman 242d655a0f proton: Add dotnetfx35setup.exe builtin override.
CW-Bug-Id: #20733
2022-08-10 19:29:30 +03:00
Paul Gofman b1852d2e67 proton: Add Lost Ember to MFDXGI hack.
CW-Bug-Id: #21097
2022-08-10 19:29:30 +03:00
Paul Gofman 18195c558d lsteamclient: Also don't cache interfaces with vtable allocated from steamclient.dll.
CW-Bug-Id: #20909
2022-08-03 14:24:42 +03:00
Paul Gofman ba3d473ec1 lsteamclient: Place vtables for some interfaces in native steamclient.dll data.
CW-Bug-Id: #20869
2022-08-03 14:24:42 +03:00
Paul Gofman 673e1ae43d proton: Add V Rising to MFDXGI hack.
CW-Bug-Id: #19126
2022-06-03 17:57:43 +03:00
Paul Gofman a216f5baa0 Add POSTAL4: No Regerts to MFDXGI manager hack.
CW-Bug-Id: #20611
2022-06-03 17:57:29 +03:00
Paul Gofman 47ae0819ae lsteamclient: Execute SteamNetworkingSocketsDebugOutput callback from a Wine thread.
CW-Bug-Id: #20684

The callback is called from a native Unix thread which is not initialized with Wine,
meaning it, e. g., has a leftover TEB from another thread. Only native Unix functions
may be called from such a thread.
2022-06-03 14:26:11 +03:00
Paul Gofman 8d7d5bb129 lsteamclient: HACK: Skip spurious overlay deactivation event.
CW-Bug-Id: #20169
2022-06-03 14:26:11 +03:00
Paul Gofman 4e20758255 Revert "lsteamclient: HACK Do not unset SteamAppId for 'Splitgate: Arena Warfare'."
This reverts commit 57dc9d7062.
2022-06-03 14:26:11 +03:00
Paul Gofman cd60b70756 lsteamclient: Fixup gameID parameter for SteamUser008_InitiateGameConnection().
CW-Bug-Id: #20195
2022-04-20 18:54:06 +03:00
Paul Gofman e03828cdc3 lsteamclient: Also treat TypeKind.UNEXPOSED as unspecified function pointer in genwrapper.py. 2022-04-20 18:54:06 +03:00
Paul Gofman a4824da779 proton: Optionally setup T: drive for native Steam directory.
CW-Bug-Id: #20285
2022-04-05 18:13:11 +03:00
Paul Gofman b908213041 wineopenxr: Set Unix __WINE_OPENXR_VK_DEVICE_EXTENSIONS env var instead of Windows.
CW-Bug-Id: #20036

That is read in the winevulkan's Unix part with getenv() now.
2022-01-24 22:53:20 +02:00
Paul Gofman dd35b33d6c vrclient: Update clang path in gen_wrapper.py to 13.0.0. 2022-01-24 22:53:20 +02:00
Paul Gofman b01153b165 proton: Also setup S: drive for game directory for run verb.
CW-Bug-Id: #19930
2022-01-19 11:29:54 +02:00
Paul Gofman d1e6e83c15 wineopenxr: Convert projection view info chain in convert_XrCompositionLayer().
CW-Bug-Id: #19878
2022-01-19 11:29:54 +02:00
Paul Gofman 47d21b5618 wineopenxr: Update to 1.0.20 registry version. 2022-01-19 11:29:54 +02:00
Paul Gofman 3dd273022e Update OpenXR-SDK submodule. 2022-01-19 11:29:54 +02:00
Paul Gofman 920a2e52f0 makefile: Also pefixup .drv files. 2022-01-19 11:29:54 +02:00
Paul Gofman c218238762 wineopenxr: Get required vulkan extensions from registry.
CW-Bug-ID: #19504
2021-11-11 18:36:08 +02:00
Paul Gofman daf8263323 steam_helper: Store OpenXR vulkan extensions in registry.
CW-Bug-ID: #19504
2021-11-11 18:36:08 +02:00
Paul Gofman 034ff27cf3 wineopenxr: Export __wineopenxr_get_extensions_internal() function.
CW-Bug-ID: #19504
2021-11-11 18:36:08 +02:00
Paul Gofman 89f8134740 steam_helper: Build as 64 bit.
CW-Bug-ID: #19504
2021-11-11 18:36:08 +02:00
Paul Gofman 7d37e79328 steam_helper: Create a thread to signal DIPC objects.
CW-Bug-Id: #15930
2021-11-11 18:36:07 +02:00
Paul Gofman 7a90ff74ce lsteamclient: Get memory for SteamClient interface within native steamclient.dll loader range.
CW-Bug-ID: #19605

For Mafia II.
2021-11-11 18:36:07 +02:00
Paul Gofman d9f80272c0 proton: Enabled nvcuda.dll when nvapi is enabled.
Link: https://github.com/ValveSoftware/wine/pull/119
2021-09-23 19:07:57 +03:00
Paul Gofman d2080ad0fd steam_helper: Don't hand off Steam appid to OpenVR runtime in initialize_vr_data().
CW-Bug-Id: 19220

Initializing OpenVR with the app's game ID seems to cause problems with
Steam VR runtime stability when the game uses OpenXR. The negative
impact is that if OpenVR is started the initialization will be delayed
for 2 seconds by vrserver waiting for valid appid. But the wait goes
in parallel with main application startup and should not delay things
much, if at all.
2021-08-12 10:54:19 -05:00
Paul Gofman 9cf5ff5cec wineopenxr: Update to 1.0.18 registry version. 2021-08-12 10:54:19 -05:00
Paul Gofman 95b1dc2b0b Update OpenXR-SDK submodule. 2021-08-12 10:54:19 -05:00
Paul Gofman 6471f83f55 wineopenxr: HACK: Force enable XR_KHR_win32_convert_performance_counter_time.
Linux SteamVR doesn't seem to support the Linux XR_KHR_convert_timespec_time
yet but the games start to refuse to work without the extension even if
they do not actually use it.

CW-Bug-Id: 19220
2021-08-12 10:54:19 -05:00
Paul Gofman 6981478bf5 wineopenxr: Substitute XR_KHR_convert_timespec_time for XR_KHR_win32_convert_performance_counter_time.
CW-Bug-Id: 19220
2021-08-12 10:54:19 -05:00
Paul Gofman c35f4120d4 wineopenxr: Use array for coding extension substitution.
CW-Bug-Id: 19220
2021-08-12 10:54:19 -05:00
Paul Gofman 450f3e8025 vrclient: HACK: Fixup digital action 'bChange' parameter on 32 bit.
CW-Bug-Id: 19067
2021-08-12 10:54:19 -05:00
Paul Gofman d46e6aaada vrclient: Fixup size for structs with matching field offsets but mismatched size.
CW-Bug-Id: 19067
2021-08-12 10:54:19 -05:00
Paul Gofman 68fc0e1c11 wineopenxr: Update to 1.0.17 registry version. 2021-06-17 15:10:20 -05:00
Paul Gofman a079bcd080 wineopenxr: Fix spec entries. 2021-06-17 15:10:20 -05:00
Paul Gofman e8aa632064 Update OpenXR-SDK submodule. 2021-06-17 15:10:20 -05:00
Paul Gofman 5b406be13e build: Fixup PE section headers.
For FH4.
2021-06-17 15:10:20 -05:00
Paul Gofman fb569a17e3 wineopenxr: Update to 1.0.15 registry version. 2021-06-17 15:10:20 -05:00
Paul Gofman 57dc9d7062 lsteamclient: HACK Do not unset SteamAppId for 'Splitgate: Arena Warfare'.
CW-Bug-Id: 18924

To be dropped on the next rebase.
2021-05-27 21:30:27 +03:00
Paul Gofman ec9bf7f85d steam_helper: Create libraryfolders.vdf file.
For 2K Launcher.

CW-Bug-Id: 18912
2021-05-13 10:07:20 -05:00
Paul Gofman 016fb2fc76 steam_helper: Create Valve_SteamIPC_Class event.
For 2K Launcher.

CW-Bug-Id: 18912
2021-05-13 10:07:20 -05:00
Paul Gofman 301e733bbf steam_helper: Forward steam:// protocol requests to winebrowser.
CW-Bug-Id: 18912
2021-05-13 10:07:20 -05:00
Paul Gofman 7c30c77105 vrclient: Return stored BMD presence from BIsHmdPresent() if client core is not initialized.
CW-Bug-Id: 18901
2021-05-13 10:06:49 -05:00
Paul Gofman 0e9c2536c0 steam_helper: Store HMD presence status in registry.
CW-Bug-Id: 18901
2021-05-13 10:06:49 -05:00
Paul Gofman 8ddd3c36a1 proton: Link tahoma.ttf to Windows/Fonts.
CW-Bug-Id: 18862
2021-04-27 13:40:50 -05:00
Paul Gofman e1885f8496 Add replacement font for Courier Bold.
CW-Bug-Id: 18862
2021-04-27 13:40:40 -05:00
Paul Gofman 5d57ef328f vrclient: Cleanup vrclient before native library unload if the app failed to do so.
Unloading native library without the cleanup hangs. If the native
library is not unloaded explicitly the Linux process then hangs on exit.

Fixes hang on exit from Doom VFR.

Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
2021-03-31 14:08:11 -05:00
Paul Gofman 52415ddaa4 vrclient: Use Vulkan texture array for d3d11 texture arrays.
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
2021-03-31 14:08:10 -05:00
Paul Gofman e0f82e30cb vrclient: Support v1.16.8.
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
2021-03-31 14:08:10 -05:00
Paul Gofman 53f2b7aea2 wineopenxr: Don't leak our_images on error in wine_xrEnumerateSwapchainImages().
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
2021-03-31 14:08:10 -05:00
Paul Gofman 5cec20f700 wineopenxr: Mind more fields from XrSwapchainCreateInfo when creating d3d11 swapchain texture.
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
2021-03-31 14:08:10 -05:00
Paul Gofman 36bb06593d wineopenxr: Fix physical device comparison in wine_xrCreateSession().
Affects logging WARN only.

Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
2021-03-31 14:08:10 -05:00
Paul Gofman 29cd5135a3 wineopenxr: Sync DXVK queue in wine_xrEndFrame().
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
2021-03-31 14:08:10 -05:00
Paul Gofman 7c2bd90636 wineopenxr: Support XR_KHR_vulkan_enable2 extension. 2021-03-31 14:08:10 -05:00
Paul Gofman 0a4a8b7a01 wineopexr: Don't consider XrCompositionLayerColorScaleBiasKHR in convert_XrCompositionLayer().
This structure is not inherited from XrCompositionLayerBaseHeader but
is supposed to be passed as chained structure with a layer.
2021-03-31 14:08:10 -05:00
Paul Gofman e70629c08d wineopenxr: Update to 1.0.13 registry version. 2021-03-31 14:08:10 -05:00
Paul Gofman f5383fe715 wineopenxr: Call extra init-related functions from wine_xrCreateSession().
Based on a patch by Andrew Eikum.
2021-03-31 14:08:10 -05:00
Paul Gofman 090871ec2b wineopenxr: Use registry key to query VR availability. 2021-03-31 14:08:10 -05:00
Paul Gofman 92b8b209f2 vrclient_x64: Translate action manifest path in startup info. 2021-03-31 14:08:10 -05:00
Paul Gofman 7ef07bb07f steam_helper: Store OpenVR status and required extensions in registry on startup. 2021-03-31 14:08:10 -05:00
Paul Gofman d2948348b0 vrclient_x64: Use staging texture for the right eye in case of submitted d3d11 texture array. 2021-03-31 14:08:10 -05:00
Paul Gofman 4f51390dde vrclient_x64: Set explicit timing mode when d3d11 application uses PostPresentHandoff. 2021-03-31 14:08:10 -05:00
Paul Gofman 66ded86b3e vrclient_x64: Use static internal compositor data.
VRCompositor ought to be a singleton. Some applications (Gravity Sketch
VR) access VRCompositor multiple times, so we need to share data between
instances.
2021-03-31 14:08:10 -05:00
Paul Gofman 74313aa478 vrclient_x64: Perform skybox textures conversion for dxvk textures. 2021-03-31 14:08:10 -05:00
Paul Gofman 98f55bfdb1 vrclient_x64: Unload native vrclient shared library on process detach. 2021-03-31 14:08:10 -05:00
Paul Gofman 89c297da9d vrclient_x64: Resolve absolute path in vrclient_dos_path_to_unix_path(). 2021-03-31 14:08:10 -05:00
Paul Gofman f5a9a2a302 vrclient_x64: Do not change handle in in ivrcompositor_submit_vulkan().
No Man's Sky is giving us vulkan handle in that handle. It looks like
the depth texture is not used by openvr, putting anything to this handle
does not trigger any fault or Vulkan validation error.
2021-02-05 08:18:54 -06:00
Paul Gofman 4f31b3b2b8 lsteamclient: Fix end of string check in relative path conversion. 2020-11-09 13:43:05 -06:00