Commit Graph

126 Commits

Author SHA1 Message Date
Andrew Eikum
181eb3a68f vrclient: Use 32-bit build for thiscall wrappers 2019-09-24 08:00:08 -05:00
Andrew Eikum
2eda0d235b vrclient: Add alignment attribute if needed 2019-09-24 08:00:08 -05:00
Andrew Eikum
8de08a1485 vrclient: Handle NULL parameters to wrapped structs 2019-09-24 08:00:08 -05:00
Andrew Eikum
81b9803214 vrclient: Support v1.6.10 2019-08-23 09:57:46 -05:00
Joshua Ashton
948aeac50d vrclient: Support for HmdSystemFactory export
Fixes a crash in Half-Life 2 in settings, and other legacy VR titles
2019-08-08 14:14:28 -05:00
Sophie Tauchert
99764d17b1 vrclient: Add openvr v1.5.17 support 2019-07-18 06:10:48 -05:00
Andrew Eikum
44f447e9a6 openvr: Support v1.4.18 2019-07-03 08:14:33 -05:00
Andrew Eikum
27b0d4083d openvr: Support v1.3.22 2019-07-03 08:14:33 -05:00
Andrew Eikum
94568eaa23 openvr: Support v1.2.10 2019-07-03 08:14:33 -05:00
Andrew Eikum
11d23de666 vrclient: Downgrade some ERRs 2019-06-17 15:18:14 -05:00
Andrew Eikum
520d675f11 vrclient: Fix up windows-side struct packing 2019-03-21 08:31:33 -05:00
Andrew Eikum
cb4490fb03 vrclient: Fix up pointer cast to latest TextureMap type 2019-03-21 08:31:33 -05:00
Andrew Eikum
a2bedd9c8f vrclient: Convert more file paths 2019-03-21 08:31:33 -05:00
hdmap
1ff16641fd vrclient: Translate filepath for SetActionManifestPath 2019-03-21 08:31:33 -05:00
Andrew Eikum
8e26729a1c vrclient: Support openvr v1.1.3b 2018-12-20 10:53:32 -06:00
hdmap
f260a2cb30 vrclient: Support intermediate version 1.0.3a
Used by The Lab.
2018-12-20 10:53:32 -06:00
Andrew Eikum
b14b9ed721 vrclient: Fix IVRRenderModels usage 2018-11-05 11:25:28 -06:00
Andrew Eikum
3f44c228fe vrclient: Add openvr v1.0.16 and v1.0.17 support 2018-10-31 07:48:33 -05:00
Andrew Eikum
cc3e4210cd Revert "build dxvk as native .so"
This reverts commits aef98f1e7d and f85b734f66.

The Steam Runtime is too old to build DXVK, so we have to continue
building it as a Windows DLL.
2018-10-16 07:50:33 -05:00
Andrew Eikum
f85b734f66 Update DXVK to v0.80 and build as native .so 2018-10-11 08:21:09 -05:00
Józef Kucia
cf2be60a67 vrclient: Implement LoadIntoTextureD3D11_Async(). 2018-10-11 08:21:09 -05:00
Józef Kucia
b44c226242 vrclient: Log IVRClientCore initialization errors. 2018-10-11 08:21:09 -05:00
Józef Kucia
7ea55b4679 vrclient: Avoid unnecessary casts. 2018-10-11 08:21:09 -05:00
Józef Kucia
8f57eb1487 vrclient/wined3d: Handle depth textures in synchronous mode. 2018-10-11 08:21:09 -05:00
Józef Kucia
7902969fd7 vrclient/wined3d: Use synchronous mode for older versions. 2018-10-11 08:21:09 -05:00
Józef Kucia
60a45d33b6 vrclient/dxvk: Add FIXME() for unhandled flags. 2018-10-11 08:21:09 -05:00
Józef Kucia
a7eec2b6e9 vrclient: Remove dead code. 2018-10-11 08:21:09 -05:00
Józef Kucia
c0f2627396 vrclient: Introduce VRCLIENT_HAVE_DXVK. 2018-10-11 08:21:09 -05:00
Józef Kucia
cad4edfed8 vrclient: Factor out ivrcompositor_submit_vulkan(). 2018-10-11 08:21:09 -05:00
Józef Kucia
53b798a62f vrclient: Factor out ivrcompositor_submit_dxvk(). 2018-10-11 08:21:08 -05:00
Józef Kucia
66e149f87f vrclient: Factor out ivrcompositor_submit_wined3d(). 2018-10-11 08:21:08 -05:00
Józef Kucia
3f2b30d351 vrclient: Make get_our_compositor() thread-safe.
get_our_compositor() is also called from the wined3d command stream
thread.
2018-10-11 08:21:08 -05:00
Józef Kucia
5d073d3f40 vrclient: Add CFI directives to asm functions.
Fixes backtraces.
2018-10-11 08:21:08 -05:00
Józef Kucia
f7ffa9c395 vrclient: Use movaps to shift XMM registers.
Follow what GCC does.
2018-10-11 08:21:08 -05:00
Józef Kucia
824d0765aa vrclient/gen_wrapper: Reduce code duplication slightly. 2018-10-11 08:21:08 -05:00
Andrew Eikum
58ec0b8b97 lsteamclient: Fix order of overloaded methods in vtable
msvc++ groups overloaded methods and places them in reverse order of
declaration in the vtable.
2018-09-06 14:22:36 -05:00
Mayeul Cantan
0f80f2f52c Import print_function from __future__ for python compatibility
This alters the behaviour of python2's print statement to be compatible
with python3's print function. While not strictly necessary for now,
this might help future compatibility.
Thanks to Seppo Yli-Olli (@nanonyme) for suggesting this.
2018-08-24 09:28:52 +02:00
Mayeul Cantan
9c3667c083 Make proton, gen_wrapper and user_settings python scripts version-agnostic 2018-08-23 14:24:39 +02:00
Seppo Yli-Olli
d162bda989
Sanitize hashbang 2018-08-22 16:49:20 +03:00
Józef Kucia
9344fea359 vclient: Add tests for C API thunks. 2018-07-30 18:04:25 +02:00
Józef Kucia
d8f1c49922 vrclient: Move source files to separate directory.
In preparation for the next commit.
2018-07-30 17:43:32 +02:00
Józef Kucia
cef5122550 vrclient: Fix x64 C API thunks for methods returning records. 2018-07-30 17:43:32 +02:00
Józef Kucia
304a3d8b76 vrclient: Fix float parameters in x64 C API thunks. 2018-07-30 17:43:19 +02:00
Józef Kucia
92f395ddd5 vrclient/gen_wrapper: Introduce get_params() helper function. 2018-07-30 12:49:50 +02:00
Józef Kucia
d687b83fcb vrclient: Generate call_flat_method() functions.
In order to remove hardcoded limit for parameter count in C API
functions.
2018-07-30 09:34:15 +02:00
Józef Kucia
23ffdc5ec8 vrclient: Fix x64 thunks for C API.
* Clean up the stack properly.
* Do not push parameters after shadow register space.
2018-07-26 12:19:15 -05:00
Andrew Eikum
97cb5639d7 vrclient: Fix building on macos 2018-06-07 10:16:52 -05:00
Andrew Eikum
fb1c2686a2 vrclient: Support IVRInput and IVRIOBuffer 2018-06-05 10:02:07 -05:00
Andrew Eikum
af59703d41 vrclient: Import openvr v1.0.13, v1.0.14, and v1.0.15 2018-06-05 09:39:20 -05:00
Andrew Eikum
d472d536cf vrclient: Call SetExplicitTimingMode even on older vrclient versions 2018-06-05 09:34:21 -05:00
Zebediah Figura
f7510f2a7b vrclient: Add support for flat (FnTable) API 2018-06-04 14:50:18 -05:00
Andrew Eikum
565041c0e7 vrclient: Don't build DXVK support on 32-bit Mac
MoltenVK is 64-bit only, so DXVK will not be supported on 32-bit.
2018-05-23 14:34:53 -05:00
Philip Rebohle
e01a5a2855 vrclient: Add DXVK support for D3D11 submissions 2018-05-10 17:40:33 -07:00
Philip Rebohle
bc88c17a36 vrclient: Add DXVK interop header 2018-05-10 17:39:23 -07:00
Andrew Eikum
f8acbc68a9 vrclient: Support TextureWithPose and TextureWithDepth 2018-05-02 08:40:26 -05:00
Andrew Eikum
3c3c08a850 vrclient: Fix building on mac 2018-04-19 14:34:51 -05:00
Andrew Eikum
fa7accb724 Update license info 2018-04-19 12:52:55 -05:00
Józef Kucia
bd96c106ce vrclient: Wait for pending command stream operations before IVRClientCore::Cleanup()
Command stream callbacks may try to access VR client objects.
2018-04-19 16:11:58 +02:00
Józef Kucia
a1031dbce4 vrclient: Add destructors for win objects 2018-04-19 15:55:28 +02:00
Józef Kucia
832108fc39 vrclient: Cleanup includes in vrclient_main.c 2018-04-19 11:26:54 +02:00
Andrew Eikum
5aa155edb2 vrclient: Use Vulkan unwrappers in IVRSystem::GetOutputDevice 2018-04-11 11:38:16 -05:00
Andrew Eikum
f386e16db8 vrclient: Use Vulkan unwrappers in IVRCompositor::GetVulkanDeviceExtensionsRequired 2018-04-11 11:38:05 -05:00
Andrew Eikum
73ba2b3471 vrclient: Use Vulkan unwrappers for IVRCompositor::Submit 2018-04-11 11:37:26 -05:00
Józef Kucia
f83a2f393c vrclient: Call IVRCompositor::SubmitExplicitTimingData() for wined3d D3D11 2018-04-11 08:10:59 -05:00
Józef Kucia
69e7d14b65 vrclient: Enable explicit timing for wined3d D3D11
This makes IVRCompositor::WaitGetPoses() graphics-agnostic, and allows
us to call IVRCompositor::Submit() from the wined3d command stream.
2018-04-11 08:10:59 -05:00
Józef Kucia
7b06a5685a vrclient: Call IVRCompositor::PostPresentHandoff() on wined3d command stream thread
IVRCompositor::PostPresentHandoff() has to be called on the same thread
as IVRCompositor::Submit()
2018-04-11 08:10:59 -05:00
Józef Kucia
dae9230aff vrclient: Add initial support for wined3d D3D11 2018-04-11 08:10:58 -05:00
Józef Kucia
2caa4964d2 vrclient: Add definitions for types which can be dereferenced in IVRCompositor::Submit() 2018-04-11 08:10:58 -05:00
Józef Kucia
f126716098 vrclient: Add method overrides for IVRCompositor::Submit() 2018-04-11 08:10:58 -05:00
Józef Kucia
dcfb566f89 vrclient: Implement IVRSystem::GetDXGIOutputInfo() 2018-04-11 08:10:58 -05:00
Andrew Eikum
e217e277c4 Support building for Mac
Patch by Aric
2018-02-08 09:21:25 -06:00
Andrew Eikum
6b5f94f2ef vrclient: Pass Linux struct size to Linux GetControllerState 2018-02-02 11:02:30 -06:00
Andrew Eikum
e8edb0f783 vrclient: Add sdk v1.0.12 2018-01-31 11:00:21 -06:00
Andrew Eikum
c5f7f9c038 build vrclient 2018-01-18 13:57:01 -06:00
Andrew Eikum
9982ade529 vrclient: Fix building with winemaker 2018-01-18 13:32:36 -06:00
Andrew Eikum
a89b44235a Add vrclient 2018-01-18 13:29:49 -06:00