Commit graph

3987 commits

Author SHA1 Message Date
Jakob Bornecrantz f91db16dac u/builders: Add xrt_builder_helpers 2022-05-17 11:20:40 +01:00
Jakob Bornecrantz 46c6412cc5 st/prober: Implement xrt_builder functionallity 2022-05-17 11:20:40 +01:00
Jakob Bornecrantz 850527adc5 xrt: Add system builders and update xrt_prober interface
Aka setter uppers.
2022-05-17 11:20:40 +01:00
Jakob Bornecrantz 82e2ce6390 st/oxr: Fix crash when there is no optional extension in the list 2022-05-16 21:18:23 +00:00
Frederic Plourde 2e42373d21 aux/os: Fix os_semaphore_get_realtime_clock()
Function was previously using output param 'ts' as
input for computing 'now' internally.
2022-05-16 20:56:53 +00:00
Moses Turner 8ac95a5177 d/ht: Add some things to the WMR creation interface, and make it the default interface. 2022-05-16 19:15:33 +01:00
Ryan Pavlik 2f457d0665 build: Search for DXGI and WinRT (WindowsApp) libraries 2022-05-16 11:00:27 -05:00
Ryan Pavlik 213f4b6003 a/util: Add a COM guard object.
Need COM initialized to do some things (like d3d11) on Windows,
don't know if the app already initialized it, don't have a big preference
for "how" we initialize it.
2022-05-16 11:00:27 -05:00
Ryan Pavlik 46a3c7b039 build: Look for WIL (Windows Implementation Library)
Also define XRT_HAVE_WIL if we have it.
2022-05-16 11:00:27 -05:00
Moses Turner bd0d24ad5c mercury: Hopefully fix 1DOF joint limiting 2022-05-16 16:09:32 +01:00
Moses Turner 0aadc85a79 mercury: Initialize variables
Caused heisencrashes sometimes.
2022-05-16 16:03:18 +01:00
Moses Turner 85f30f48c6 mercury: Correctly handle lower resolution input images
And better calibration debug prints
2022-05-16 16:03:18 +01:00
Jakob Bornecrantz 85d4a72d0f d/psmv: Fix NULL check 2022-05-15 21:40:26 +01:00
Jakob Bornecrantz 0201274764 c/render: Drop s from interface file for consistant naming 2022-05-15 18:04:45 +01:00
Jakob Bornecrantz f4ab51f78b u/pp: Add xrt_result_t printing 2022-05-15 15:02:08 +01:00
Jakob Bornecrantz 535cb839fa u/pp: Add stack only sink for printing messages 2022-05-15 14:54:00 +01:00
Jakob Bornecrantz 6a2426c0a2 d/psmv: Refactor device creation in preperation of builders 2022-05-15 14:45:01 +01:00
Jakob Bornecrantz ddb142564f d/psvr: Refactor device creation in preperation of builders 2022-05-15 14:45:01 +01:00
Jakob Bornecrantz 23ed0a6632 xrt: Remove unused xdev argument to trackers 2022-05-14 22:40:36 +01:00
Mateo de Mayo 4e20384f11 gui: Make imgui.ini file live in config directory 2022-05-14 16:46:20 -03:00
Moses Turner bcfd50c839 u/sink: Make sure gen-locked frames have the same timestamp 2022-05-13 14:18:02 +01:00
Jakob Bornecrantz 2e8d1f9b34 ipc: Set xdev_count on xrt_system_devices 2022-05-13 10:57:28 +01:00
Moses Turner 5122ecd0b0 d/dai: Fisheye calibration was upstreamed, actually use it now 2022-05-12 20:01:15 +00:00
Jakob Bornecrantz faca646193 u/logging: Change suffix to _func_t 2022-05-12 11:59:12 +00:00
Jakob Bornecrantz aeb11566cd xrt: Re-order things in xrt_prober 2022-05-12 11:59:12 +00:00
Jakob Bornecrantz 3a9ac6aa5d xrt: Move prober creation functions and struct last 2022-05-12 11:59:12 +00:00
Jakob Bornecrantz 116d1a9bf8 xrt: Typedefs have a _t suffix 2022-05-12 11:59:12 +00:00
Jakob Bornecrantz 126dbb540f xrt: Remove functions now living in helper code 2022-05-12 11:59:12 +00:00
Jakob Bornecrantz a38ea4231c d/vive: Use prober helper code 2022-05-12 11:59:12 +00:00
Jakob Bornecrantz b9d88f4eab d/wmr: Use prober helper code 2022-05-12 11:59:12 +00:00
Jakob Bornecrantz ceed09d9b5 u/prober: Add helper file for prober functions 2022-05-12 11:59:12 +00:00
Jakob Bornecrantz d76b1f5e9a st/prober: Remove last vestiges of hand tracking 2022-05-12 12:53:16 +01:00
Jakob Bornecrantz 1a358d3a92 u/sink: Remove unused downstream2 2022-05-12 12:53:14 +01:00
Jakob Bornecrantz fc093e2c7b u/sink: Assert on downstream being null 2022-05-12 12:53:12 +01:00
Jakob Bornecrantz add6cb639a st/gui: Fix crash if no instance have been created 2022-05-11 15:36:53 +01:00
Jakob Bornecrantz aafbaecbc9 xrt: Remove old unused instance functions 2022-05-11 10:49:15 +01:00
Moses Turner d6f62633e9 st/gui: Use xrt_system_devices struct and xrt_instance_create_system call
Includes fixes from Christoph Haag:

```
st/gui: Fix segfault when starting monado-gui without arguments
```

```
st/gui: Run gui_prober_select only in the modules that need a prober

This also speeds up starting up the monado-gui main menu.
```

Co-authored-by: Moses Turner <moses@collabora.com>
Co-authored-by: Jakob Bornecrantz <jakob@collabora.com>
Co-authored-by: Christoph Haag <christoph.haag@collabora.com>
2022-05-11 10:49:15 +01:00
Jakob Bornecrantz 65aa7581d2 st/ovrd: Use xrt_instance_create_system 2022-05-11 10:49:15 +01:00
Jakob Bornecrantz 3c6bf7b912 st/oxr: Use xrt_instance_create_system 2022-05-11 10:49:15 +01:00
Jakob Bornecrantz 634d495301 ipc: Use and support xrt_instance_create_system 2022-05-11 10:18:35 +01:00
Jakob Bornecrantz d642848bb1 t/cli: Use xrt_instance_create_system call 2022-05-11 10:16:08 +01:00
Jakob Bornecrantz 1b8cbfd226 t/common: Implement xrt_instance_create_system call 2022-05-11 10:15:18 +01:00
Jakob Bornecrantz d84819eee7 u/system_helpers: Add helper code for system devices 2022-05-11 10:14:00 +01:00
Jakob Bornecrantz 224b473dba xrt: Add xrt_instance_create_system call 2022-05-11 10:11:43 +01:00
Jakob Bornecrantz d0d3e0cac8 xrt: Add xrt_system_devices struct 2022-05-11 10:10:38 +01:00
Jakob Bornecrantz ccfe8c8de0 c/main: Fix doxygen ref 2022-05-11 10:08:03 +01:00
Moses Turner ec191bd9de targets: Add DepthAI head tracker 2022-05-10 23:47:30 +01:00
Moses Turner e8776fd705 d/dai: Add little xrt_device implementation for head tracking 2022-05-10 23:47:30 +01:00
Moses Turner c7cb763b38 inc/xrt, steamvr_drv: add DepthAI device type 2022-05-10 23:47:30 +01:00
Moses Turner 5ba7ae3c53 d/dai: Add initial IMU support 2022-05-10 23:47:30 +01:00
Moses Turner af5516f4b6 d/dai: We didn't need this calibration struct for anything 2022-05-10 23:47:30 +01:00
Moses Turner e25ee4058d xrt: Remove xrt_tracked_hand 2022-05-10 18:53:58 +01:00
Christoph Haag 71c7ec2382 c/main: Add thread waiting for vblank events
Co-authored-by: Christoph Haag <christoph.haag@collabora.com>
Co-authored-by: Jakob Bornecrantz <jakob@collabora.com>
2022-05-10 11:22:51 +01:00
Jakob Bornecrantz e140cfad5c u/pacing: Add vblank timing function for display control 2022-05-10 11:22:04 +01:00
Jakob Bornecrantz 57070ad620 u/pacing: Make the comp time be at least 2ms in fake pacer 2022-05-10 11:18:52 +01:00
Jakob Bornecrantz b9b9ced43d u/pacing: Predict present time and then calculate display time in fake pacer 2022-05-10 11:18:52 +01:00
Jakob Bornecrantz 6c9c1e9249 u/pacing: Make present_to_display_offset_ns more clear 2022-05-10 11:18:51 +01:00
Jakob Bornecrantz e93b1c61ff st/oxr: Make VK_KHR_external_[fence|semaphore]_fd optional
Only for XR_KHR_vulkan_enable2, harder to do for XR_KHR_vulkan_enable.
2022-05-09 14:01:20 +00:00
Jakob Bornecrantz 8945153bc9 st/oxr: Work around clang-format (NFC) 2022-05-09 14:01:20 +00:00
Jakob Bornecrantz c6b0089c51 xrt: Pass external_[fence|semaphore]_fd status in 2022-05-09 14:01:20 +00:00
Jakob Bornecrantz 989c4334a3 c/client: Pass external_[fence|semaphore]_fd status in 2022-05-09 14:01:20 +00:00
Jakob Bornecrantz c8de67ad94 c/main: Make VK_KHR_external_[fence|semaphore]_fd optional 2022-05-09 14:01:20 +00:00
Jakob Bornecrantz cd018c98f8 c/main: Work around clang-format (NFC) 2022-05-09 14:01:20 +00:00
Jakob Bornecrantz fd35f6668a c/util: Print device info as well 2022-05-09 14:01:20 +00:00
Jakob Bornecrantz 2b042d48ff a/vk: Add function to print opened device info 2022-05-09 14:01:20 +00:00
Jakob Bornecrantz 6c61965790 a/vk: Tidy vk_print_device_info 2022-05-09 14:01:20 +00:00
Jakob Bornecrantz e092a3687b a/vk: Pass external_[fence|samaphore]_fd status to vk_init_from_given 2022-05-09 14:01:20 +00:00
Jakob Bornecrantz 6a8e679f87 a/vk: Check for VK_KHR_external_fence_fd and VK_KHR_external_semaphore_fd 2022-05-09 14:01:20 +00:00
Jakob Bornecrantz 308aeb8e21 a/vk: Sort checked extensions 2022-05-09 14:01:20 +00:00
Jakob Bornecrantz 759162ebeb ipc: Return correct status if we fail to create a semaphore 2022-05-09 14:01:20 +00:00
Christoph Haag 2064fd8721 c/main: zero initialize xrt_system_compositor_info
Fixes valgrind warning

==354193== Thread 39:
==354193== Syscall param sendmsg(msg.msg_iov[0]) points to uninitialised byte(s)
==354193==    at 0xC0A146D: sendmsg (in /usr/lib/libc.so.6)
==354193==    by 0x18527D: ipc_send (src/xrt/ipc/shared/ipc_utils.c:65)
==354193==    by 0x157771: ipc_dispatch (ipc_server_generated.c:165)
==354193==    by 0x15C88D: client_loop (src/xrt/ipc/server/ipc_server_per_client_thread.c:112)
==354193==    by 0x15C60C: ipc_server_client_thread (src/xrt/ipc/server/ipc_server_per_client_thread.c:183)
==354193==    by 0xC01A5C1: start_thread (in /usr/lib/libc.so.6)
==354193==    by 0xC09F583: clone (in /usr/lib/libc.so.6)
==354193==  Address 0xc0866afc is on thread 39's stack
==354193==  in frame #2, created by ipc_dispatch (ipc_server_generated.c:23)
==354193==  Uninitialised value was created by a stack allocation
==354193==    at 0x15F830: xrt_gfx_provider_create_system (src/xrt/compositor/main/comp_compositor.c:1118)
2022-05-09 15:53:25 +02:00
Christoph Haag f76b31795f ipc: zero initialize message buffer 2022-05-09 15:53:00 +02:00
Jakob Bornecrantz a24551b24b c/main: Refactor image count selection 2022-05-09 10:57:05 +00:00
Jakob Bornecrantz 9b8fe97ba9 c/main: Remove pre-declared function declarations
Split in two commits to improve git diff for previous commit.
2022-05-09 10:57:05 +00:00
Jakob Bornecrantz c052b856cf c/main: Refactor comp_target_swapchain to not pre-declare any internal functions 2022-05-09 10:57:05 +00:00
Jakob Bornecrantz 41cb0bc2e3 c/main: Whitespace in comp_target_swapchain 2022-05-09 10:57:05 +00:00
Jakob Bornecrantz 35e7a7c6ff c/main: Fix copy typo 2022-05-09 10:57:05 +00:00
Jakob Bornecrantz 6b19eedf9c d/survive: Use shared bindings 2022-05-09 10:46:44 +00:00
Jakob Bornecrantz 456f9c7f09 d/vive: Use shared bindings 2022-05-09 10:46:44 +00:00
Jakob Bornecrantz 56b77248c9 a/vive: Add bindings to touch controller 2022-05-09 10:46:44 +00:00
Jakob Bornecrantz 7d4b19766c a/vive: Add bindings 2022-05-09 10:46:44 +00:00
Jakob Bornecrantz 8cf120a6f2 c/render: Fix comment (NFC) 2022-05-08 10:09:07 +01:00
Jakob Bornecrantz d2f2a06e91 c/render: Use query pool to measure GPU time 2022-05-08 10:09:07 +01:00
Jakob Bornecrantz 6d02d67f78 c/main: Ask for VK_EXT_calibrated_timestamps if available 2022-05-08 10:09:07 +01:00
Jakob Bornecrantz c4f0e17e88 c/main: Setting logging level when checking vulkan caps 2022-05-08 10:09:07 +01:00
Christoph Haag 611a0f644d c/main: Use at least 3 vk images for comp target swapchain if supported 2022-05-08 10:09:07 +01:00
Mateo de Mayo 1a687cdee4 d/wmr: Add initial hand tracking for WMR devices
Co-authored-by: Moses Turner <moses@collabora.com>
2022-05-07 15:53:56 +00:00
Mateo de Mayo 7e1f9a7964 t/hand: Add option for allowing xfctx to be managed externally
Other trackers (e.g., psmv, slam, etc) work as sinks and the xfctx that manages
them is handled by the device providing the data streams. This change helps
the hand tracker have a more similar interface to other trackers.
2022-05-07 15:53:56 +00:00
Mateo de Mayo 44dac0eb5d d/wmr: Refactor UI and tracker initialization into their own methods (NFC) 2022-05-07 15:53:56 +00:00
Mateo de Mayo e3fadb5364 doc: Fix some doxygen warnings 2022-05-07 15:53:56 +00:00
Ryan Pavlik bcdc2416a7 cmake: Adjust deps of XRT_INSTALL_*_SYSTEMD_*
Value may be ignored in this repo without the service target,
but it's harmless to have it on, and more flexible to build on.
2022-05-06 14:30:49 -05:00
Ryan Pavlik ccbb658e49 st/oxr: Fix renderdoc build on Windows. 2022-05-06 13:59:24 -05:00
Ryan Pavlik e79a13f0ac a/util: Fix log corruption on Windows. 2022-05-06 00:26:39 +01:00
Ryan Pavlik dd6b0debd0 c/main: Populate LUID in xrt_system_compositor_info 2022-05-06 00:26:34 +01:00
Ryan Pavlik f958091578 st/oxr: Fix vulkan luid logging 2022-05-06 00:26:34 +01:00
Ryan Pavlik 422666efb3 cmake: Hide some warnings on external code. 2022-05-04 11:24:02 -05:00
Ryan Pavlik 3287c984aa cmake: Reorganize options, renaming some.
Rename XRT_HAVE_SLAM to XRT_FEATURE_SLAM,
moving it from xrt_config_have.h to xrt_config_build.h
accordingly.
2022-05-04 11:24:02 -05:00
Ryan Pavlik 097eeb4f29 cmake: Switch to a new way of setting options more in line with expectations.
If you explicitly request an option, and it's not available due to dependencies,
we now error out instead of silently changing the value.
2022-05-04 11:24:02 -05:00
Jakob Bornecrantz 38f68dc104 xrt: Use xrt_luid_t for deviceLUID 2022-05-04 15:11:24 +00:00
Jakob Bornecrantz b62d871498 xrt: Add xrt_luid_t 2022-05-04 15:11:24 +00:00
Jakob Bornecrantz 4ba23faa6b auxiliary: Deal with clang-format-14 fallout (NFC) 2022-05-04 15:58:01 +01:00
Jakob Bornecrantz 45ba6ff1b1 c/client: Add support for xrt_swapchain_create_properties 2022-05-04 15:51:34 +01:00
Jakob Bornecrantz a36620fad3 ipc: Use xrt_swapchain_create_properties when using XINA 2022-05-04 15:51:16 +01:00
Jakob Bornecrantz 6805b40ac2 ipc: Add support for xrt_swapchain_create_properties 2022-05-04 15:50:54 +01:00
Jakob Bornecrantz f78f334473 c/multi: Add support for xrt_swapchain_create_properties 2022-05-04 15:50:20 +01:00
Jakob Bornecrantz dd1da49aa5 c/base: Add support for xrt_swapchain_create_properties 2022-05-04 15:50:00 +01:00
Jakob Bornecrantz 07fe47d053 xrt: Add xrt_swapchain_create_properties and related function 2022-05-04 15:48:57 +01:00
Moses Turner a5024060eb d/dai: Autodetect OAK-D vs OAK-D Lite
Co-authored-by: Jakob Bornecrantz <jakob@collabora.com>
2022-05-04 13:43:43 +00:00
Ryan Pavlik 3f9e5c2a30 st/steamvr_drv: Guard GNU pragmas 2022-05-03 22:45:05 +01:00
Ryan Pavlik fedb4fd413 t/steamvr_drv: Adjust ifdef 2022-05-03 22:44:46 +01:00
Ryan Pavlik fc9fba9ab2 st/oxr: Adjust ifdef 2022-05-03 22:44:46 +01:00
Ryan Pavlik f9b4af04e4 a/tracking: Fix conversion warnings 2022-05-03 22:44:37 +01:00
Ryan Pavlik d8970f25f9 a/math: Fix conversion warnings 2022-05-03 22:44:28 +01:00
Ryan Pavlik 32a893fd2b st/oxr: Grab LUID from Vulkan if possible 2022-05-03 22:39:58 +01:00
Ryan Pavlik 49c45bf16a c/main: Store LUID 2022-05-03 22:34:47 +01:00
Ryan Pavlik 63fdadae3f c/util: Query GPU LUID when possible 2022-05-03 22:33:57 +01:00
Ryan Pavlik 3691d881fc xrt: Adjust includes for intrinsics on Windows/msvc 2022-05-03 22:33:57 +01:00
Ryan Pavlik 14f37dbe4c xrt: Add GPU LUID to xrt_system_compositor_info 2022-05-03 22:32:17 +01:00
Jakob Bornecrantz 96fbb1e59a c/client: Print the EGL return when failing to set context 2022-05-03 15:20:19 +00:00
Jakob Bornecrantz e791f3ea2f d/android: Fix various bugs 2022-05-03 14:22:34 +00:00
Ryan Pavlik 7a039543d1 st/prober: We want to support HID devices 2022-05-02 17:16:04 +01:00
Jakob Bornecrantz dbb0461db4 st/prober: Tidy 2022-05-02 17:16:04 +01:00
Jakob Bornecrantz d6dcba29ed st/oxr: Tidy 2022-05-02 17:16:04 +01:00
Jakob Bornecrantz 05d186083a st/gui: Fix conversion warnings 2022-05-02 17:16:04 +01:00
Jakob Bornecrantz f8bce0b213 st/oxr: Fix conversion warnings 2022-05-02 17:16:04 +01:00
Jakob Bornecrantz 243c2e5326 d/psvr: Fix conversion warnings 2022-05-02 17:16:04 +01:00
Jakob Bornecrantz 2035ac03ff st/prober: Silence warnings 2022-05-02 17:16:04 +01:00
Jakob Bornecrantz a98c589a30 c/client: Fix conversion warning 2022-05-02 17:16:04 +01:00
Jakob Bornecrantz 065c1c4ee2 c/render: Fix conversion warnings
c/render: Fix conversion warnings
2022-05-02 17:16:04 +01:00
Jakob Bornecrantz e39648bab1 c/multi: Fix conversion warnings 2022-05-02 17:16:04 +01:00
Jakob Bornecrantz 32d563d26c c/main: Fix conversion warnings
c/main: Fix conversion warnings
2022-05-02 17:16:04 +01:00
Jakob Bornecrantz d1d58c4bce u/distortion: Fix conversion warning 2022-05-02 17:16:04 +01:00
Jakob Bornecrantz d8003b4c8f u/pacing: Fix conversion warning 2022-05-02 17:16:04 +01:00
Jakob Bornecrantz fa988a7f74 u/time: Fix conversion warning 2022-05-02 17:16:04 +01:00
Jakob Bornecrantz 5981a508d2 u/sink: Fix conversion warnings 2022-05-02 17:16:04 +01:00
Jakob Bornecrantz 1afc18108e m/3dof: Fix conversion warning 2022-05-02 17:16:04 +01:00
Jakob Bornecrantz 0a0d4a49d5 m/space: Fix function call warning 2022-05-02 17:16:04 +01:00
Jakob Bornecrantz d1512f0005 m/lowpass: Fix no define parameter warning 2022-05-02 17:16:04 +01:00
Jakob Bornecrantz 91facd10f1 xrt: Add xrt_uuid_t 2022-05-02 17:16:04 +01:00
Jakob Bornecrantz 428e46617a st/oxr: Avoid using sprintf 2022-05-02 17:16:04 +01:00
Jakob Bornecrantz 545ad5c1bf st/oxr: Avoid using strncpy 2022-05-02 17:16:04 +01:00
Jakob Bornecrantz c6208482b8 c/util: Avoid using sprintf 2022-05-02 17:16:04 +01:00
Jakob Bornecrantz 6d2011abfd u/file: Avoid using fopen 2022-05-02 17:16:04 +01:00
Jakob Bornecrantz 42ba279050 u/file: Avoid using getenv 2022-05-02 17:16:04 +01:00
Jakob Bornecrantz fbc51366e6 u/config: Avoid using strncpy 2022-05-02 17:16:04 +01:00
Jakob Bornecrantz 9ab5195337 st/oxr: Make sure defines are set for graphics integration files 2022-05-02 15:40:31 +00:00
Jakob Bornecrantz 5f421503e9 st/oxr: Set XR_USE_GRAPHICS_API_VULKAN as a compile define like the others 2022-05-02 15:40:31 +00:00
Jakob Bornecrantz d7613b9b67 st/oxr: Match comp client XLIB deps
Fixes #168
2022-05-02 15:40:31 +00:00
Jakob Bornecrantz f4c26bbabb st/oxr: oxr_session_gfx_gl.c to oxr_session_gfx_gl_xlib.c 2022-05-02 15:40:31 +00:00
Antonio Ospite bd06961188 a/util: Silence percetto warnings also when building with g++
Percetto is using designated struct initializers, but those are not
supported in standard C++ before C++20, resulting in some compilation
warnings.

The previous fix for that was using a diagnostic valid for clang but not
for g++ resulting in another warning when building with g++:

-----------------------------------------------------------------------
In file included from ../monado/src/xrt/auxiliary/math/m_relation_history.cpp:19:
../monado/src/xrt/auxiliary/util/u_trace_marker.h:21:32: warning: unknown option after ‘#pragma GCC diagnostic’ kind [-Wpragmas]
   21 | #pragma GCC diagnostic ignored "-Wc99-designator"
      |                                ^~~~~~~~~~~~~~~~~~
-----------------------------------------------------------------------

For GCC the diagnostics to disable is actually "-Wpedantic", as shown
below:

-----------------------------------------------------------------------
In file included from ../monado/src/xrt/auxiliary/util/u_trace_marker.h:25,
                 from ../monado/src/xrt/auxiliary/math/m_relation_history.cpp:19:
../external/percetto/src/percetto.h: In function ‘void percetto_event_with_args(percetto_category*, uint32_t, const char*, int32_t, const percetto_track*, int64_t, uint64_t)’:
../external/percetto/src/percetto.h:424:5: warning: C++ designated initializers only available with ‘-std=c++2a’ or ‘-std=gnu++2a’ [-Wpedantic]
  424 |     .track = track,
      |     ^
-----------------------------------------------------------------------

And for clang "-Wc++20-designator" should be slightly more accurate:

-----------------------------------------------------------------------
In file included from ../monado/src/xrt/auxiliary/util/u_trace_marker.h:29:
../external/percetto/src/percetto.h:424:5: warning: designated initializers are a C++20 extension [-Wc++20-designator]
    .track = track,
    ^
-----------------------------------------------------------------------

Fix all the warnings by ignoring the right diagnostics depending on the
compiler, taking care of differentiating clang++ from g++ as they both
define __GNUC__.
2022-05-02 17:31:11 +02:00
Jakob Bornecrantz 175ff58f10 build: Remove meson files 2022-04-28 21:36:25 +00:00
Jakob Bornecrantz bc89a23280 c/client: Use helper function to see if timeline semaphore is avaiable 2022-04-28 10:55:55 +01:00
Jakob Bornecrantz 0dbe9857c3 a/vk: Add function to check timeline semaphore import/export cap 2022-04-28 10:55:55 +01:00
Jakob Bornecrantz 3492c9e948 st/oxr: Tidy and print out suggested uuid in physical device selection code 2022-04-28 10:29:56 +01:00
Jakob Bornecrantz 8dfae6d1d1 st/oxr: Log information when creating VkInstance & VkDevice 2022-04-28 10:27:11 +01:00
Ryan Pavlik a10206dce6 a/vk: Fix MSVC build.
Apparently static initializers referring to other statics are not enjoyed
by Microsoft's compiler
2022-04-27 15:23:24 +00:00
Ryan Pavlik 7db9131aab a/util: Add pop_back to HistoryBuffer 2022-04-27 09:51:12 -05:00
nima01 232b3bade5 aux/math: More double-precision matrix and vector support 2022-04-25 19:14:46 +00:00
Jakob Bornecrantz 27e4577acb a/vk: Tidy calls to vk_get_memory_type 2022-04-24 22:47:51 +01:00
Jakob Bornecrantz 045fc9c33f a/vk: Add caller_name argument to vk_alloc_and_bind_image_memory for better debugging 2022-04-24 22:47:51 +01:00
Jakob Bornecrantz 917265d1b2 a/vk: Add vk_convert_timestamps_to_host_ns function 2022-04-24 22:47:51 +01:00
Jakob Bornecrantz f217046810 a/vk: Get the timestamp valid bits 2022-04-24 11:10:03 +01:00
Jakob Bornecrantz 599527fe01 a/vk: Fill in timestamp feature information 2022-04-24 11:10:03 +01:00
Jakob Bornecrantz 3aa4fdb096 a/vk: Add function to print device features 2022-04-24 11:10:03 +01:00
Jakob Bornecrantz f65a8b1eda a/vk: Add VK_EXT_calibrated_timestamps 2022-04-24 00:29:41 +01:00
Jakob Bornecrantz 9e58ab69e0 a/vk: Add VkQueryPool functions 2022-04-24 00:29:41 +01:00
Ryan Pavlik 2f78acd108 cmake: Copy some deps over when installing on Windows. 2022-04-21 17:17:16 -05:00
Ryan Pavlik 0926ce1dab cmake: Clean up how we install the runtime 2022-04-21 17:17:16 -05:00
Ryan Pavlik 86ee913086 cmake: Use new module for generating manifests
Remove the old parts.
2022-04-21 17:17:16 -05:00
Ryan Pavlik e75fae4d80 cmake: Fix where we install the runtime on Windows 2022-04-21 16:29:17 -05:00
Ryan Pavlik ad6b70267e cmake: Apparently Windows needs backslashes in the manifest files. 2022-04-21 16:23:49 -05:00
Ryan Pavlik aa4f43b049 cmake: Improve manifest installation, allowing relative paths to be generated. 2022-04-20 11:47:04 -05:00
Jakob Bornecrantz 3d35890206 u/pacing: Trace a little bit more to show when the app is late 2022-04-18 23:26:52 +00:00
Jakob Bornecrantz 4f5bcc5c22 u/pacing: Use the correct term for when the GPU work is done 2022-04-18 23:26:52 +00:00
Jakob Bornecrantz 93091157b8 u/pacing: Correct account for the apps full time when predicting 2022-04-18 23:26:52 +00:00
Jakob Bornecrantz c5fe86ccf9 u/trace_marker: Add env varible to enable/disable tracing
Should a application load and unload the OpenXR runtime driver multiple times
the Perfetto code becomes unstable and eventually crashes. This unfortunately
happens with the CTS, to avoid having to recompile Monado and a env variable
to control if tracing should be used.
2022-04-18 22:41:17 +00:00
Jakob Bornecrantz 7b82b63896 c/render: Remove unused timewarp shader 2022-04-18 18:48:54 +01:00
Jakob Bornecrantz 95d5343c9a c/render: Make distortion shader optionally do timewarp 2022-04-18 18:48:54 +01:00
Jakob Bornecrantz 0be36ccc9d c/render: Use shader specialisation to set distortion_texel_count 2022-04-18 18:48:54 +01:00
Jakob Bornecrantz 7ba7f43e83 a/vk: Add specialization_info argument to vk_create_compute_pipeline 2022-04-18 18:48:54 +01:00
Ryan Pavlik 068ec80f9d external: Regenerate glad2 2022-04-18 12:24:18 -05:00
Ryan Pavlik 0f92ba2137 external: Add GL_EXT_semaphore to glad 2022-04-18 12:18:51 -05:00
Ryan Pavlik e9f0ec4313 external: Have GLAD2 also generate wgl headers 2022-04-18 12:18:43 -05:00
Ryan Pavlik aad3b51be4 external: Make the script to generate GLAD2 a standalone script
Extension list not changed, just sorted.
2022-04-18 12:18:29 -05:00
Ryan Pavlik 2d916c11c5 xrt: Fix OpenXR platform include on Windows 2022-04-18 12:12:43 -05:00
Jakob Bornecrantz d24375f8ab st/oxr: Tidy order of extensions (NFC) 2022-04-18 17:39:28 +01:00
Ryan Pavlik 02435cc033 xrt: clarify comment 2022-04-18 10:54:22 -05:00
Ryan Pavlik 3ed593df4b st/oxr: Fix typo in comment 2022-04-18 10:53:09 -05:00
Ryan Pavlik 5dcb5c360c comp: Fix warnings on MSVC 2022-04-18 10:53:02 -05:00
Ryan Pavlik 3631289e4f xrt: Rename interface: reserved word in msvc. 2022-04-18 10:52:57 -05:00
Ryan Pavlik 11e0d7ed76 comp: Fix comment typo 2022-04-18 10:52:45 -05:00
Ryan Pavlik 1331e93bdc xrt: Fix typo 2022-04-18 10:52:42 -05:00
Jakob Bornecrantz 8ed5a082be c/render: Add missing comments to timewarp shader 2022-04-18 13:03:32 +01:00
Jakob Bornecrantz 1999891a19 c/render: Use a Vulkan projection matrix with Y down in projection space 2022-04-18 13:03:32 +01:00
Jakob Bornecrantz e561bec87d c/render: Use specialization constant for distortion size
This would allow Vulkan shader specialization to be used to change
the size and runtime instead of having to recompile.
2022-04-18 13:03:32 +01:00
Jakob Bornecrantz 87ea035416 c/render: Document compute distortion shader sampling code 2022-04-18 13:03:32 +01:00
Jakob Bornecrantz f4d3c8a93f c/render: Correctly calculate uv to tan angle offset values 2022-04-18 13:03:32 +01:00
Jakob Bornecrantz f20031ec99 c/render: Correctly convert shader index to target pixel uv 2022-04-18 13:03:32 +01:00
Jakob Bornecrantz ca33ac434c c/render: Correctly scale uv for compute distortion 2022-04-17 15:26:51 +00:00
Jakob Bornecrantz 3b6b45b762 d/wmr: Prettier xfer status printing 2022-04-17 16:06:11 +01:00