Commit graph

3441 commits

Author SHA1 Message Date
Moses Turner 727c087366 aux/vk: Add helper for adding image memory barriers 2022-02-18 20:06:20 -06:00
Moses Turner 5a2088ee3e aux/vk: Add vkCmdBlitImage to vk_helpers 2022-02-18 20:06:20 -06:00
Moses Turner 3a7569a7b0 u/trace_marker: Add COMP_TRACE_IDENT 2022-02-18 20:06:20 -06:00
Moses Turner 00984aa021 aux/vk: Add advanced create image function 2022-02-18 20:06:20 -06:00
Moses Turner d8c33cd22d t/oxr: Come on, we can be more sparkly than that 2022-02-18 20:06:20 -06:00
Ryan Pavlik 4ecbcc2d27 d/wmr: Fix doxygen warning 2022-02-19 01:15:36 +00:00
Ryan Pavlik 80ab7243ca st/oxr: Additional doxygen fix 2022-02-19 01:15:35 +00:00
Ryan Pavlik de6e237a9f xrt: Additional doxygen fix. 2022-02-19 01:15:33 +00:00
Christoph Haag 5b1d15f143 d/survive: Change license to BSL, as originally intended 2022-02-19 00:55:54 +00:00
Christoph Haag b2e7fc0f11 d/survive: Add pragma once and c++ compatibility 2022-02-19 00:55:54 +00:00
Christoph Haag bab6858eb8 d/multi: Change license to BSL, as originally intended 2022-02-19 00:55:54 +00:00
Christoph Haag 43f0bb4343 xrt: Fix tracking override docs 2022-02-19 00:43:30 +00:00
Jakob Bornecrantz ba0f7cba8b aux/vk: More comments 2022-02-19 00:34:01 +00:00
Jakob Bornecrantz 5222dfd728 aux/vk: Refactor and document various compositor swapchain image flags
This also fixes two errors:
* VK_IMAGE_USAGE_SAMPLED_BIT was not always added to depth formats.
* VK_IMAGE_ASPECT_DEPTH_BIT and VK_IMAGE_ASPECT_STENCIL_BIT was added to image
  views for sampling, where the spec only allows one of them.
2022-02-18 21:32:05 +00:00
Jakob Bornecrantz 05771e7b9e aux/vk: Rename compositor swapchain image helper functions (NFC) 2022-02-18 21:32:05 +00:00
Jakob Bornecrantz ad5a057737 aux/vk: Refactor out swapchain functions to own file (NFC) 2022-02-18 21:32:05 +00:00
Jakob Bornecrantz 4539b74e56 aux/vk: Re-org one function (NFC) 2022-02-18 21:32:05 +00:00
Ryan Pavlik 9a440d9bce st/oxr: Fix doxygen warning 2022-02-18 21:22:32 +00:00
Ryan Pavlik 1eb6aecdc0 xrt: Improve docs and fix doxygen warnings 2022-02-18 21:22:32 +00:00
Ryan Pavlik 010599baa6 comp/main: Fix debug typo 2022-02-18 21:22:32 +00:00
Jakob Bornecrantz 20c7e30304 aux/vk: Remove unnecessary breaks 2022-02-18 18:29:28 +00:00
Jakob Bornecrantz 0126819f21 aux/vk: Use aspect mask that covers both depth and stencil for mixed formats 2022-02-18 18:29:28 +00:00
Christoph Haag c162ff655b st/oxr: add renderdoc API to xrBeginFrame/xrEndFrame
Usually renderdoc captures frames by hooking the present functions to
recognize when an application is finished rendering a frame.

OpenXR applications might not present to a window. Therefore use the
renderdoc API to capture application frames between xrBeginFrame and
and xrEndFrame.

This allows renderdoc to capture application frames without the need
to modify the application.
2022-02-18 13:44:15 +01:00
Christoph Haag 93bf83e8f6 xrt: Add clang format, disabling formatting in external 2022-02-18 13:44:15 +01:00
Jakob Bornecrantz 9a884931bb c/client: Use correct VkImageAspectFlags in barriers 2022-02-17 19:29:57 +00:00
Christoph Haag fc77db6eca comp/main: Fix debug print of available direct mode modes
fixes 3dfec5f1ab
2022-02-17 17:22:18 +01:00
Nova f2ec7a7dd5 d/survive: Add SURVIVE_DISABLE_HAND_EMULATION env variable 2022-02-17 13:20:59 +00:00
Jakob Bornecrantz 7f33a55c77 c/client: Wait on Vulkan clients to complete rendering 2022-02-17 00:39:53 +00:00
Christoph Haag 9cd3b47f94 st/oxr: Rework composition of head relation for xrLocateViews 2022-02-16 23:15:28 +00:00
Jakob Bornecrantz 9b656cde77 xrt: Remove xrt_device::get_view_pose
Co-authored-by: Christoph Haag <christoph.haag@collabora.com>
2022-02-16 23:15:24 +00:00
Christoph Haag b81ab3f09a st/steamvr_drv: Use xrt_device_get_view_poses 2022-02-16 23:15:21 +00:00
Jakob Bornecrantz 49f95164a7 st/oxr: Use xrt_device_get_view_poses
Co-authored-by: Christoph Haag <christoph.haag@collabora.com>
2022-02-16 23:15:16 +00:00
Jakob Bornecrantz 3eb921b899 c/main: Use xrt_device_get_view_poses 2022-02-16 23:15:14 +00:00
Jakob Bornecrantz 0511b319ba drivers: Implement xrt_device::get_view_poses
Co-authored-by: Christoph Haag <christoph.haag@collabora.com>
2022-02-16 23:15:08 +00:00
Jakob Bornecrantz 223aa515fd u/device: Add u_device_get_view_poses helper 2022-02-16 23:15:07 +00:00
Jakob Bornecrantz be4f4969c0 ipc: Add support for xrt_device::get_view_poses 2022-02-16 23:15:06 +00:00
Jakob Bornecrantz 780f1763e3 xrt: Add xrt_device::get_view_poses function 2022-02-16 23:15:02 +00:00
Jakob Bornecrantz b322ff689b d/wmr: Add trace markers to some common functions 2022-02-16 22:25:55 +00:00
Jakob Bornecrantz 4aa2ae985c d/wmr: Refactor hololens code a bit 2022-02-16 22:25:55 +00:00
Jakob Bornecrantz 8f5a7b88c7 d/wmr: Tidy todos 2022-02-16 22:25:55 +00:00
Jakob Bornecrantz 47ae7c19c3 u/trace_marker: Add driver category 2022-02-16 22:25:55 +00:00
Jakob Bornecrantz a998987efd c/main: Refactor fast path detection 2022-02-16 20:25:41 +00:00
Jakob Bornecrantz 91a2a5d29d c/client: Set correct optimal layout for client swapchains 2022-02-16 18:20:44 +00:00
Jakob Bornecrantz 7791a04069 d/rs: Add math include to fix build and org includes
Fixes build on Ubuntu 21.10
2022-02-14 14:34:06 +00:00
Mateo de Mayo 83fceec521 t/slam: Add filtering methods to the tracker
Adds three toggleable filters:
- Moving average
- Exponential smoothing
- One euro filter
2022-02-14 10:22:05 -03:00
Mateo de Mayo b90d60a9ce t/slam: Add prediction types that integrate gyro and accel samples 2022-02-14 10:22:05 -03:00
Mateo de Mayo 3cba6dc700 d/rs: Add exposure controls to the debug UI 2022-02-14 10:22:05 -03:00
Mateo de Mayo 4d491c8c8e misc: Fix bad matrix usage on calibration save and fields doc 2022-02-14 10:22:05 -03:00
Mateo de Mayo 8820a3e99c a/math: Add m_filter_euro_quat 2022-02-14 10:22:05 -03:00
Mateo de Mayo 06597a0655 a/math: Add math_quat_{len, unrotate} 2022-02-14 10:22:05 -03:00
Mateo de Mayo cf5574a4e9 m/space: Add m_space_relation_interpolate 2022-02-14 10:22:05 -03:00
Christoph Haag dd81085a04 ipc/server: print monado version in info log on startup 2022-02-14 00:26:09 +01:00
nima01 41edf12a0d d/wmr: Debug GUI support for enabling/disabling HMD screen and displaying IPD and proximity values 2022-02-12 03:45:16 +00:00
Moses Turner e553d1993b u/sink: refactor u_sink_combiner
So you can use the enforcing-genlock bit elsewhere
2022-02-10 10:55:06 -06:00
Moses Turner 7ee8a7dba0 d/dai: add stereo-RGB pipeline behind ifdef, waiting for Luxonis to upstream multicam support 2022-02-10 10:55:06 -06:00
Ryan Pavlik c30acbf9f8 d/ht: Forward declarations and IWYU 2022-02-08 17:27:42 -06:00
Ryan Pavlik 5b8c869b56 d/ht: Fix header and usages of helpers 2022-02-08 17:21:46 -06:00
Ryan Pavlik acc9683e0f a/util: Fix copy/move assign of history buf 2022-02-08 17:08:00 -06:00
Ryan Pavlik 8c7af28904 d/ht: Fix build issues against updated history structure. 2022-02-08 16:58:24 -06:00
Ryan Pavlik a904914e6e a/util: Wrap "just enough" of the ring buffer stuff for generic use from C. 2022-02-08 13:18:15 -06:00
Ryan Pavlik 3b0252bda8 a/util: Don't make the RingBufferHelper compile-depend on max size. 2022-02-08 13:18:05 -06:00
Ryan Pavlik c079eabfdf a/util: iterator cleanups to reduce diffs, using a self typedef. 2022-02-08 17:00:11 +00:00
Ryan Pavlik 6908486022 a/util: Add age clamping to history buffer. 2022-02-08 17:00:11 +00:00
Ryan Pavlik 603117a1d1 a/util: Split history buf file up, factor out more generic iterator base 2022-02-08 17:00:11 +00:00
Ryan Pavlik 65ef8d58f1 d/ht: Cleanup usage of history buffer.
May wish to reconsider whether all these usages are required: they appear to only use the back (latest) element.
2022-02-08 17:00:11 +00:00
Ryan Pavlik 94e053d0d4 a/math: More relation history cleanup 2022-02-08 17:00:11 +00:00
Ryan Pavlik 1c183a9eeb a/math: Simplify m_history_relation using standard algorithms 2022-02-08 17:00:11 +00:00
Moses Turner 614e0e58ae d/ht: use new HistoryBuf api 2022-02-08 17:00:11 +00:00
Ryan Pavlik 90c74578d1 a/util: Refactor HistoryBuffer to be more like a standard container. 2022-02-08 17:00:11 +00:00
Ryan Pavlik d05df584b2 d/ht: Some cleanups 2022-02-08 17:00:11 +00:00
Ryan Pavlik 8030468f95 os: Add a c++ wrapper for our mutex types 2022-02-08 17:00:11 +00:00
Ryan Pavlik 73220b268e comp/multi: Zero the predicted GPU time that we don't compute 2022-02-08 10:51:40 -06:00
Ryan Pavlik 9ad96455a1 xrt: Small doc/interface cleanups. 2022-02-08 10:51:40 -06:00
Ryan Pavlik 9b6d117970 a/util: Some reorg and renaming in upa to be closer to upc 2022-02-08 10:51:40 -06:00
Ryan Pavlik 78e9acc6c4 a/util: Remove unused member in upc 2022-02-08 10:51:39 -06:00
Ryan Pavlik 0f8565ec71 a/util: Some further internal renames for pacing 2022-02-08 10:51:39 -06:00
Ryan Pavlik 6345962d66 a/util: Rename app_time_* in u_pc to comp_time_* 2022-02-08 10:51:39 -06:00
Ryan Pavlik d176b18598 a/util: Allow upc present offset to be variable. 2022-02-08 10:51:39 -06:00
Ryan Pavlik 2238aff403 a/util: Catch frame_id mismatch in u_pacing_compositor 2022-02-08 10:51:39 -06:00
Ryan Pavlik a2e1eb7e75 a/util: Have all timestamps be injected into pacing.
No more calling os_monotonic_get_ns() inside the pacing helpers.
Much better testability.
2022-02-08 10:51:39 -06:00
Ryan Pavlik 40caa24d4b c/main: Rename to calc_frame_pacing 2022-02-07 13:11:00 -06:00
Ryan Pavlik d969bc334f a/util: More pacing documentation 2022-02-07 13:11:00 -06:00
nima01 45466e419b d/wmr: Reverb G1 proximity sensor support 2022-02-02 02:27:55 +01:00
Jakob Bornecrantz 309c45f4c4 aux/bindings: Tidy 2022-01-31 22:43:09 +00:00
Jakob Bornecrantz 037b161fb4 aux/binding: Rename function 2022-01-31 22:43:09 +00:00
Jakob Bornecrantz f0a5f1977c aux/bindings: Add OpenXR Identifier 2022-01-31 22:43:09 +00:00
Simon Zeni 003acb4d5f meson: configure systemd service files only if systemd is found 2022-01-31 16:35:06 +00:00
Christoph Haag c9b1fcf572 comp/main: Re add accidentally deleted WINDOW_XCB case
Fixes 856d2d39c8
2022-01-25 22:22:02 +01:00
Christoph Haag 0640728969 t/steamvr: Attempt to fix spurious CI failure
fix suggested by thaytan.
2022-01-25 19:24:49 +00:00
Ryan Pavlik 856d2d39c8 comp/main: Simplify use of u_string_list 2022-01-24 16:34:45 -06:00
Ryan Pavlik 9b9e23be62 a/util: Add a new constructor and a new method to u_string_list 2022-01-24 16:34:45 -06:00
Ryan Pavlik d057f00b54 doc: Fix broken link 2022-01-24 14:08:06 -06:00
Christoph Haag 2ad634bd1e d/wmr: print json config on debug log level 2022-01-21 20:32:35 +00:00
Christoph Haag 6e339014a5 d/wmr: Add Medion Erazer X1000 2022-01-21 20:32:35 +00:00
Christoph Haag 45adabe135 d/wmr: Clarify comment in headset_map assert 2022-01-21 20:32:35 +00:00
Christoph Haag 88d55c6e22 d/wmr: Sort HP G2 controller PID to the other HP devices 2022-01-21 20:32:35 +00:00
Christoph Haag 96c09e06e7 d/wmr: consolidate interface getters
Moving them into one function makes it simpler to add more HMDs.
2022-01-21 20:32:35 +00:00
Ryan Pavlik c9889f776f xrt: Rename xrt_space_graph to xrt_relation_chain.
Rename all functions and instances accordingly as well,
and add documentation for all methods.
2022-01-21 19:54:30 +00:00
Colin Kinloch 0a783ca208 systemd: Use pkgconfig variable systemduserunitdir as unit install directory 2022-01-18 21:11:44 +00:00
Moses Turner 1b3dadbec5 gui/remote: add pose for XR_EXT_hand_tracking test 2022-01-18 15:02:40 -06:00