Ryan Pavlik
6c2b5d6614
comp/main: Clean up lists of extensions in main compositor
2020-11-23 14:27:21 -06:00
Ryan Pavlik
af8459e407
inc/xrt: Comments
2020-11-23 14:18:20 -06:00
Ryan Pavlik
69a33c642d
comp/client: Clean up Vulkan extension list, and add Windows extensions.
2020-11-23 14:18:20 -06:00
Christoph Haag
d3ccbce76c
build: meson: Add remote driver build
2020-11-20 16:14:02 +01:00
Jakob Bornecrantz
9bf58ec275
c/main: Make COMP_ERROR respect log level
2020-11-20 03:20:33 +00:00
Jakob Bornecrantz
6902f6d7a3
c/render: Change some COMP_ERROR to VK_ERROR
2020-11-20 03:20:33 +00:00
Jakob Bornecrantz
363703602e
c/main: Tidy comp_target_swapchain
2020-11-20 03:20:33 +00:00
Jakob Bornecrantz
ea723240e3
c/main: Tidy comp_android_window
2020-11-20 03:20:33 +00:00
Jakob Bornecrantz
f4c1ebe90c
c/main: Remove vk field from comp_target_swapchain
2020-11-20 03:20:33 +00:00
Jakob Bornecrantz
d60ae941f1
c/main: Remove comp_window struct
2020-11-20 03:20:33 +00:00
Jakob Bornecrantz
9302bfa028
c/main: Move c field from comp_window to comp_target
2020-11-20 03:20:33 +00:00
Jakob Bornecrantz
e8360c013d
c/main: Refactor vk_swapchain into comp_target_swapchain
2020-11-20 03:20:33 +00:00
Jakob Bornecrantz
6260248d20
c/main: Introduce comp_target struct
2020-11-20 03:20:33 +00:00
Jakob Bornecrantz
78f7ad7301
c/main: Tidy vk_swapchain a bit
2020-11-19 01:13:23 +00:00
Jakob Bornecrantz
ef6c8430d2
m/space: Make sure to not drop positions
2020-11-18 18:05:07 +00:00
Jakob Bornecrantz
d1aa04e402
st/gui: Add remote hand tracking controls
2020-11-18 17:37:39 +00:00
Jakob Bornecrantz
5ce0a0b3ab
d/remote: Add hand tracking support
2020-11-18 17:37:39 +00:00
Jakob Bornecrantz
e0a7df0f1d
st/oxr: Make sure to restore old EGL display/context/drawables when creating a EGL compositor
2020-11-15 22:47:42 +00:00
Christoph Haag
a2b67ab3fe
d/ohmd: Rotate rift s display right, not left
2020-11-12 16:04:00 +01:00
Christoph Haag
2efba6451e
steamvr: support rotated displays and direct mode
...
Monado now calculates OpenHMD viewport dimensions and offsets correctly, we can pass those through.
The rotation of the rendered texture is performed with the distortion function.
v2: Use rotation matrix multiplication for distortion rotation
2020-11-12 16:04:00 +01:00
Christoph Haag
7ef8d1231d
d/ohmd: Update display rotation code
2020-11-12 16:04:00 +01:00
Christoph Haag
9e788df463
xrt: Remove lens center from xrt_view
...
It's only used internally in drivers now.
2020-11-12 16:04:00 +01:00
Christoph Haag
0af755814c
xrt: Improve comment documenting xrt_view::viewport
2020-11-12 16:03:27 +01:00
Christoph Haag
c7ebf91821
xrt: Improve comment documenting xrt_view::display
2020-11-12 16:03:27 +01:00
Christoph Haag
1ad25d1050
xrt: Document that xrt_hmd_parts::screens dimensions are before rotation
2020-11-12 16:03:27 +01:00
Lubosz Sarnecki
8d628c43a9
ipc/server: Port printf calls to static u_logging.
...
Make messages more consistent.
2020-11-12 15:11:40 +01:00
Lubosz Sarnecki
23aa3652a3
ipc: Port to u_logging.
2020-11-12 15:11:40 +01:00
Ryan Pavlik
3328688f73
t/service-lib: Simplify.
2020-11-10 18:44:03 +00:00
Ryan Pavlik
86a19e6697
gradle: Remove unused dependencies.
2020-11-10 18:44:03 +00:00
Ryan Pavlik
451a9c5150
android: Update to AboutLibraries 8.5.0
...
This includes my submission allowing licenses to be
included explicitly in the gradle files.
2020-11-10 18:44:03 +00:00
Ryan Pavlik
5115124bb3
aux/android: Factor out a "native counterpart" class.
2020-11-10 18:44:03 +00:00
Christoph Haag
2082eddb65
steamvr: Fix running without controllers
2020-11-10 15:43:07 +01:00
Ryan Pavlik
a792b08ed7
aux/vk: Minimal, untested implementations of these for Windows - fixes build
2020-11-10 03:09:07 +00:00
Ryan Pavlik
dde20c14d3
t/oxr_android: Fix Doxygen warning.
2020-11-10 03:09:07 +00:00
Ryan Pavlik
9da004abb4
st/steamvr: Fix build on Windows.
2020-11-10 03:09:07 +00:00
Ryan Pavlik
ec1375342f
st/oxr: Fix outdated reference in docs.
2020-11-10 03:09:07 +00:00
Ryan Pavlik
cc15bfa7ed
a/util: FIx ambiguity of directories for docs.
2020-11-10 03:09:07 +00:00
Ryan Pavlik
4c4a204f22
cmake: Fix warning in SteamVR driver target
2020-11-10 03:09:07 +00:00
Ryan Pavlik
8f10d9c2b8
u_hand_tracking: Fix usage of M_PI
2020-11-10 03:09:07 +00:00
Ryan Pavlik
a345b07308
d/psvr: Fix typo in config/debug macro
2020-11-10 03:09:07 +00:00
Ryan Pavlik
d2955a3967
aux/util: Adjust conditional log macros to handle msvc correctly
2020-11-10 03:09:07 +00:00
Jakob Bornecrantz
135c93288b
d/psvr: Rename some hid variables for better code
2020-11-09 23:42:15 +00:00
Jakob Bornecrantz
aa7f922e35
os/time: Add a Linux specific way to get the realtime clock (for RealSense)
2020-11-09 23:42:13 +00:00
Jakob Bornecrantz
4bbe25148b
os/time: Make timespec argument const
2020-11-09 23:42:11 +00:00
Ryan Pavlik
83b91ea4a9
d/ns: Some clang-tidy cleanups
2020-11-09 16:18:00 -06:00
Ryan Pavlik
97d711a9ef
d/hdk: Appease clang-tidy a little more.
2020-11-09 16:18:00 -06:00
Ryan Pavlik
7cebdb4763
aux/os: More defines to calm clang-tidy.
2020-11-09 16:18:00 -06:00
Ryan Pavlik
b855fd1ae2
a/util: Appease clang-tidy with a define for ns per second
2020-11-09 16:18:00 -06:00
Ryan Pavlik
ab82c5b8e2
u_debug: Remove duplicate declaration
2020-11-09 16:18:00 -06:00
Ryan Pavlik
4c0d71aa30
d/ns: const correctness cleanup for math.
2020-11-09 16:17:57 -06:00
Ryan Pavlik
d4011ed78a
d/ns: Fix memory leak in math
2020-11-09 16:06:14 -06:00
Christoph Haag
cb62514fd0
steamvr: Implement basic SteamVR driver
...
v3:
targets: Add Monado-SteamVR driver target
st/ovrd: Add OpenVR driver header
build: Factor out sdl hack into lib_sdl2_hack and update steamvr build
build: Revert lib_sdl2_refactor
steamvr: Emulate Index Controller by default
steamvr: Use oxr_handle_destroy instead of exposing oxr_instance_destroy
steamvr: don't use oxr internals
steamvr: communicate 3dof tracking to steamvr
steamvr: use util functions for device assignment and tracking origin setup
steamvr: Install plugin to <prefix>/share/steamvr-monado
steamvr: Use thread for updating poses every 1ms
Makes a big difference for the Index @144Hz on the vive driver.
Still somewhat choppy on survive driver - prediction should solve it.
Main-author: Christoph Haag <christoph.haag@collabora.com>
Co-author: Jakob Bornecrantz <jakob@collabora.com>
2020-11-09 19:21:27 +00:00
Christoph Haag
9d894ab5ff
xrt: Move tracking origin setup code to u_device
2020-11-09 00:32:33 +01:00
Christoph Haag
c60b7412e5
xrt: Move device assignment code to u_device
2020-11-09 00:32:33 +01:00
Benjamin Saunders
15a89005ca
Fix trailing space in xrGetVulkanDeviceExtensionsKHR
...
Also tweak the instance extensions definition for consistency.
2020-11-07 12:50:25 -08:00
Christoph Haag
29820345c7
d/survive: Fix bindings declaration after rebase of MR 587
2020-11-06 16:36:09 +01:00
Christoph Haag
5478bad3d0
st/oxr: Add OXR_FRAME_TIMING_SPEW var to print basic frame timing information
2020-11-06 00:51:24 +01:00
Christoph Haag
2a00c9f09e
comp: Add basic frame timing information to trace log
2020-11-06 00:50:24 +01:00
Christoph Haag
803e9531ec
aux: Use time since time_state creation for time_state timestamps
...
Easy to read timestamps and somewhat meaningful.
2020-11-05 23:11:03 +00:00
Christoph Haag
2e2a62ce1a
st/oxr: submit layers with os monotonic timestamp, not XrTime
...
The compositor does not know about XrTime, only os monotonic timestamps.
2020-11-05 23:11:03 +00:00
Ryan Pavlik
3c13dbce43
t/oxr_android: Work on aboutLibraries usage.
2020-11-05 17:04:58 -06:00
Ryan Pavlik
25967f906b
t/oxr_android: Generate license resource at build time.
2020-11-05 17:04:53 -06:00
Ryan Pavlik
e1e7b92372
ipc/android: Add additional service options
2020-11-05 17:02:21 -06:00
Ryan Pavlik
cb09e68f0c
gradle: Allow python location to be explicitly specified in local.properties
2020-11-05 16:09:27 -06:00
Ryan Pavlik
ed519b1601
t/oxr_android: Rename activity and add version field
2020-11-05 16:09:26 -06:00
Jakob Bornecrantz
1c98297aa0
st/oxr: Use new xdev providing binding
2020-11-05 14:44:04 +00:00
Jakob Bornecrantz
b5e847c814
ipc: Add support for device provided bindings
2020-11-05 14:44:04 +00:00
Christoph Haag
ffa7cc84c8
d/vive: Add device bindings
2020-11-05 14:44:04 +00:00
Christoph Haag
4b261219a2
d/survive: Add device bindings
2020-11-05 14:41:55 +00:00
Jakob Bornecrantz
12df35232a
d/psmv: Add device bindings
2020-11-05 14:41:55 +00:00
Jakob Bornecrantz
24a3886e85
d/daydream: Add device bindings
2020-11-05 14:41:55 +00:00
Jakob Bornecrantz
5997708634
d/arduino: Add device bindings
2020-11-05 14:41:55 +00:00
Jakob Bornecrantz
7c807a8605
xrt: Add device driver provided bindings
2020-11-05 14:41:55 +00:00
Christoph Haag
d0b126c1ee
oxr: Add one missing mutex to active_wait_frames
2020-11-04 13:33:27 +00:00
Jakob Bornecrantz
2a9a0100bc
d/psvr: Tidy code
2020-11-04 13:26:47 +00:00
Christoph Haag
7eaa7abb89
oxr: Implement additional xrWaitFrame/xrBeginFrame call order checks
...
Relevant CTS tests: https://github.com/KhronosGroup/OpenXR-CTS/pull/7
2020-11-04 00:37:21 +01:00
Christoph Haag
965fa60bff
xrt: Move synchronized state test into oxr session
...
The compositor now moves immediately to visible/focused when polling.
The state tracker will generate relevant openxr state changes once the session is synchronized.
Properly working alternative to e03ee48dce
(reverted in e7643de8db
)
2020-11-04 00:37:10 +01:00
Christoph Haag
4709744d0a
ipc: log ipc calls and dispatch with IPC_PRINT_SPEW
2020-11-03 22:32:58 +01:00
Christoph Haag
233f3cb234
ipc: hook up IPC_PRINT_SPEW and IPC_PRINT_DEBUG variables
...
for both server and client
2020-11-03 22:32:58 +01:00
Jakob Bornecrantz
e7643de8db
c/main: Revert "Transition to visible/focused after xrEndFrame, not xrWaitFrame"
...
This reverts commit e03ee48dce
.
2020-11-03 21:04:05 +00:00
Ryan Pavlik
5f70826ba5
xrt: Add misc missing copyright/license notices
2020-11-02 17:04:51 +00:00
Ryan Pavlik
0684daae4f
clang-format configs: Fix SPDX tags
2020-11-02 17:04:51 +00:00
Christoph Haag
e03ee48dce
comp: Transition to visible/focused after xrEndFrame, not xrWaitFrame
...
The application synchronizes its frame loop by "by calling xrWaitFrame,
xrBeginFrame and xrEndFrame in a loop."
Applications can discard frames by not calling xrEndFrame. If initial
frames are discarded, we should not consider the frame loop synchronized.
Previously a sequence like
xrBeginFrame, xrWaitFrame, xrBeginFrame, xrWaitFrame, xrPollEvent, xrBeginFrame
failed because xrPollEvent the compositor emitted transitions to visible
and focused but they were not emitted in the state tracker, because the
oxr session had not internally tranisitioned to the synchronized state.
2020-10-31 20:14:49 +01:00
Ryan Pavlik
240b8f3047
t/oxr_android: Include library attribution/notices in "about" activity.
2020-10-30 18:20:36 -05:00
Ryan Pavlik
f70b1abd88
d/android: Use not-deprecated API when possible.
2020-10-30 18:20:36 -05:00
Lubosz Sarnecki
ae1d4e9541
d/android: Enable cardboard distortion.
2020-10-30 18:20:36 -05:00
Lubosz Sarnecki
f4113ef15b
d/android: Add Android sensors driver.
2020-10-30 18:20:35 -05:00
Ryan Pavlik
ad42bbff9e
t/oxr_android: Move some distribution-related strings to build system
2020-10-30 18:20:35 -05:00
Ryan Pavlik
55eab2d79b
t/oxr_android: Set package version from Git
2020-10-30 18:20:35 -05:00
Ryan Pavlik
36a9273db2
t/oxr_android: Match theme to temporary logo
2020-10-30 18:20:35 -05:00
Ryan Pavlik
f46b801ad4
t/oxr_android: Improve VR Mode status messages
2020-10-30 18:20:35 -05:00
Ryan Pavlik
36fa605ab4
t/oxr_android: Add fragment to the main activity
2020-10-30 18:20:35 -05:00
Ryan Pavlik
03a129a4ea
t/oxr_android: Add VrModeStatus fragment.
2020-10-30 18:20:35 -05:00
Ryan Pavlik
ce3750bfe1
a/android: Store a native pointer in the MonadoView.
2020-10-30 18:20:35 -05:00
Ryan Pavlik
3bc84cca9e
a/android: Migrate to using the MonadoView generated wrapper.
2020-10-30 18:20:35 -05:00
Ryan Pavlik
b6a12f8522
a/android: Add some partially-generated wrappers for our own Java code.
2020-10-30 18:20:35 -05:00
Ryan Pavlik
fc78b5de86
a/android: Use android_custom_surface constructor/destructor
2020-10-30 18:20:34 -05:00
Ryan Pavlik
66d6281a7f
a/android: Monitor whether MonadoView is still being used by native code.
2020-10-30 18:20:34 -05:00
Ryan Pavlik
6f989f5451
t/oxr_android: Clean up main activity.
2020-10-30 18:20:34 -05:00
Jakob Bornecrantz
75ff836e3b
ipc: Add ipc_android doc group
2020-10-29 17:02:06 +00:00