Jakob Bornecrantz
c42d681db0
aux/vk: Add vkCmdCopyBufferToImage and vkCmdCopyImageToBuffer
2021-06-15 19:45:14 +00:00
Jakob Bornecrantz
8899b267a6
aux/vk: Add vkCmdDispatch, vkCreateComputePipelines and vkResetDescriptorPool functions
2021-06-15 19:45:14 +00:00
Jakob Bornecrantz
4b9b1f991c
xrt: Add xrt_device_compute_distortion helper
2021-06-15 19:45:14 +00:00
Jakob Bornecrantz
b805742a53
c/main: Do not list VK_FORMAT_A2B10G10R10_UNORM_PACK32 as a supported format
2021-06-15 14:27:07 +00:00
Jakob Bornecrantz
aa3f071d2b
u/trace_marker: Refactor init to fix bug
2021-06-14 19:12:14 +01:00
Jakob Bornecrantz
c2c49cb6d3
u/trace_marker: Make sure to include headers outside of extern block
2021-06-14 19:12:12 +01:00
Moses Turner
6285223fd2
d/dai: Even more tidy
2021-06-11 18:49:50 +01:00
Jakob Bornecrantz
576593010f
d/dai: Add code so we can open mono cameras with compile time option
2021-06-11 16:48:30 +00:00
Jakob Bornecrantz
96248931cc
d/dai: Refactor a bit so we can at compile time support OAK-D
2021-06-11 16:48:30 +00:00
Moses Turner
d555b255fe
st/gui: Add support for depthAI camera in record scene
...
Co-authored-by: Jakob Bornecrantz <jakob@collabora.com>
2021-06-10 14:32:07 -05:00
Moses Turner
37cbbb6660
d/dai: Add simple DepthAI driver
...
Co-authored-by: Jakob Bornecrantz <jakob@collabora.com>
2021-06-10 14:32:07 -05:00
Moses Turner
01283257b2
xrt: clarify camera type (NFC)
2021-06-10 19:25:14 +01:00
quic_zhibinw
76cf6aeae4
st/oxr: Transform projection layer pose to global space.
2021-06-10 17:08:04 +08:00
Ryan Pavlik
2c87f57ad1
cmake: Make sure st_oxr exposes its optional vulkan/gl dependencies
...
Fixes builds of tests on Windows
2021-06-08 12:05:23 -05:00
Jakob Bornecrantz
f9b5097134
c/client: Use the EGL compositor's display in swapchain
2021-06-02 14:26:59 +00:00
Jakob Bornecrantz
b7b469089c
t/fm: Add simple FrameMat that wraps a cv::Mat
2021-05-31 13:43:19 +00:00
Christoph Haag
6ba07514ef
ipc: Add env var to ignore client/service version conflicts
2021-05-26 22:22:04 +02:00
Christoph Haag
f49d3ae404
ipc: Check that service and client are the same git revision
2021-05-26 22:21:08 +02:00
Jakob Bornecrantz
b3e9653994
t/gui: Show git hash in Window title (NFC)
2021-05-26 16:33:47 +01:00
Jakob Bornecrantz
606b23b5c4
d/rs: Tidy code (NFC)
2021-05-18 03:48:50 +01:00
Jakob Bornecrantz
855cdb4c29
aux/vk: Tidy code (NFC)
2021-05-18 03:48:50 +01:00
Moses Turner
5cb130cd08
d/rs: cleanup and initialize u_config_json with zero
2021-05-18 01:22:39 +00:00
Moses Turner
36bc45b686
util: make sure u_config_json.file_loaded is false if we didn't load the file
2021-05-18 01:22:39 +00:00
Christoph Haag
82d9ed75c2
aux/vk: Check that native handles are importable
2021-05-18 03:01:44 +02:00
zhibinw
92565b7f21
ipc/android: support create surface from runtime.
2021-05-17 16:20:29 +00:00
Jae Lee
df9ebf261f
d/illixr: Update ILLIXR driver.
2021-05-16 22:59:32 +00:00
Ryan Pavlik
bdc53b97a3
gradle: Apply suggestion from android studio
2021-05-14 14:55:08 -05:00
Ryan Pavlik
d11ef4ae1e
Revert "gradle: Only forward EIGEN3_INCLUDE_DIR definition if we actually have it set."
...
This reverts commit 0868a90a1f
.
2021-05-14 14:54:52 -05:00
Moses Turner
302e72b2fe
d/rs: remove superfluous rs_update_offset; add config options
2021-05-13 17:57:34 -05:00
Christoph Haag
f6e831d8fb
steamvr: Don't crash if we don't have bindings for device
2021-05-13 14:08:24 +02:00
Jakob Bornecrantz
13a5036b24
c/main: Make temp_vk be a pointer
2021-05-11 16:34:10 +00:00
Jakob Bornecrantz
9b6b5b7e6a
c/main: Do not copy vk_bundle
2021-05-11 16:34:10 +00:00
Jakob Bornecrantz
bd6e15c70c
c/main: Follow style of using vk variable for vk_bundle interactions
2021-05-11 16:34:10 +00:00
Jakob Bornecrantz
3af65d60d2
c/client: Follow style of using vk variable for vk_bundle interactions
2021-05-11 16:34:10 +00:00
Christoph Haag
28a29f8152
st/oxr: Fix xrGetSystemProperties crash in headless mode
...
fixes #125
v2: Handle sys->xsysc being NULL
2021-05-11 02:10:58 +02:00
Moses Turner
4ff7fb74ff
aux/util: only do tracing things if XRT_FEATURE_TRACING is enabled
2021-05-10 10:10:18 -05:00
Moses Turner
886a87e5ef
meson: add option for tracing
2021-05-10 10:10:07 -05:00
Christoph Haag
d384c90104
st/oxr: Check that VkPhysicalDevice in graphics binding matches suggested device
...
XR_KHR_vulkan_enable2:
physicalDevice VkPhysicalDevice must match the device specified by xrGetVulkanGraphicsDevice2KHR
XR_KHR_vulkan_enable:
physicalDevice VkPhysicalDevice must match the device specified by xrGetVulkanGraphicsDeviceKHR
XR_KHR_vulkan_enable:
Add a trivial check that xrGetVulkanGraphicsDeviceKHR is called before xrCreateSession.
(our cached suggested device will be XR_NULL_HANDLE if it has not been called).
The XR_KHR_vulkan_enable2 code path already contains this check.
2021-05-07 13:42:49 +02:00
Jakob Bornecrantz
35beaeead4
c/client: Add EGL comment (NFC)
2021-05-05 16:14:00 +00:00
Jakob Bornecrantz
c1ac7fc679
c/client: s/comp_egl_glue.c/comp_egl_client.c (NFC)
2021-05-05 16:14:00 +00:00
Jakob Bornecrantz
3a537b8374
c/client: Tidy EGL code (NFC)
2021-05-05 16:14:00 +00:00
Jakob Bornecrantz
12489295cb
c/client: Do not blindly try to restore no EGLDisplay contexts
2021-05-05 16:14:00 +00:00
Jakob Bornecrantz
41817b6e11
c/client: Tidy EGL code (NFC)
2021-05-05 16:14:00 +00:00
Jakob Bornecrantz
b3455555c2
u/trace_marker: Use Percetto/Perfetto for tracing
2021-05-05 17:00:35 +01:00
Jakob Bornecrantz
5c916fd77d
d/illixr: Use u_device_get_view_pose helper
2021-05-04 16:37:51 +00:00
Ryan Pavlik
b6f440fa26
aux/tracking: Move general docs to a separate header.
2021-05-04 11:21:46 -05:00
Ryan Pavlik
348b7dff3a
d/wmr: fix doxygen warning
2021-05-04 11:21:46 -05:00
Ryan Pavlik
77baa8b7e6
aux/android: Move code into official namespaces
2021-05-04 11:21:46 -05:00
Ryan Pavlik
265c49d337
a/math: Move functionality into official namespaces.
2021-05-04 11:04:32 -05:00
Ryan Pavlik
2ae3ce883d
a/util: Namespace documentation
2021-05-04 11:04:32 -05:00
Ryan Pavlik
d88aefafbc
a/tracking: Migrate C++ APIs to the official namespaces now that we have some.
2021-05-04 10:34:43 -05:00
Ryan Pavlik
4ef5b65487
d/wmr: Fix typo
2021-04-30 17:57:50 -05:00
Ryan Pavlik
a66f567392
aux/android: Remove unused include
2021-04-30 17:57:50 -05:00
Ryan Pavlik
cf2abe7d88
u/process: Fix a warning by marking a function as maybe unused.
2021-04-30 17:57:50 -05:00
Ryan Pavlik
125b0799a3
aux/android: Update wrappers
2021-04-30 17:57:50 -05:00
Ryan Pavlik
45c0ca2ef9
aux/android: Expose native pointer from MonadoView
2021-04-30 17:34:21 -05:00
Ryan Pavlik
faa753c667
android: Annotation, docs, and formatting improvements for MonadoView
2021-04-30 17:34:21 -05:00
Ryan Pavlik
e4f2ac3286
android: Revise MonadoView so it doesn't require an Activity.
2021-04-30 17:34:21 -05:00
Ryan Pavlik
417de87cb2
a/util: Add a generic callbacks collection.
...
Based on the work for the Android surface callbacks,
just finished being made generic since we'll need to reuse it.
2021-04-30 17:34:21 -05:00
Ryan Pavlik
928771fddf
t/oxr_android: Update recyclerview, and do not use wildcard version
2021-04-30 17:34:21 -05:00
Ryan Pavlik
ad31345986
d/qwerty: Fix doxygen warnings.
...
Comments were a bit too clever to work across doxygen versions.
2021-04-30 17:34:21 -05:00
Jakob Bornecrantz
1af00e7cbe
c/client: Fix swapchain leak
2021-04-30 21:56:09 +00:00
Jakob Bornecrantz
61d4d86874
ipc: Remove debug print (NFC)
2021-04-30 21:56:09 +00:00
Jakob Bornecrantz
e0bf0a423f
st/oxr: Make Vulkan optional
2021-04-30 21:53:21 +00:00
Ryan Pavlik
e82fafb186
cmake: Allow C++17 mode on all platforms, all modules.
...
Remove per-module C++17 settings.
2021-04-30 15:37:04 -05:00
Jakob Bornecrantz
daccde940e
d/wmr: Fix accel axis conversion
2021-04-28 23:26:09 +00:00
Moses Turner
f09e02c517
d/ns: fix resolution from 2880x1440 to 2880x1600
2021-04-28 18:07:07 -05:00
Ryan Pavlik
c6a3dec08e
doc: Rename sample NorthStar config for file extension reasons, and add schema
2021-04-28 21:13:34 +00:00
Ryan Pavlik
23c73e145b
a/util: Make JSON reading more robust.
...
We were missing some null checks.
2021-04-28 21:13:34 +00:00
Ryan Pavlik
cfbb81cb71
a/util: Add schema directive to json before writing.
2021-04-28 21:13:34 +00:00
Jakob Bornecrantz
76ed4d16ce
c/client: Tidy and lower the logging level
2021-04-28 12:25:53 +00:00
Jakob Bornecrantz
5befa76f42
m/3dof: Add manual way to set the gyro bias
2021-04-28 12:25:53 +00:00
Jakob Bornecrantz
8a191daa29
ipc: Add session_destroy to handle session destruction
2021-04-27 22:47:11 +00:00
Jakob Bornecrantz
8a715ec41c
xrt: Add new error return for IPC
2021-04-27 22:47:11 +00:00
Jakob Bornecrantz
0c685cf7ba
d/qwerty: Use u_device_get_view_pose helper
2021-04-27 22:18:39 +00:00
Ryan Pavlik
7d1c8480b3
xrt: Fix an incomplete compositor method doc.
2021-04-27 22:05:00 +00:00
Ryan Pavlik
8af1bfbf8c
a/u_logging: Docs for logging.
2021-04-27 22:05:00 +00:00
Ryan Pavlik
2c382734ca
a/bindings: Clean up formatting of script
2021-04-27 16:43:38 -05:00
Ryan Pavlik
d8cf72f6d9
a/bindings: Simplify as suggested by IDE
2021-04-27 16:43:38 -05:00
Ryan Pavlik
5a7412e86d
a/bindings: Fix typos
2021-04-27 16:43:38 -05:00
Jakob Bornecrantz
b81d3138af
d/remote: Assert if st/oxr calls the wrong thing (NFC)
2021-04-27 17:34:28 +01:00
Jakob Bornecrantz
385af79e82
d/survive: Add comment and assert to get_view_pose (NFC)
2021-04-27 17:19:18 +01:00
Jakob Bornecrantz
a6b908f3ce
d/vive: Add comment and assert to get_view_pose (NFC)
2021-04-27 16:51:56 +01:00
Jakob Bornecrantz
4e572af96a
st/oxr: Rename oxr_session_views to oxr_session_locate_views (NFC)
2021-04-27 01:44:16 +01:00
Jakob Bornecrantz
4da87635d1
st/oxr: Tidy xrLocateViews function
2021-04-27 01:44:16 +01:00
Jakob Bornecrantz
78f7d5ce91
ipc: Assert if st/oxr calls the wrong thing
2021-04-27 01:44:16 +01:00
Jakob Bornecrantz
8277df418d
xrt: Make eye_relation argument to xrt_device_get_view_pose const (NFC)
2021-04-27 01:44:13 +01:00
Ryan Pavlik
4dd96a666b
u/ht: Const-correctness
2021-04-26 22:38:42 +00:00
Ryan Pavlik
bc279076b8
u/ht: Port to new unit-vector defines
2021-04-26 22:38:42 +00:00
Ryan Pavlik
334b59f9fa
d/qwerty: Port to new unit-vector defines
2021-04-26 22:38:42 +00:00
Ryan Pavlik
a80d159b07
t/ht: Port to using unit-vector defines.
2021-04-26 22:38:42 +00:00
Ryan Pavlik
19a1228bd2
xrt: Add unit vector defines for xrt_vec3
2021-04-26 22:38:42 +00:00
Ryan Pavlik
3cfaa2ea9f
st/oxr: Port to using new zero/identity defines
2021-04-26 22:38:42 +00:00
Ryan Pavlik
48d043796c
d/vive: Port to using new zero/identity defines
2021-04-26 22:38:42 +00:00
Ryan Pavlik
c3ce7f33a0
d/ht: Port to using new zero/identity defines
2021-04-26 22:38:42 +00:00
Ryan Pavlik
06eab724ec
d/remote: Port to using new zero/identity defines
2021-04-26 22:38:42 +00:00
Ryan Pavlik
fde3e631cf
d/qwerty: Port to using new zero/identity defines
2021-04-26 22:38:42 +00:00
Ryan Pavlik
85ea0f8f78
d/oh: Port to using new zero/identity defines
2021-04-26 22:38:42 +00:00
Ryan Pavlik
71fabf50c5
d/north_star: Port to using new zero/identity defines
2021-04-26 22:38:42 +00:00
Ryan Pavlik
2dd81f53e3
comp: Port to using new zero/identity defines
2021-04-26 22:38:42 +00:00
Ryan Pavlik
6f46fcc251
aux/vive: Port to using new zero/identity defines
2021-04-26 22:38:42 +00:00
Ryan Pavlik
20053252aa
m/space: Port to using new zero/identity defines
2021-04-26 22:38:42 +00:00
Ryan Pavlik
cb8925ae04
u/ht: Port to using new zero/identity defines
2021-04-26 22:38:42 +00:00
Ryan Pavlik
edc6490d74
a/math: Port to using the new zero/identity defines
2021-04-26 22:38:42 +00:00
Ryan Pavlik
8c0aabfc0d
xrt: Add definitions for zero/identity initializers for pose-related structs.
2021-04-26 22:38:42 +00:00
Ryan Pavlik
e44c6d56c7
d/wmr: Port to u_device_get_view_pose
2021-04-26 22:38:42 +00:00
Ryan Pavlik
3b0a6a558c
d/vive: Port to u_device_get_view_pose
2021-04-26 22:38:42 +00:00
Ryan Pavlik
2d47c496e6
d/survive: Port to u_device_get_view_pose
2021-04-26 22:38:42 +00:00
Ryan Pavlik
6682bb0291
d/hdk: Port to u_device_get_view_pose
2021-04-26 22:38:42 +00:00
Ryan Pavlik
52c00436c7
d/remote: Port to u_device_get_view_pose
2021-04-26 22:38:42 +00:00
Ryan Pavlik
89895be83b
d/psvr: Port to u_device_get_view_pose
2021-04-26 22:38:42 +00:00
Ryan Pavlik
7c5342efe2
d/oh: Port to u_device_get_view_pose
2021-04-26 22:38:42 +00:00
Ryan Pavlik
2774b3375f
d/north_star: Port to u_device_get_view_pose
2021-04-26 22:38:42 +00:00
Ryan Pavlik
d45e13642e
d/dummy: Port to u_device_get_view_pose
2021-04-26 22:38:42 +00:00
Ryan Pavlik
f4a1c5344b
d/android_sensors: Port to u_device_get_view_pose
2021-04-26 22:38:42 +00:00
Ryan Pavlik
2adbde4673
a/util: Add u_device_get_view_pose helper function.
...
I saw many, many exact copies of this function in the code: good to de-duplicate them.
2021-04-26 22:38:42 +00:00
Jakob Bornecrantz
41ad1dcf99
c/main: Better Vulkan error printing
2021-04-26 22:56:08 +01:00
Jakob Bornecrantz
8c26be37ae
u/ft: Warn when missing frames
2021-04-26 22:55:41 +01:00
Jakob Bornecrantz
159eeb81a7
c/main: Pass in preferred dimensions to create images
...
Fixes #120
2021-04-26 20:28:32 +00:00
Jakob Bornecrantz
9c4b41f58e
c/main: Assert that preferred dimensions are somewhat valid
2021-04-26 20:28:32 +00:00
Jakob Bornecrantz
2efd2f543f
c/main: Tidy code in comp_target_swapchain (NFC)
2021-04-26 20:28:32 +00:00
Jakob Bornecrantz
5915318654
c/main: Clarify in code that it is preferred dimensions (NFC)
2021-04-26 20:28:32 +00:00
Jakob Bornecrantz
ceb6c8b3fe
c/main: Remove trailing newline in error message (NFC)
2021-04-26 20:28:32 +00:00
Jakob Bornecrantz
846a663942
c/main: Make instance extension list more readable (NFC)
2021-04-26 20:28:32 +00:00
Jakob Bornecrantz
64093dfaaf
c/main: Expose more formats
2021-04-26 20:26:30 +01:00
Jakob Bornecrantz
a377fb135f
c/client: Vulkan formats are listed as numbers not hex
2021-04-26 18:52:31 +00:00
Jakob Bornecrantz
c1d18f9b25
c/client: Add support for more formats in GL
2021-04-26 18:52:31 +00:00
Ryan Pavlik
0868a90a1f
gradle: Only forward EIGEN3_INCLUDE_DIR definition if we actually have it set.
2021-04-26 14:27:21 +00:00
Ryan Pavlik
3df2708a5d
st/gui: Add missing copyright header to file
2021-04-26 14:08:57 +00:00
Ryan Pavlik
6d4b098e65
t/steamvr_drv: Add license sidecar files
2021-04-26 14:08:57 +00:00
Christoph Haag
08c91d4136
st/oxr: Fix printing of the format in error message
2021-04-26 14:54:30 +02:00
Boris-Chengbiao Zhou
d05aa9a458
aux/vk: Extend the correct structure for VK_EXT_global_priority
2021-04-24 17:50:18 +02:00
Jakob Bornecrantz
1ef79820e6
d/wmr: Clarify struct layout (NFC)
2021-04-23 22:48:56 +01:00
Jakob Bornecrantz
0807ce6ddd
d/wmr: Only take the lock once per received packet
2021-04-23 22:47:40 +01:00
Jakob Bornecrantz
13d127035b
d/wmr: Remove raw_accel and raw_gyro fields (NFC)
2021-04-23 19:06:05 +01:00
Jakob Bornecrantz
1b4b180e61
d/wmr: Do prediction when returning poses
2021-04-23 18:24:13 +01:00
Jakob Bornecrantz
a41a869c71
d/wmr: Rename variables and tidy code (NFC)
2021-04-23 14:50:58 +01:00
Christoph Haag
2b70189b45
d/wmr: log at least one space in trace log
...
Fixes warnings
../src/xrt/drivers/wmr/wmr_hmd.c:83:16: warning: zero-length gnu_printf format string [-Wformat-zero-length]
83 | WMR_TRACE(wh, "");
| ^~
2021-04-22 02:41:48 +02:00
Jakob Bornecrantz
741dcbdf40
ipc: Return XRT_ERROR_IPC_SESSION_NOT_CREATED if so is the case
2021-04-21 18:03:10 +00:00
Jakob Bornecrantz
5627849135
ipc: More trace_marker functions
2021-04-21 18:03:10 +00:00
Jakob Bornecrantz
3953321129
ipc: Return error from ipc_call_session_create in create_native_compositor
2021-04-21 18:03:10 +00:00
Jakob Bornecrantz
c49abf9103
ipc: Print out all error messages, and values
2021-04-21 18:03:10 +00:00
Jakob Bornecrantz
576ff7d252
xrt: Add new IPC session not created error
2021-04-21 18:03:10 +00:00
Jakob Bornecrantz
5105148c45
xrt: Correct error number
2021-04-21 18:03:10 +00:00
Jakob Bornecrantz
7af531a6c5
c/main: Refactor so we can do an early acquire
2021-04-21 17:56:29 +00:00
Jan Schmidt
bc4661aa48
wmr: Don't start reading thread until setup is complete.
...
Make sure the headset struct is fully configured before
starting the reading thread, otherwise we can get a crash if an
IMU update arrives for processing before the 3dof fusion is
ready.
2021-04-22 03:39:16 +10:00
Ryan Pavlik
4488699e55
d/ultraleap_v2: Add missing copyright/license header, reflow, and fix markdownlint warnings.
2021-04-21 11:14:49 -05:00
Christoph Haag
341fa45eda
ipc: Print socket filename and errno in error message
2021-04-20 16:04:26 +02:00
Christoph Haag
885a668a03
d/oh: Fix number of inputs for generic controller
...
fixes memory corruption
2021-04-20 12:43:56 +02:00
nima01
027ce21bd5
d/wmr: Initial 3DoF WinMR driver
...
Only supports HP Reverb G1 and G2 for now.
Squash of the following commits:
Initial boilerplate code for HP Reverb G1 driver implementation
Detect and open MS HoloLens Sensors interface
Power up HMD display when headset is detected, and som general code cleanup
Add Reverb G2 PID
reverb_g1: Fix defines
reverb_g1: Run clang format
wmr: Rename Reverb G1 driver to WMR driver
d/wmr: Code style
d/wmr: Flesh out driver a bit more
d/wmr: Code style
Add basic 3dof rotational tracking
d/wmr: Code style
d/wmr: More tidy
xrt: Remove XRT_DEVICE_REVERB_G1
d/wmr: Even more tidy
d/wmr: Changes for Reverb G2
d/wmr: Fixes since last commit
wmr: Fix the meson build and auto-enable the driver
d/wmr: Sleep for compositor to get modes
d/wmr: Use os_hid for control device
d/wmr: Remove hidapi as a dependancy
d/wmr: Move sensor reading to own thread and fix locking
d/wmr: Read from control device and handle more unknown messages
d/wmr: Decode IPD value from control device
d/wmr: Remove all left over dummy driver fields
Co-author: nima01 <nima_zero_one@protonmail.com>
Co-author: Jakob Bornecrantz <jakob@collabora.com>
Co-author: Jan Schmidt <jan@centricular.com>
2021-04-19 13:33:01 +00:00
Jakob Bornecrantz
0058525457
util: Depend on bindings
2021-04-19 14:26:51 +01:00
Christoph Haag
c47775a95d
comp: Fix warning after Vulkan 1.2.174 VK_NULL_HANDLE change
...
../src/xrt/compositor/main/comp_layer_renderer.c:317:17: warning: initialization of 'unsigned int' from 'void *' makes integer from pointer without a cast [-Wint-conversion]
317 | .subpass = VK_NULL_HANDLE,
| ^~~~~~~~~~~~~~
2021-04-19 13:04:59 +02:00
Christoph Haag
686d12d66f
p/prober: Print info for applied tracking override
2021-04-19 12:53:47 +02:00
Christoph Haag
26d93c52df
d/multi: Use supplied pose input name enum
2021-04-19 12:53:47 +02:00
Christoph Haag
471b876725
u_config_json: Load tracking override pose input name
2021-04-19 12:53:47 +02:00
Christoph Haag
664c103a3e
u_config_json: Store tracking override pose input name
2021-04-19 12:53:47 +02:00
Christoph Haag
fa79451858
build/cmake: link generated bindings to aux_util
2021-04-19 12:53:47 +02:00
Christoph Haag
cffd009fe9
st/gui: Add tracker pose input name selection
2021-04-19 12:53:46 +02:00
Christoph Haag
e9eba9a2b4
aux/bindings: Generate char* <-> enum for all used inputs
2021-04-19 12:53:14 +02:00
Jakob Bornecrantz
daff92a275
c/main: None functional refactor of renderer.
...
Not ment to change the functionallity of the code only reflow the code.
2021-04-17 00:12:22 +01:00
Christoph Haag
598c1a3b56
d/ohmd: Only set output name if there is an output
...
This needs to be revisited after OpenHMD gets a proper API for haptic feedback.
closes #119
2021-04-16 16:41:44 +02:00
Jakob Bornecrantz
5d605c7b3f
c/main: Do not create images when initing swapchain.
2021-04-16 02:27:22 +01:00
Ryan Pavlik
1521953813
c/main: Re-arrange comp_renderer to allow late init.
...
Co-author: Jakob Bornecrantz <jakob@collabora.com>
2021-04-16 02:27:22 +01:00
Ryan Pavlik
1cf39ec2c0
c/main: Add comp_target::has_images, and implement in comp_target_swapchain.
2021-04-16 01:51:05 +01:00
Ryan Pavlik
90192118d0
c/main: Add comp_target::check_ready, and implement in comp_target_swapchain.
2021-04-16 01:45:38 +01:00
Jakob Bornecrantz
780ec4fac9
c/main: Turn debug into spew
2021-04-16 01:45:38 +01:00
Ryan Pavlik
7c2ea1369f
c/main: Normalize destroy pattern for comp_renderer.
2021-04-15 23:28:47 +01:00
Ryan Pavlik
70982e9c39
c/main: Remove unimplemented comp_renderer function.
2021-04-15 23:28:47 +01:00
Ryan Pavlik
04c9a7d892
c/main: Normalize comp_layer_renderer_destroy convention.
2021-04-15 23:28:47 +01:00
Ryan Pavlik
ffe458fdba
c/main: Add comp_layer_renderer docs.
2021-04-15 23:28:47 +01:00
Ryan Pavlik
80da6fe3b8
c/main: Add comp_renderer docs.
2021-04-15 23:28:47 +01:00
Ryan Pavlik
ab5f9ae9d8
c/main: Add comp_target docs.
2021-04-15 23:28:47 +01:00
Ryan Pavlik
969c78efbd
c/client: Fix comment.
2021-04-15 23:28:47 +01:00
Christoph Haag
fd6bd0f592
ipc: Use xdg runtime directory for socket
...
u_file_get_runtime_dir falls back to /tmp if $XDG_RUNTIME_DIR is not set.
ipc: %t/monado_comp_ipc socket for systemd socket activation
2021-04-15 21:42:06 +00:00
Christoph Haag
4ea68b89a4
xrt: Add u_process, backed by libbsd's pidfile
...
Delete stale ipc files in ipc server when not already running.
If built without libbsd, fall back to previous behavior of complaining about existing ipc files and exit.
2021-04-15 21:42:06 +00:00
Christoph Haag
c92bc0a704
xrt: Add u_file_get_runtime_dir() and u_file_get_path_in_runtime_dir()
...
Analog to u_file_get_path_in_config_dir.
2021-04-15 21:42:06 +00:00
Jakob Bornecrantz
0e18e1f8b0
d/qwerty: Add SDL include dirs
2021-04-15 21:27:13 +00:00
Jakob Bornecrantz
cabaece344
st/oxr: Print value on bad layer type
2021-04-15 21:27:13 +00:00
Jakob Bornecrantz
c24a20ce18
t/cli: Fix warnings
2021-04-15 17:38:08 +01:00
Jakob Bornecrantz
74c9531d4f
st/oxr: Use right enum for ret check
2021-04-15 17:38:06 +01:00
Jakob Bornecrantz
f434de27bd
st/gui: Fix warning (false positive)
2021-04-15 17:38:05 +01:00
Jakob Bornecrantz
26756cc52d
aux/vk: Fix use free of stack variable and use correct return
2021-04-15 17:38:03 +01:00
Jakob Bornecrantz
05f14461a3
t/psvr: Fix warning
2021-04-15 17:38:01 +01:00
Jakob Bornecrantz
898bf15a08
u/tf: Use new trace marker helpers
2021-04-14 01:55:59 +00:00
Jakob Bornecrantz
c750447add
u/trace_marker: Add render timing support
2021-04-14 01:55:59 +00:00
Jakob Bornecrantz
52d1c4d834
u/trace_marker: Add json writing helpers
2021-04-14 01:55:59 +00:00
Jakob Bornecrantz
654043ede5
ipc: Remove stale todo
2021-04-13 23:21:14 +01:00
Jakob Bornecrantz
c8cde9c447
ipc: Set correct reference count on swapchain
2021-04-13 23:21:14 +01:00
Jakob Bornecrantz
7dc132a207
c/client: Set correct reference on swapchain
2021-04-13 23:21:14 +01:00
Jakob Bornecrantz
7c77625da9
st/oxr: Set visibility and z_order if multi compositor controls are available
2021-04-13 16:56:17 +00:00
Jakob Bornecrantz
f82f289907
u/rt: Also print what kind of point we are marking when tracing
2021-04-13 16:56:17 +00:00
Jakob Bornecrantz
b48cdfed44
c/main: Fix xrt_compositor::wait_frame
2021-04-13 16:56:17 +00:00
Jakob Bornecrantz
4507804819
c/multi: Implement xrt_compositor::wait_frame
2021-04-13 16:56:17 +00:00
Ryan Pavlik
cb2710db87
comp: Improve docs on comp_target_swapchain
2021-04-13 11:46:53 -05:00
Ryan Pavlik
1e1fe01374
comp: Doc improvements.
2021-04-13 11:46:53 -05:00
Ryan Pavlik
701ea290d0
os: Fix comment typo.
2021-04-13 11:46:53 -05:00
Ryan Pavlik
64c56ef8d0
editorconfig: Update
2021-04-13 11:46:53 -05:00
Ryan Pavlik
65a7b490a8
android: Add support for casting Context to Activity
2021-04-13 11:46:53 -05:00
Ryan Pavlik
43e0206abc
st/oxr: Implement loader init extension.
2021-04-13 11:33:50 -05:00
Ryan Pavlik
142a9b4cb5
st/oxr: Add XR_KHR_loader_init and ..._android extension
2021-04-13 11:33:50 -05:00
Jakob Bornecrantz
1b51cbd1a7
aux/vk: Add support for VK_EXT_global_priority
2021-04-12 22:16:31 +00:00
Jakob Bornecrantz
796f3cf792
c/main: Set default logging level to INFO
2021-04-12 22:16:31 +00:00
Jakob Bornecrantz
c9c362e16a
c/multi: Overwrite stale scheduled frames
2021-04-12 22:16:31 +00:00
Jakob Bornecrantz
b0c9f2a1d9
c/multi: Break potential long running tasks into functions for better trace_marker logging
2021-04-12 22:16:31 +00:00
Jakob Bornecrantz
95e95ba9b5
c/render: Tidy mesh shader
2021-04-12 22:16:31 +00:00
iVRy VR
0064989e8b
t/psvr: Various fixes and changes
...
- Fix out of array bounds crash, curr_y can be out of bounds.
- Set tracked bits appropriately.
- Use m_imu_3dof for orientation.
2021-04-12 15:02:16 +00:00
Moses Turner
7cd2a33737
drivers: switch blend mode to array
2021-04-11 04:08:49 -05:00
Moses Turner
36a48bd62b
aux/util: switch blend mode to array
2021-04-11 04:08:49 -05:00
Moses Turner
c53eba34d0
ipc: switch blend mode to array
2021-04-11 04:08:49 -05:00
Moses Turner
1062ef35fc
st/oxr: switch blend mode to array
2021-04-11 04:08:49 -05:00
Moses Turner
6f93b4c718
inc/xrt: switch blend mode to array
...
In order of how preferred they are.
2021-04-11 04:08:49 -05:00
Ryan Pavlik
c906151fb1
util: Fix doxygen warnings
2021-04-09 18:22:42 -05:00
Ryan Pavlik
d6d933f20d
xrt: Fix doxygen warnings.
2021-04-09 18:16:54 -05:00
Ryan Pavlik
0450e317e1
cmake: prober requires drv_multi now.
2021-04-09 18:16:39 -05:00
Ryan Pavlik
1ce306cb55
cmake: Fix include dir scope for comp_multi
2021-04-09 18:11:46 -05:00
Ryan Pavlik
cf08cbba78
aux/vk: Docs for Vulkan native import helpers.
2021-04-09 18:11:52 +01:00
Ryan Pavlik
dde274b13e
comp: Fix typo.
2021-04-09 18:11:52 +01:00
Ryan Pavlik
322f6d473a
util: Don't try to use $HOME or $XDG_CONFIG_HOME on Android.
2021-04-09 18:11:52 +01:00
Ryan Pavlik
b56441702c
st/oxr: Clean up Android message.
2021-04-09 18:11:52 +01:00
zhibinw
d7f0380f53
ipc/android: Dup the socket fd in native side, close the fd on java side.
2021-04-09 16:42:00 +00:00
Christoph Haag
e7f82c297a
st/oxr: Fix running when only one hand suports hand tracking
2021-04-08 20:32:55 +02:00
Christoph Haag
08e39a1a0e
d/survive: Increase device detection timeout
...
With libsurvive 20127ef1bbb9206c9b429de47b891fc71d9df355 it can take a bit longer for devices to appear.
2021-04-08 19:37:09 +02:00
Jakob Bornecrantz
aca09bdebf
c/multi: Do not display frames before they are to be displayed
...
This follows the OpenXR spec that says that a frame might not be
displayed before XrFrameEndInfo::displayTime value.
2021-04-07 15:41:47 +01:00
Jakob Bornecrantz
736b9abdbe
u/rt: Print frame period and tidy
2021-04-07 15:41:47 +01:00
Jakob Bornecrantz
b68041fb93
u/rt: Tweak IIR alpha numbers
2021-04-07 15:41:47 +01:00
Jakob Bornecrantz
8606eb9d11
u/rt: Adjust app period depending on app time
2021-04-07 01:05:38 +01:00
Jakob Bornecrantz
1b0a9acb56
u/rt: Adjust app time during runtime
2021-04-07 01:04:20 +01:00
Jakob Bornecrantz
8215af5e5c
u/rt: Refactor render timing
2021-04-07 01:04:20 +01:00
Jakob Bornecrantz
670906ea0e
u/ft: Spelling
2021-04-07 01:04:20 +01:00
Jakob Bornecrantz
971f88f34f
u/ft: Rename frame timing functions
2021-04-07 00:50:10 +01:00
Jakob Bornecrantz
5dbcca65c5
u/tr: Refactor rendering timing code
2021-04-07 00:50:10 +01:00
Jakob Bornecrantz
d745396396
u/ft: Tweak frame timing numbers
2021-04-07 00:50:10 +01:00
Jakob Bornecrantz
bcf9b62fc0
ipc: Adopt to new multi client interface
2021-04-07 00:50:10 +01:00
Jakob Bornecrantz
f14958f2b0
c/main: Explicitly wait for GPU work to finish
2021-04-07 00:50:10 +01:00
Jakob Bornecrantz
bf2a90fec5
c/main: Switch to multi client layer
2021-04-07 00:50:10 +01:00
Jakob Bornecrantz
205db10353
c/main: Implement new predict and mark frame functions
2021-04-07 00:50:10 +01:00
Ryan Pavlik
22df47f974
c/main: Port to using u_graphics_sync_unref
2021-04-07 00:50:10 +01:00
Jakob Bornecrantz
2035da1ec9
c/main: Implement fence functions
2021-04-07 00:50:10 +01:00
Jakob Bornecrantz
086bef8545
c/multi: Add new multi-client helper
2021-04-07 00:50:10 +01:00
Jakob Bornecrantz
efdba1602f
xrt: Pass along display_time_ns to layer begin
2021-04-07 00:50:10 +01:00
Jakob Bornecrantz
f3abddf224
xrt: Add multi session managment interface
2021-04-07 00:50:10 +01:00
Jakob Bornecrantz
353c7735bf
xrt: Add alternative functions to wait_frame
2021-04-07 00:50:10 +01:00
Jakob Bornecrantz
1f3896d729
xrt: Add new error code
2021-04-07 00:50:10 +01:00
Jakob Bornecrantz
2ab99b821b
xrt: Add compositor fence interface
2021-04-07 00:50:10 +01:00
Jakob Bornecrantz
07fb9941b3
aux/vk: Add fence import function
2021-04-07 00:50:10 +01:00
Ryan Pavlik
61c1044089
u/handles: Add graphics sync handle helpers.
2021-04-07 00:50:10 +01:00
Jakob Bornecrantz
c876087ee7
u/time: Add helper comparising functions
2021-04-07 00:50:10 +01:00
Jakob Bornecrantz
5c15b60cf2
st/oxr: Add more trace markers
2021-04-07 00:50:10 +01:00
Moses Turner
0ef8f55ef1
targets/oxr/sdl2_hack: only do Qwerty things if we are building qwerty driver
2021-04-04 22:38:24 +01:00
Moses Turner
b62b6eaef7
c/main: Follow OpenXR spec with blackground colour, tweek no layer colour.
...
Make background colour completely black if there are layers to display, to
follow OpenXR spec. Make the default background colour darker.
2021-04-04 20:34:35 +01:00
Christoph Haag
2b962a5bfb
u_config_json: Create root node on save if no config file loaded
...
If no config file is loaded, json->root can be uninitialized instead of NULL.
Fixes #117
2021-04-04 21:02:41 +02:00
Jakob Bornecrantz
1b0d67a895
st/gui: Add recording interface
2021-04-03 03:07:21 +01:00
Jakob Bornecrantz
fac93948b3
st/gui: Add STB image writing support
2021-04-03 03:07:21 +01:00
Jakob Bornecrantz
30573fb90f
a/gst: Add GStreamer helper code
...
Co-authored-by: Aaron Boxer <aaron.boxer@collabora.com>
2021-04-03 03:07:21 +01:00
Jakob Bornecrantz
2b63fd8078
xrt: Add helper push frame function
2021-04-03 03:07:21 +01:00
Jakob Bornecrantz
98f81734c8
d/vf: Add clock overlay to videotestsource
2021-04-03 03:07:21 +01:00
Jakob Bornecrantz
1155106dc1
d/v4l2: Be more tolorant for long pipelines
2021-04-03 03:07:21 +01:00
Ryan Pavlik
d34e1464fd
comp: Update file header.
2021-04-02 18:02:10 -05:00
Ryan Pavlik
c81ae4670b
comp: Properly service Windows message queue.
2021-04-02 17:47:40 -05:00
Ryan Pavlik
607eae4fdd
aux/vk: Fix creation of Windows external memory backed image.
2021-04-02 17:29:55 -05:00
Christoph Haag
3a60df33aa
d/openhmd: Add support for rift CV1 controllers
2021-04-02 15:48:10 +00:00
Christoph Haag
91a3d8b9cb
st/steamvr: Add rift controllers
2021-04-02 15:48:10 +00:00
Christoph Haag
7ce07aeedf
st/oxr: Support all known interaction profiles in selection
...
Remove the default case to generate a compiler warning when new profiles
are missing.
2021-04-02 15:48:10 +00:00
Christoph Haag
85ff0dc73c
xrt: Add msft_hand_interaction path to cache and check func
2021-04-02 15:48:10 +00:00
Jakob Bornecrantz
9695e90d95
d/vive: Setup the variable tracking for imu fusion
2021-04-02 16:00:42 +01:00
Jakob Bornecrantz
cebc8ebed5
st/oxr: No longer need to work around depth Swapchain on Unreal
2021-04-02 16:00:42 +01:00
Moses Turner
55b86fe815
d/ulv2: Create the driver.
...
Co-authored-by: Moses Turner <mosesturner@protonmail.com>
Co-authored-by: Christoph Haag <christoph.haag@collabora.com>
2021-04-01 02:10:33 +02:00
Moses Turner
b319371500
d/survive: for now always set xrt_hand_joint_set->is_active to true
2021-04-01 02:02:26 +02:00
Moses Turner
6a833b1131
st/oxr+xrt: add is_active to struct xrt_hand_joint_set to give drivers an easy way to deactivate hands
2021-04-01 02:02:26 +02:00
Moses Turner
a027852767
aux/math: implement math_pose_identity.
2021-04-01 02:02:26 +02:00
Moses Turner
c776a19e15
aux/math: Implement math_matrix_3x3_multiply.
2021-04-01 02:02:26 +02:00
Moses Turner
d54b653751
d/multi: correctly override hand pose for "attached" tracking
2021-04-01 02:02:26 +02:00
Christoph Haag
4061bf7707
d/multi: Add "attached" tracking override type
...
Example usage: Leap Motion attached to a Northstar headset.
2021-04-01 02:02:26 +02:00
Ryan Pavlik
0139aa1525
comp: Fix conversion warnings
2021-03-31 12:02:41 -05:00
Ryan Pavlik
d4c352ef69
comp: Improve Windows errors.
2021-03-31 12:02:41 -05:00
Ryan Pavlik
942091c10d
comp: Enable VK_EXT_debug_report extension
2021-03-31 12:02:41 -05:00
Ryan Pavlik
061ae2f7b7
xrt: Fix more narrowing conversion warnings.
2021-03-31 12:02:41 -05:00
Ryan Pavlik
592df37c0f
comp: Fix some narrowing conversion warnings
2021-03-31 12:02:41 -05:00
Ryan Pavlik
78301ae5eb
comp: Use precise sleeper.
2021-03-31 12:02:41 -05:00
Ryan Pavlik
f65635f378
aux/vk: Fix doxygen warning
2021-03-31 12:02:41 -05:00
Ryan Pavlik
b3280c5bc1
os/time: Small cleanup.
2021-03-31 12:02:41 -05:00
Ryan Pavlik
aa3d1c1f6a
os: Add os_precise_sleeper.
...
Mostly to be able to use a timer on Windows.
2021-03-31 12:02:41 -05:00
Ryan Pavlik
47bf17a0cc
os: Improve comment and prototype for os_nanosleep
2021-03-31 12:02:41 -05:00
Ryan Pavlik
0717975853
os: Improve timestamp retrieval on Windows.
2021-03-31 12:02:41 -05:00
Ryan Pavlik
00915cab0f
os: Add caveats to some timespec conversion functions.
2021-03-31 12:02:41 -05:00
Ryan Pavlik
ddc9b00d14
os: Adjust how we compute the timeout for a semaphore.
...
Preparation for overhaul of timing on Windows.
2021-03-31 12:02:36 -05:00
Ryan Pavlik
b3772e2710
cmake: Support multi-config generators
2021-03-30 20:46:00 +00:00
Ryan Pavlik
aefd8c0697
ipc/android: Be sure to init the mutexes.
2021-03-30 20:46:00 +00:00
Ryan Pavlik
58ebd7ee20
xrt: Adjust how we define ssize_t on MSVC
2021-03-30 20:46:00 +00:00
Ryan Pavlik
4e11abc06b
aux/vk: Fix warning about narrowing conversion.
2021-03-30 20:46:00 +00:00
Ryan Pavlik
ace8dc8c46
comp: clean up comment
2021-03-30 20:46:00 +00:00
Ryan Pavlik
8553b5f901
comp/vk_client: Be sure to init/de-init the mutexes in the vulkan bundle
2021-03-30 20:46:00 +00:00
Ryan Pavlik
3f2b09ae54
comp: Comment cleanup
2021-03-30 20:46:00 +00:00
Ryan Pavlik
be5a273659
comp/main: Use the new vk_bundle mutex functions.
2021-03-30 20:46:00 +00:00
Ryan Pavlik
adb5eefb86
aux/vk: Add functions to initialize and clean up mutexes in the vk_bundle
2021-03-30 20:46:00 +00:00
Jakob Bornecrantz
6ba27de305
m/mathinclude: Apperently _USE_MATH_DEFINES was not enough
2021-03-30 21:27:29 +01:00
Jakob Bornecrantz
6f10f474fa
t/psvr: Ensure that m_mathinclude.h is included
2021-03-30 21:27:29 +01:00
Jakob Bornecrantz
967c27060e
st/prober: Change log env variable and set default level to info
2021-03-30 21:27:29 +01:00
Jakob Bornecrantz
083e4f5108
u/logging: Fix first global log message not getting correct level, add comments
2021-03-30 19:23:41 +01:00
Mateo de Mayo
5c6158cc8b
d/qwerty: Implement controller pose reset
2021-03-29 15:42:01 -03:00
Mateo de Mayo
5e6c4b63a5
d/qwerty: Implement controller parenting to HMD
...
Although, it only works for the qwerty HMD.
2021-03-29 15:42:01 -03:00
Mateo de Mayo
7f00ca3da2
d/qwerty: Improve selection of default controller
2021-03-29 15:41:59 -03:00
Mateo de Mayo
8b81afeb59
d/qwerty: Implement haptic output
2021-03-29 15:41:25 -03:00
Mateo de Mayo
4ea696bfdd
d/qwerty: Implement select and menu click inputs
2021-03-29 15:41:25 -03:00
Mateo de Mayo
582a287dd4
d/qwerty: Use u_logging.h with QWERTY_LOG env var
2021-03-29 15:41:25 -03:00
Mateo de Mayo
ef74e24abe
d/qwerty: Add variable tracking widget to UI
2021-03-29 15:41:25 -03:00
Mateo de Mayo
a1b70c746b
d/qwerty: Add qwerty_system for driver management
2021-03-29 15:41:25 -03:00
Mateo de Mayo
f8f14a1d9e
d/qwerty: Move left/right controllers with CTRL/ALT
...
In qwerty_sdl.c the u_device_assign_xdev_roles function is used for
knowing which devices are being used by the user. These could
be other physical devices. And as such the idea of a default focused
device is introduced and depends upon which devices the user already
has. With this change qwerty devices should be properly introduced
to fill any device the user may not have.
2021-03-29 15:41:25 -03:00
Mateo de Mayo
62e05f267a
d/qwerty: Add still qwerty controllers
...
By making an initial inheritance hierarchy, thus separating qwerty_hmd
from qwerty_controller, both inheriting from qwerty_device
2021-03-29 15:41:25 -03:00
Mateo de Mayo
e13a6fc2fd
d/qwerty: Add QWERTY_ENABLE environment variable
2021-03-29 15:41:25 -03:00
Mateo de Mayo
183ee4f4ee
d/qwerty: Implement mouse input and sprinting
2021-03-29 15:41:25 -03:00
Mateo de Mayo
ec340fabe2
d/qwerty: Implement WASDQE and arrow keys HMD movement
2021-03-29 15:41:25 -03:00
Mateo de Mayo
12d52193da
d/qwerty: Connect the debug UI to the Qwerty driver
...
It was necessary to add a list of xdevs to oxr_sdl2_hack_start and to
populate such list from its callees.
That includes sdl2_program.gui_program->xdevs which was not being filled
for the monado-service target.
2021-03-29 15:41:25 -03:00
Mateo de Mayo
e6db1fae74
d/qwerty: Implement still HMD creation
2021-03-29 15:41:25 -03:00
Mateo de Mayo
0340ae3cc8
d/qwerty: Add Qwerty driver initial boilerplate
...
The Qwerty driver will emulate an HMD and controllers through the use
of mouse and keyboard, and in particular, using the SDL key events
generated from the debug GUI.
2021-03-29 15:41:25 -03:00
Ryan Pavlik
98886d5317
d/multi: Fix contagious doxygen warning.
2021-03-26 17:10:53 -05:00
Ryan Pavlik
b93b082bd3
aux: Fix doxygen warnings
2021-03-26 17:10:53 -05:00
Ryan Pavlik
f82d0f484f
ipc: Fix doxygen warning
2021-03-26 17:10:53 -05:00
Ryan Pavlik
08b0fd257f
st/oxr: Fix doxygen warning
2021-03-26 17:10:53 -05:00
Ryan Pavlik
6fc4cc0cc9
st/prober: Fix doxygen warnings
2021-03-26 17:10:53 -05:00
Ryan Pavlik
7b92d212a2
comp: Fix doxygen warnings
2021-03-26 17:10:53 -05:00
Ryan Pavlik
4004402c40
aux/vk: Wrap statement defines in do {} while (0)
2021-03-26 17:10:53 -05:00
Ryan Pavlik
20468070fa
ipc: De-duplicate member for simplicity and to avoid Doxygen warning
2021-03-26 17:10:47 -05:00
Ryan Pavlik
3414f62ccf
aux: fix or silence warnings
2021-03-26 17:06:17 -05:00
Ryan Pavlik
b57d52f373
comp/main: Fix warnings
2021-03-26 17:06:17 -05:00
Ryan Pavlik
a830f46db0
st/prober: Fix warnings
2021-03-26 17:06:17 -05:00
Ryan Pavlik
8ebd97330d
st/steamvr: Fix warnings
2021-03-26 17:06:17 -05:00
Ryan Pavlik
bd00c7ffd3
comp/main: Deal with MSVC not liking static array sizes being non-constant.
2021-03-26 17:06:17 -05:00
Ryan Pavlik
0140ea34b6
comp/main: Implement consumption of sync handle on Windows
2021-03-26 17:06:17 -05:00
Ryan Pavlik
b147f2ecd4
a/util: Non-linux implementation of u_file
2021-03-26 17:06:17 -05:00
Ryan Pavlik
c00884e827
cmake: aux/vk depends on aux/os
2021-03-26 17:06:17 -05:00
Ryan Pavlik
4ed3d21b09
a/util: Stub out trace marker on non-Linux for now.
2021-03-26 17:06:17 -05:00
Ryan Pavlik
e5c193bcd0
aux/util: Silence warnings on MSVC
2021-03-26 17:05:56 -05:00
Christoph Haag
a991e66b85
u_vive: Fix debug level of printing acc_bias
2021-03-24 18:45:00 +00:00
Christoph Haag
1f25acfa94
d/vive: remove duplicate range record error message
2021-03-24 18:45:00 +00:00
Christoph Haag
a2b49138e7
d/vive: change imu range report error->info
2021-03-24 18:45:00 +00:00
Christoph Haag
e8999b06c8
st/p: Change tracking override target/tracker not found error->warning
2021-03-24 18:45:00 +00:00
Christoph Haag
08db19beca
u_config_json: Change node not found error->info
...
As our config grows it will happen more often that users won't have all possible nodes.
2021-03-24 18:45:00 +00:00
Christoph Haag
3ba9a9411a
d/vive: change config start report error->info
...
And clarify the message that it happens for example for powered off controllers.
2021-03-24 18:45:00 +00:00
Christoph Haag
de6d2a888a
ipc: Change server exiting error->info
2021-03-24 18:45:00 +00:00
Christoph Haag
f6210be44a
d/survive: Change event for unknown object error->info
2021-03-24 18:45:00 +00:00
Christoph Haag
f9c2ab7ed7
d/ht: Change hand tracking not set up error->debug
2021-03-24 18:45:00 +00:00
Christoph Haag
030230eba9
st/p: change PSVR/PSMV not set up error->info
2021-03-24 18:45:00 +00:00
Christoph Haag
8f16118020
u_config_json: Remove bogus "No tracking node" messages
...
* open_tracking_settings() already reports missing tracking nodes.
* open_tracking_settings() can also fail for other reasons
2021-03-24 18:45:00 +00:00
Christoph Haag
45d889e390
u_config_json: Make missing tracking node messages friendlier
2021-03-24 18:45:00 +00:00
Christoph Haag
054850de76
u_config_json: Remove duplicated is_json_ok code
2021-03-24 18:45:00 +00:00
Christoph Haag
2959747221
u_config_json: clarify json not parsed error message
2021-03-24 18:45:00 +00:00
Christoph Haag
f0132eb997
u_config_json: change no config file warning->info
...
Running without a config file is fully supported, no reason to warn users.
2021-03-24 18:45:00 +00:00
Jakob Bornecrantz
63f5c86257
xrt: Make xrt_swapchain be reference counted
2021-03-24 17:50:08 +00:00
Christoph Haag
aab94e7add
build/meson: Allow disabling tracking
...
The tracking code uses ifdefs with XRT_HAVE_OPENCV.
2021-03-24 18:05:51 +01:00
Christoph Haag
dad5c6d5d8
u_config_json: Fix saving when no config file exists
...
If json->root was null, it would write a config file containing only (null).
2021-03-24 17:33:46 +01:00
Jakob Bornecrantz
e066f6a828
st/gui: Fix warning
2021-03-24 14:09:13 +00:00
Jakob Bornecrantz
67339a4d7c
d/remote: Fix warning
2021-03-24 14:09:13 +00:00
Christoph Haag
2ac4ff84ec
aux/util: Fix comment for u_device_setup_tracking_origins
2021-03-23 19:05:35 +00:00
Christoph Haag
857b831e30
d/illixr: Add driver name
2021-03-22 01:25:44 +01:00
Jakob Bornecrantz
a71b3d35d1
m/3dof: Add assert for timestamp paranoia
2021-03-17 01:10:02 +00:00
Jakob Bornecrantz
c73146c6fd
d/psvr: Ensure that timestamps are always after each other
2021-03-17 01:10:02 +00:00
Jakob Bornecrantz
0452c69caa
c/main: Detect when config is needed but missing
2021-03-12 00:06:36 +00:00
Jakob Bornecrantz
6c3ab4151a
st/oxr: Handle XRT_ERROR_EGL_CONFIG_MISSING
2021-03-12 00:06:36 +00:00
Jakob Bornecrantz
0571e0337e
xrt: Add XRT_ERROR_EGL_CONFIG_MISSING error
2021-03-12 00:06:36 +00:00
Jakob Bornecrantz
8be59f73ec
xrt: Return xrt_result_t from xrt_gfx_provider_create_gl_egl
2021-03-12 00:06:36 +00:00
Jakob Bornecrantz
8992f79257
c/main: Be even more paranoid about display timing code
2021-03-10 17:53:36 +00:00
Jakob Bornecrantz
dac5bc0ea5
u/timing: Deal slightly better when timing info appears to time travel
2021-03-10 17:53:36 +00:00
Jakob Bornecrantz
d71ccc39ce
u/timing: Add when_predict_ns on first frame
2021-03-10 17:53:36 +00:00
Christoph Haag
7b95330bb5
ipc: Print information to delete socket file
2021-03-10 02:02:44 +01:00
Christoph Haag
2a02130301
build/meson: Install systemd service file with meson
2021-03-10 01:58:18 +01:00
Christoph Haag
851a600a6a
build/meson: Add systemd feature option for monado-service
2021-03-10 01:57:55 +01:00
Christoph Haag
0adcc179c0
xrt: Fix typo in u_file
2021-03-10 01:56:07 +01:00
Jakob Bornecrantz
a6da40de50
c/main: Remove unused fields
...
Tested-by: Boris-Chengbiao Zhou <bobo1239@web.de>
2021-03-09 18:16:01 +00:00
Jakob Bornecrantz
003b70d05e
c/main: Use correct predicted display time for rendering
...
Closes #114
Reported-by: Boris-Chengbiao Zhou <bobo1239@web.de>
Tested-by: Boris-Chengbiao Zhou <bobo1239@web.de>
2021-03-09 18:15:52 +00:00
Christoph Haag
eb594409dd
xrt: Increase number of autoprobers to 16
...
We actually have a total of 11 auto probers.
2021-03-09 14:16:28 +01:00
Christoph Haag
a887ddcc3c
d/hdk: Use a mutex for get_tracked_pose
2021-03-09 12:39:12 +00:00
Christoph Haag
5c014193f7
d/vive_controller: Use a mutex for get_tracked_pose and update_inputs
2021-03-09 12:39:12 +00:00
Christoph Haag
aa65480607
d/vive: Use a mutex for get_tracked_pose
2021-03-09 12:39:12 +00:00
Christoph Haag
484d63a4eb
d/survive: Use thread for processing events
...
Due to an oversight libsurvive events were only processed when inputs were updated.
If only triggering event processing when an event is needed, we would need to process
a random number of events, causing random overhead.
Rather, follow the model of other drivers and process events in a thread.
This required creating a local copy of the xrt_input arrays.
Fixes #113
Fixes !679
v2: Use a mutex for get_tracked_pose and update_inputs
2021-03-09 12:39:12 +00:00
Christoph Haag
1e24602ca0
st/prober: fix off by one in reallocating list of disabled drivers
2021-03-09 13:22:41 +01:00
Jakob Bornecrantz
966b4b7048
t/service: Enable tracing
2021-03-08 11:20:52 +00:00
Jakob Bornecrantz
7524239b1f
t/oxr: Enable tracing
2021-03-08 11:20:52 +00:00
Jakob Bornecrantz
b4f9d07abf
ipc: Trace markers
2021-03-08 11:20:52 +00:00
Jakob Bornecrantz
f754fb583f
st/oxr: Trace markers
2021-03-08 11:20:52 +00:00
Jakob Bornecrantz
8c724d67d4
c/main: Trace markers
2021-03-08 11:20:52 +00:00
Jakob Bornecrantz
fac1ce4a5a
c/main: Hookup up new frame timing code
2021-03-08 11:20:52 +00:00
Jakob Bornecrantz
a40c2e7d50
aux/vk: Load VK_GOOGLE_display_timing functions
2021-03-08 11:20:52 +00:00
Jakob Bornecrantz
e2104a4f31
t/cli: Add trace piping support
2021-03-08 11:20:52 +00:00
Jakob Bornecrantz
049f6be351
u/timing: Add frame timing code
2021-03-08 11:20:52 +00:00
Jakob Bornecrantz
3077660f1d
u/tracing: Add trace marker code
2021-03-08 11:20:52 +00:00
Mateo de Mayo
75e908552f
doc: Fix missing entities from modules documentation
2021-03-06 20:34:35 -03:00
Christoph Haag
12ad9a6766
d/ns: Remove tracker logic in favor of tracking overrides
2021-03-02 19:43:19 +01:00
Christoph Haag
44e375dd8a
aux/util: Save tracking override config
2021-03-02 19:43:19 +01:00
Christoph Haag
c077788436
aux/util: Store calibration config non-destructively
...
On save
* delete only nodes pertaining to calibration
* add new calibration nodes
* write config file
2021-03-02 19:43:19 +01:00
Christoph Haag
de169bf575
gui: Add gui for tracking overrides
2021-03-02 19:43:19 +01:00
Christoph Haag
5e4c62c8aa
aux/util: Move json config parsing to aux/util
2021-03-02 19:43:19 +01:00
Christoph Haag
aa9298f70d
aux/util: Move read_content to u_file
2021-03-02 19:43:19 +01:00
Christoph Haag
ff16eab9df
xrt: implement multi device wrappers for tracking overrides
...
Example config ~/.config/monado/config_v0.json
{
"active": "tracking",
"tracking": {
"version": 0,
"tracking_overrides": [
{
"target_device_serial": "LHR-E8CC625B",
"tracker_device_serial": "LHR-1D80A098",
"offset": {
"orientation": {
"x": 0,
"y": 0,
"z": 0,
"w": 1
},
"position": {
"x": 0,
"y": 0,
"z": 0
}
}
}
]
}
}
v2: Add multi device wrapper
2021-03-02 19:43:19 +01:00
Christoph Haag
13db11901c
d/rs: Add prober and create xrt_device for rs
2021-03-02 19:43:19 +01:00
Christoph Haag
6c6c70f700
d/rs: exit early if no realsense device is connected
...
Previously we only exited after rs2_pipeline_start_with_config timed out.
2021-03-02 19:27:36 +01:00
Christoph Haag
aa7b3978b7
d/rs: Initialize offset to identity
2021-03-02 19:27:36 +01:00
Christoph Haag
9332bb04c8
st/prober: Disable vive driver when we have survive
...
Unless survive is disabled via config, then don't disable vive.
2021-03-02 17:50:19 +00:00
Christoph Haag
ebd4b8eae4
st/prober: Add ability to skip drivers
...
Only for drivers loaded with probers and autoprobers for now.
Example config:
{
"disabled": [
"survive"
]
}
2021-03-02 17:50:19 +00:00
Christoph Haag
279520c302
d/survive: Use autoprober interface
2021-03-02 17:50:19 +00:00
Christoph Haag
a89f32470e
cli: Print built in drivers from driver names
...
for probers and auto probers only for now
2021-03-02 17:50:19 +00:00
Christoph Haag
58e68e0a4a
st/prober: Allow querying entries and autoprobers
2021-03-02 17:50:19 +00:00
Christoph Haag
37c96ee7fb
xrt: Add a static driver_name to probers
2021-03-02 17:50:19 +00:00
Christoph Haag
6914bae78e
d/ns: Add autoprober name
2021-03-02 17:50:19 +00:00
Christoph Haag
9ea02ac032
d/vive: Give consistent name to HMD
2021-03-02 17:50:19 +00:00
Christoph Haag
6e852ec9a0
d/survive: Give consistent name to HMD
2021-03-02 17:50:19 +00:00
Christoph Haag
92d94ddcc7
d/psvr: Don't report created device if creation failed
2021-03-02 17:50:19 +00:00
Christoph Haag
ea404a265b
st/prober: Print name of misbehaving autoprober
2021-03-02 17:50:19 +00:00
zhibinw
57b42cad9a
ipc/android: Start client listener thread when get new fd from client.
2021-03-02 14:02:54 +08:00
Jakob Bornecrantz
d6eda06ae2
doc: Remove md prefix from all Markdown pages
2021-03-01 19:42:52 +00:00
Jakob Bornecrantz
ecfec5028e
xrt: Add doccomment and fix doxygen error
2021-03-01 19:31:25 +00:00
Mateo de Mayo
116d77f52e
st/prober: Allow autoprobe function to create more than one device.
2021-02-28 15:27:52 +00:00
zhibinw
f55c0d7bfb
t/service-lib: Remove unused header.
2021-02-27 09:55:26 +08:00
Ryan Pavlik
1963e313b1
ipc/android: Switch to using client push mutex to avoid cond var wait in server.
2021-02-24 15:25:28 -06:00
Ryan Pavlik
12e07bdb69
ipc/android: Fix potential lost signal to client
2021-02-24 15:23:26 -06:00
Ryan Pavlik
ccf6ac4b94
ipc/android: Remove old workaround
2021-02-24 15:23:26 -06:00
Ryan Pavlik
01fbbc4ed5
ipc/server, t/server_lib: Implement mainloop code for Android, using a pipe.
2021-02-24 15:23:26 -06:00
Jakob Bornecrantz
5e06acf2ad
t/cli: Tidy
2021-02-24 14:33:34 +00:00
Jakob Bornecrantz
48c2fe1f87
c/main: Refactor out wait idle to own function
2021-02-24 14:33:34 +00:00
Jakob Bornecrantz
616b7f6ae0
c/main: Tidy comp_target_swapchain
2021-02-24 14:33:34 +00:00
Jakob Bornecrantz
77baa0c6ca
u/ht: Sort build files
2021-02-24 14:33:34 +00:00
Jakob Bornecrantz
7460ae54f4
u/timing: Rename files
2021-02-24 14:33:34 +00:00
Jakob Bornecrantz
b810c2df0a
u/timing: Improve render code, predict when frame should be delivered
2021-02-24 14:33:30 +00:00
Jakob Bornecrantz
55c7690185
u/time: Make defines more readable and add more defines
2021-02-24 13:55:07 +00:00
Jakob Bornecrantz
69eebb49e2
u/time: Use double for time conversion
2021-02-24 04:14:51 +00:00
Jakob Bornecrantz
5291b8d2bb
ipc: Refactor out broadcasting of timings
2021-02-24 01:23:55 +00:00
Jakob Bornecrantz
97d7902f94
targets: Show implot demo
2021-02-22 23:20:05 +00:00
Jakob Bornecrantz
4cf20b0dd3
imgui: Add implot demo
2021-02-22 23:20:05 +00:00
Ryan Pavlik
f15a14b193
ipc/server: Factor out the mainloop code that may vary between platforms
2021-02-22 17:03:16 -06:00
Ryan Pavlik
0644521da9
d/ht: Fix typo in docs
...
Fixes doxygen warning.
2021-02-22 16:50:00 -06:00
Ryan Pavlik
b7cc966cb0
aux/vk: Add docs to helpers
2021-02-22 16:50:00 -06:00
Moses Turner
daff282946
ipc: don't drop the blend mode on the floor
2021-02-19 17:47:07 -06:00
Christoph Haag
4d1b5f033a
d/vive: Add controller rotation pose prediction
2021-02-17 19:59:59 +01:00
Christoph Haag
ab70115a89
d/vive: Add HMD rotation pose prediction
2021-02-17 19:59:52 +01:00
Jakob Bornecrantz
5b61a9b905
st/oxr: Fix crash
2021-02-16 22:53:49 +00:00
Jakob Bornecrantz
2849c7c5ae
st/oxr: Quirk UnrealEngine
2021-02-16 17:55:23 +00:00
Jakob Bornecrantz
4ef6211286
st/oxr: Detect UnrealEngine
2021-02-16 17:55:23 +00:00
Jakob Bornecrantz
0ee32dfa21
st/oxr: Log application info
2021-02-16 17:55:23 +00:00
Jakob Bornecrantz
84486aa2b9
ipc/server: Print application info
2021-02-16 17:55:23 +00:00
Jakob Bornecrantz
cfed1c3607
st/oxr: It's not a error to pass in XrSystemHandTrackingPropertiesEXT
...
...when the hand tracking extension is not enabled.
2021-02-16 07:04:40 +00:00
Christoph Haag
def0bef533
build/meson: Explicitly depend on generated binding header
...
fixes header not being generated on alpine
2021-02-15 22:04:38 +01:00
Christoph Haag
b77630ba57
d/remote: define _BSD_SOURCE for SOL_TCP on musl
2021-02-15 22:04:38 +01:00
Jakob Bornecrantz
78dbbec891
st/prober: Improve xrt_prober_destroy
2021-02-15 16:13:07 +00:00
Jakob Bornecrantz
2c012374da
st/prober: Add copydocs
2021-02-15 16:13:07 +00:00
Jakob Bornecrantz
a6fe8e8b1e
st/prober: Clarify xrt_prober_get_string_descriptor
2021-02-15 16:13:06 +00:00
Jakob Bornecrantz
a55c6f3cc4
st/prober: Tidy and add doc-comment
2021-02-15 16:13:00 +00:00
Jakob Bornecrantz
165df31d77
st/prober: Use U_LOG_RAW for dump function
2021-02-15 15:13:51 +00:00
Christoph Haag
d56834f7a9
d/psmv: Use bluetooth mac as serial
2021-02-15 14:55:10 +01:00
Christoph Haag
c6695b7a27
prober: return XRT_PROBER_STRING_SERIAL_NUMBER for bluetooth devices
...
Using the bluetooth id gotten from uevent.
2021-02-15 14:54:54 +01:00
Christoph Haag
42996d6b1c
os/hid: Add get_physical_address()
2021-02-12 02:44:00 +01:00
Christoph Haag
a4bde60e08
st/steamvr: Use serial number for controller id
2021-02-12 00:38:52 +01:00
Christoph Haag
d5e74b959a
d/vive: Improve naming scheme
2021-02-12 00:38:52 +01:00
Christoph Haag
c66aea3311
d/survive: Improve device naming scheme
2021-02-12 00:38:52 +01:00
Christoph Haag
c67a6ccd34
xrt: Add xrt_device::serial for uniquely identifying devices if possible
...
d: Make controller serials unique by appending number
For drivers that do not (yet) know a persistent unique id per device.
2021-02-12 00:38:51 +01:00
Christoph Haag
ea6d6bfb3f
d/rs: Use XRT_INPUT_GENERIC_TRACKER_POSE instead of XRT_INPUT_GENERIC_HEAD_POSE
2021-02-12 00:37:43 +01:00
Christoph Haag
9760f6d123
d/survive: Create devices for trackers
...
They can not be queried yet.
2021-02-12 00:37:43 +01:00
Christoph Haag
47ed26a5e8
xrt: Add XRT_INPUT_GENERIC_TRACKER_POSE
2021-02-11 20:54:31 +01:00
Christoph Haag
7e1408787a
d/survive: Update to new API and clean up
...
* Remove survive_device.{ctrl,hmd}::variant and use variant from config
* Use SurviveSimpleEventType_ConfigEvent to find connected devices
* Use SurviveSimpleEventType_PoseUpdateEvent for pose updates
2021-02-11 20:54:31 +01:00
Christoph Haag
3a02610e77
d/vive: Remove vive_controller_device::variant and use variant from config
2021-02-11 20:54:31 +01:00
Christoph Haag
f93209a1ed
d/vive: Remove vive_device::variant and use variant from config
2021-02-11 20:54:31 +01:00
Christoph Haag
2d814dab57
aux/vive: Parse hmd variant and add various model strings
...
Model strings collected from libsurvive, survive_default_devices.c
2021-02-11 20:54:31 +01:00
Ryan Pavlik
d8aad83932
d/ht: Fix mistaken 2029 copyright date.
2021-02-11 09:28:12 -06:00
Christoph Haag
cc81174b70
comp: Fix VkDisplayKHR direct mode build without libx11-xcb
2021-02-10 22:02:30 +01:00
Ryan Pavlik
8f0c20093c
ipc/android: Specify full qualified service name
2021-02-10 16:09:12 +00:00
Ryan Pavlik
c65ce85fe1
ipc/android: Clean up MonadoService
2021-02-10 16:09:12 +00:00
Ryan Pavlik
ee81edfe48
t/oxr_android: Fix gradle build for release 21.
2021-02-10 16:09:12 +00:00
Ryan Pavlik
51704bc2e5
math: Fix doc warnings
2021-02-10 16:09:12 +00:00
Ryan Pavlik
84508320f4
ipc: Fix typo in comment
2021-02-10 16:09:12 +00:00
Ryan Pavlik
c4108035ea
ipc: Fix doc warning
2021-02-10 16:09:12 +00:00
Christoph Haag
cfab11355d
u/hand_tracking: Hand Joint flags can only be as valid as hand flags
2021-02-10 02:58:00 +01:00
zhibinw
a5913c7b4f
aux/android:add blank line between functions
2021-02-09 22:44:07 +00:00
zhibinw
14532aceae
aux/android: Make MonadoView focusable optional
2021-02-09 22:44:07 +00:00
zhibinw
6e6a729123
aux/android: Make MonadoView not focusable/touchable
2021-02-09 22:44:07 +00:00
Christoph Haag
f5abb14422
comp: Don't allocate ubos with VK_MEMORY_PROPERTY_HOST_CACHED_BIT
...
On Tegra the only supported combinations for VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT are
* VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT
* VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT | VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT | VK_MEMORY_PROPERTY_HOST_COHERENT_BIT
* VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT | VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT | VK_MEMORY_PROPERTY_HOST_CACHED_BIT
This article agrees that we do not need host cached memory here:
https://zeux.io/2020/02/27/writing-an-efficient-vulkan-renderer/
2021-02-03 02:24:35 +01:00
Christoph Haag
00ef724392
aux/vk: Add trace info when memory type is unsupported
2021-02-03 01:44:46 +01:00
Jakob Bornecrantz
f8941fe5ee
d/vf: Declare dependency to avoid build issues
2021-02-02 13:53:48 +00:00
Jakob Bornecrantz
35da4a51ea
d/vf: Refactor code to add videotestsrc capability and break out gstreamer detection
2021-02-02 13:53:48 +00:00
Jakob Bornecrantz
5853103820
d/vive: Refactor out vive config code into auxiliary library
...
fix vive_config.h include for survive
2021-02-01 19:56:52 +01:00
Christoph Haag
b87c7d5e61
d/survive: Port to vive_config parsing
2021-02-01 15:23:19 +00:00
Christoph Haag
152587d728
build/cmake: Add vive_config include dir to survive
2021-02-01 15:23:19 +00:00
Christoph Haag
e8ac9ecee4
build/meson: Add vive_config include dir to survive
2021-02-01 15:23:19 +00:00
Christoph Haag
b2da8dfd07
build/cmake: make vive_config lib and link to vive, libsurvive
2021-02-01 15:23:19 +00:00
Christoph Haag
721b159312
build/meson: make vive_config lib and link to vive, libsurvive
2021-02-01 15:23:19 +00:00
Christoph Haag
a2e7e1c3d9
d/vive: Factor out controller config into separate struct
2021-02-01 15:23:19 +00:00
Christoph Haag
e4b0e6282d
d/vive: Factor out config into separate struct
2021-02-01 15:23:19 +00:00
Jakob Bornecrantz
8c6075e3b6
monado: Update version
2021-01-28 16:02:50 +00:00
Christoph Haag
232b8a7a49
d/ns: Fix informational message about example configs
...
v1 and v2 example configs are now in an exampleconfigs subdir.
2021-01-28 03:41:33 +01:00
Christoph Haag
be3c7dc480
d/ns: Pretty print json example config with jq
2021-01-28 03:36:18 +01:00
Jakob Bornecrantz
eec3446e5b
u/sink: Add Bayer format converter
2021-01-27 16:09:07 +00:00
Jakob Bornecrantz
5b6e6bf6a6
xrt: Add XRT_FORMAT_BAYER_GR8 format
2021-01-27 16:09:07 +00:00
Jakob Bornecrantz
bfdd3a0a5b
d/v4l2: More buffers
2021-01-27 16:09:07 +00:00
Jakob Bornecrantz
bd257500b8
d/v4l2: Expose more information
2021-01-27 16:09:07 +00:00
Jakob Bornecrantz
fa2748637a
xrt: Expose more information on frame servers
2021-01-27 16:09:07 +00:00
Jakob Bornecrantz
18fb3e7024
c/main: Lower priority on sRGB format
...
This works around a bug in the OpenXR CTS and mirrors better what at least on
other OpenXR runtime does.
2021-01-27 15:41:15 +00:00
Jakob Bornecrantz
666caaa7ae
u/timing: Fix typo
2021-01-27 14:04:29 +00:00
Jakob Bornecrantz
e375523d80
c/main: Also print format when debugging swapchain creation
2021-01-27 14:03:27 +00:00
Christoph Haag
b3592f112c
st/oxr: Check swapchain format support in st
2021-01-27 01:19:31 +01:00
Christoph Haag
b23f04fed9
comp: Return proper errors for Vulkan xrCreateSwapchain
2021-01-26 15:26:47 +00:00
Christoph Haag
b64b6f75fe
comp: Return proper errors for OpenGL xrCreateSwapchain
2021-01-26 15:26:47 +00:00
Christoph Haag
cb352839e3
st/oxr: cache VkInstance in xrGetVulkanGraphicsDeviceKHR
...
The problem:
* xrCreateVulkanDeviceKHR is passed a VkPhysicalDevice, but not a VkInstance.
* xrGetVulkanGraphicsDevice2KHR is passed a VkInstance and returns a VkPhysicalDevice
that is a child of that instance.
* xrCreateVulkanDeviceKHR must verify that the xrGetVulkanGraphicsDevice2KHR
has been called and that the passed VkPhysicalDevice matches the one returned
by xrGetVulkanGraphicsDevice2KHR.
We have to consider:
* xrCreateVulkanDeviceKHR has to work on the "correct" VkInstance, which the passed
VkPhysicalDevice is a child of.
The reqirement
> If the vulkanPhysicalDevice parameter does not match the output of
> xrGetVulkanGraphicsDeviceKHR, then the runtime must return XR_ERROR_HANDLE_INVALID.
is not 100% clear whether calling xrCreateVulkanInstance multiple times is allowed
and how a second call to xrGetVulkanGraphicsDevice2KHR with a dfferent VkInstance
should be handled.
For this implementation xrCreateVulkanDeviceKHR will only consider the most recent call
to xrGetVulkanGraphicsDevice2KHR and the VkInstance that was used for this call.
This enforces at least that VkPhysicalDevice is a child of the cached VkInstance when
xrCreateVulkanDeviceKHR is called, because using a different VkPhysicalDevice would be
an error.
2021-01-26 03:45:43 +01:00
Jakob Bornecrantz
b1e18af21e
u/distortion: Tidy Vive & Index distortion code
2021-01-25 00:12:03 +00:00
Dan Weatherford
5948e439e9
u/distortion: Fix DPOLY3_SCALED 4th coefficient application
2021-01-25 00:12:03 +00:00
Jakob Bornecrantz
17beaf8aa9
u/distortion: A stab in the dark to try and improve Index chromatic aberration
2021-01-25 00:12:03 +00:00
Jakob Bornecrantz
7d755427e3
u/distortion: Filp order of array access in distortion for Vive & Index
2021-01-25 00:12:03 +00:00
Jakob Bornecrantz
0c2d07808c
u/distortion: Make Vive & Index distortion center per channel
2021-01-25 00:12:03 +00:00
Dan Weatherford
b2569907b5
u/distortion: Fix math error in u_compute_distortion_vive
2021-01-23 14:02:31 -06:00
Dan Weatherford
bd381561d8
d/vive: Fix distortion center config parsing
2021-01-23 14:02:31 -06:00
Jakob Bornecrantz
cb51b32ff1
st/oxr: Tidy code
...
The CHECK_LAYER_TYPE tests would falsely pass on the
IPC layer as it always implements all of the functions.
2021-01-22 14:16:12 +00:00
Christoph Haag
f326ec8fc3
st/oxr: Check XrHandJointLocationsEXT::jointLocations for NULL
2021-01-22 03:34:40 +01:00
Jakob Bornecrantz
3e028a7952
st/oxr: Correctly validate quats to be within 1% of unit length
2021-01-21 00:33:32 +00:00
Jakob Bornecrantz
026fa2cebb
math: Add quat valdiate that only checks within 1% of unit length
2021-01-21 00:33:32 +00:00
Jakob Bornecrantz
797fa5459c
u/rt: Tidy and documment render timing code
2021-01-21 00:32:36 +00:00
Jakob Bornecrantz
3856ae4540
bindings: Fix double slash error
2021-01-21 00:13:42 +00:00
Jakob Bornecrantz
00b71aabd4
bindings: Update copyrights
2021-01-21 00:13:40 +00:00
Christoph Haag
f9c37d51bc
aux/bindings: Add "features" to inputs in bindings.json
...
In our model we have a "subpath" for each hardware input like "/input/trackpad".
Each of these hardware inputs has "features" like "click", "touch", "position", "force".
Ideally each of these "features" is bound to some monado input in the "monado_bindings" dict
but this is not required. bindings.json will know about hardware features even if we don't bind them (yet).
For each of these features bindings.py generates a group of related paths for a single monado binding:
For a monado input XRT_INPUT_???_TRACKPAD these paths would be generated:
/user/hand/left/input/trackpad/x
/user/hand/left/input/trackpad/y
/user/hand/left/input/trackpad
2021-01-20 18:23:09 +01:00
Christoph Haag
46ec938f8a
build: Move bindings build to bindings/subdir
...
The generated files should be in auxiliary/bindings/*.{c,h}. For this to work
meson.build has to be in the bindings/ subdir:
https://github.com/mesonbuild/meson/issues/2320
Move CMakeLists.txt there too for some consistency.
Also fixes the previous include hack.
2021-01-20 18:23:09 +01:00
Christoph Haag
07218c9878
aux: generate b_generated_bindings.{c,h} instead of xrt_generated_bindings.{c,h}
...
Follow up to 543804e53cafa83c52b61f70894696bc4d95fa7c
2021-01-20 18:23:09 +01:00
Christoph Haag
06e7e7e832
steamvr: Implement support for and default to generated input profile
2021-01-20 18:23:09 +01:00
Christoph Haag
85d3e8bdc3
build/cmake: generate steamvr input profiles
2021-01-20 18:23:09 +01:00
Christoph Haag
334864de7f
build/meson: Generate SteamVR input profiles
2021-01-20 18:23:09 +01:00
Christoph Haag
672c81e809
aux/bindings: Add script to generate steamvr input profiles
2021-01-20 18:23:09 +01:00
Christoph Haag
edd6a4cf70
xrt: Move oxr_binding_data.h to json profile generator
...
Move json profile generator to auxiliary/bindings and make generated_bindings static library.
aux/bindings: Add hardware type
aux/bindings: Add various steamvr specific things to bindings
Paths like "/input/menu/click" are used in SteamVR input profiles.
2021-01-20 18:23:09 +01:00
Christoph Haag
1b597bdd65
st/oxr: Rename sub_path variables to subaction_path
...
Subaction paths are the /user/X/Y part of the full path describing the input source/device.
"Subaction paths are a mechanism that enables applications to use the same action name and handle on multiple devices. Applications can query action state using subaction paths that differentiate data coming from each device."
Subpaths, are the input or output specific part of the full path, e.g.
"Each input source path must match the following pattern: …/input/<identifier>[_<location>][/<component>]"
2021-01-20 18:23:09 +01:00
Christoph Haag
e09d2db8e5
xrt: Add various device and input enum values
2021-01-20 18:23:09 +01:00
Christoph Haag
5764365427
steamvr: Use simple vibration as fallback
2021-01-20 18:23:09 +01:00
Christoph Haag
69fc55e15e
xrt: cast XRT_GET_INPUT_TYPE result
...
Useful for C++ compilers.
2021-01-20 18:23:09 +01:00
Christoph Haag
db2b77c9cb
build/meson: Copy steamvr assets at build time, not configure time
2021-01-20 18:23:09 +01:00
Christoph Haag
609b834670
steamvr: Add comment about pose time offset
2021-01-20 18:23:09 +01:00
Jakob Bornecrantz
c3d12a2dc4
ipc: Tidy logging
2021-01-20 16:24:47 +00:00
Jakob Bornecrantz
afea93f297
xrt: Remove prepare function from xrt_compositor
2021-01-20 15:04:09 +00:00
Jakob Bornecrantz
2b8c835b68
xrt: Introduce xrt_system_compositor
2021-01-20 15:04:09 +00:00
Jakob Bornecrantz
57bfbb615f
ipc: Tidy code and clang-format
2021-01-19 18:15:02 +00:00
Jakob Bornecrantz
a0598c07ae
st/gui: Tidy code and clang-format
2021-01-19 18:15:02 +00:00
Jakob Bornecrantz
b48036a3ff
st/oxr: Tidy code and clang-format
2021-01-19 18:15:02 +00:00
Christoph Haag
9481013081
comp: add VkDisplayKHR window backend
...
Must be activated/selected with an env var for now: XRT_COMPOSITOR_FORCE_VK_DISPLAY=2
2021-01-19 17:00:46 +00:00
Ryan Pavlik
1ea5403435
t/oxr_android: Add empty service for runtime advertisement
2021-01-19 16:13:44 +00:00
Ryan Pavlik
50ddf1c11c
gradle: Remove redundant, unused task
2021-01-19 16:13:44 +00:00
Christoph Haag
5e8338a6de
comp: Render with pose for next display time, not last
2021-01-15 18:25:27 +01:00
Jakob Bornecrantz
360dbb63a7
d/ns: Work-around clang-format stuff
2021-01-15 16:38:54 +00:00
Jakob Bornecrantz
ae6ac5fc0e
math: Work-around clang-format stuff
2021-01-15 16:38:52 +00:00
Jakob Bornecrantz
2b996f30c4
xrt: Reflow after column change
2021-01-15 13:50:32 +00:00
Jakob Bornecrantz
c6db6dc653
xrt: Change number of columns to 120
2021-01-15 13:44:44 +00:00
Christoph Haag
9c03f244b0
d/survive: Wait max 5 seconds for HMD and device configs
...
Sometimes the Index is in weird hardware states and doesn't respond properly.
In such cases, time out after 5 seconds and continue with no HMD present.
Previously we also relied on the controller configs to be already available
once the HMD config was available. In rare cases they were not - wait for
the controller configs with the same timeout.
2021-01-15 00:50:20 +01:00
Lubosz Sarnecki
621a4bbe59
aux/vk: Add formats used in CTS to format string function.
2021-01-14 13:54:19 +01:00
Lubosz Sarnecki
a786401bec
aux/vk: Lock vkCmdPipelineBarrier with pool mutex.
2021-01-14 13:54:19 +01:00
Jakob Bornecrantz
a5560f8363
c/main: Remove unused field
2021-01-14 12:30:54 +00:00
Christoph Haag
ad1e809dfc
comp: Extend nvidia VK_ERROR_INITIALIZATION_FAILED message
...
The real cause for this failure seems to be an extended desktop to the direct mode
display, not the allowhmd setting.
2021-01-13 23:51:36 +01:00
Christoph Haag
f684ae95d1
comp: Fix depth-stencil image validation warning
...
Depth-only formats must use *only* VK_IMAGE_ASPECT_DEPTH_BIT.
Depth-stencil formats must use both VK_IMAGE_ASPECT_DEPTH_BIT | VK_IMAGE_ASPECT_STENCIL_BIT.
2021-01-13 20:39:20 +01:00
Lubosz Sarnecki
b005f4e2fa
comp/vk: Guard VkCommandBuffer usage with command pool mutex.
...
Lock all queue submits with 2 mutexes using a new vk_locked_submit
function.
2021-01-13 12:42:26 +01:00
Lubosz Sarnecki
fc3b7fef25
comp/vk: Lock command pool calls with a mutex.
...
This patch resolves multithreading issues as detected by the Vulkan
validation when running the OpenXR CTS using OpenGL.
2021-01-13 12:33:15 +01:00
Lubosz Sarnecki
c97404e873
comp/vk_client: Improve error messages.
...
As we use u_logging here, new lines are redundant. Also showing the
VkError code is handy.
2021-01-13 12:33:15 +01:00
Lubosz Sarnecki
cc44816026
comp/vk: Put queue mutex around vkDeviceWaitIdle calls.
2021-01-13 12:33:15 +01:00
Lubosz Sarnecki
9a9d46b85a
comp/vk: Lock our only VkQueue with a mutex.
...
This resolved mutlithreading issues as seen in the `multithreading` test
of the OpenXR CTS.
This patch fixes the test on Vulkan Android and resolves Vulkan
validation errors when running on Linux with OpenGL.
2021-01-13 12:33:15 +01:00
Lubosz Sarnecki
fd58ccecc9
drv/android: Fill in xrt_device str.
2021-01-13 12:33:15 +01:00
Moses Turner
a1ed0b293c
d/rs: predict pose
...
d/rs: predict pose
2021-01-12 17:15:40 -06:00
Moses Turner
baf0e1acfb
d/rs: apply offset to t265 pose, d/ns: fix up some minor things, load realsense offset from json file
2021-01-12 15:28:18 -06:00
Moses Turner
fc47d0baad
d/ns: fix polynomial distortion math again, document nonsensical parts of polynomial math, update config files
2021-01-12 15:28:18 -06:00
Moses Turner
684daa3293
d/ns: possibly fix mesh calculation
...
also fix flipped tracking tracking
2021-01-12 13:01:37 -06:00
Moses Turner
365692e9ca
d/ns: Hopefully make v2 driver read ipd from baseline in v2 config files
2021-01-12 13:01:37 -06:00
Moses Turner
735d9654ec
d/ns: apply right eye fov correctly
2021-01-12 13:01:37 -06:00
Christoph Haag
637b5658da
d/survive: Predict poses for requested time
2021-01-11 23:50:01 +00:00
Christoph Haag
e785053c0a
aux/math: special case delta_s == 0 in m_predic
...
Rather than asserting in the underlying math functions we return the
trivial values for prediction with 0s.
2021-01-11 23:50:01 +00:00
Jakob Bornecrantz
1e4a540bb9
aux/math: Add prediction module
...
For the time being all angular velocities are relative to the space a xrt_space_relation is in.
2021-01-11 23:50:01 +00:00
Jakob Bornecrantz
271e2b0275
st/oxr: Remove dynamic prediction code
2021-01-11 23:50:01 +00:00
Jakob Bornecrantz
079f3769d4
st/oxr: Convert the given at_time when asking for relations from devices
2021-01-11 23:50:01 +00:00
Jakob Bornecrantz
fdd87a0239
d/rs: Save a lot more data from the latest pose
2021-01-11 23:50:01 +00:00
Christoph Haag
729f726135
steamvr: Request hmd pose at current time instead of 1
2021-01-11 23:50:01 +00:00
Christoph Haag
8f3816a5fc
u_time: Make time_s_to_ns take double, not floa
2021-01-11 23:50:01 +00:00
Jakob Bornecrantz
eea8036e91
c/client: Ensure that EGL_ANDROID_native_fence_sync
2021-01-11 16:50:02 +00:00
Christoph Haag
726c752db2
comp: Add support for list of optional device extensions
...
If one of the supplied optional extensions is VK_GOOGLE_display_timing and it is
supported by the driver, vk_bundle::has_GOOGLE_display_timing will be set to true.
2021-01-07 19:12:41 +01:00
Christoph Haag
4d652fef5a
st/oxr: Implement XR_KHR_vulkan_enable2
2021-01-06 13:40:59 +00:00
Christoph Haag
f8a4f35572
oxr: Add XR_KHR_vulkan_enable2 to ext generator script
2021-01-06 13:40:59 +00:00
Christoph Haag
3085e29c97
u/hand_tracking: Curl fingers based on joint, increase total curl angle
...
When making a fist, different joints curl at different angles, reflect
this more directly in the code.
Also increase total curl to make it easier to hold ingame objects.
2021-01-06 13:34:31 +00:00
Christoph Haag
679a1233ee
d/ht: Set up tracking origin with no offset
2021-01-06 13:29:36 +00:00
Christoph Haag
e2c1bc1d16
xrt: Rename hand_origin to hand_pose
...
hand_origin is confusing because it implies it is the origin of the coordinate system the hand is in.
It actually is the hand pose in the "global" coordinate system.
2021-01-06 13:29:36 +00:00
Christoph Haag
c84dbad03e
u/device: Add U_DEVICE_ALLOC_NO_FLAGS
...
Allows using U_DEVICE_ALLOCATE without flags without a cast.
2021-01-06 13:29:36 +00:00
Christoph Haag
d85224e7c3
d/ht: Don't create hand tracking driver without successful init
...
Fixes a crash when no calibrated camera is found.
2021-01-06 13:29:36 +00:00
Christoph Haag
7831e38c02
u/device: Assign left/right hand trackers if no controllers are available
...
Previously the left/right role assignment considered only device types
* XRT_DEVICE_TYPE_LEFT_HAND_CONTROLLER
* XRT_DEVICE_TYPE_RIGHT_HAND_CONTROLLER
* XRT_DEVICE_TYPE_ANY_HAND_CONTROLLER
This adds XRT_DEVICE_TYPE_HAND_TRACKER for consideration, but only if none
of the above are present.
2021-01-06 13:29:36 +00:00
Christoph Haag
6d7dff360c
d/psmv: Scale rumble value on zcm1
...
The motor on my psmv controller does not rumble at amplitudes < 0.25.
2021-01-06 13:23:28 +00:00
Christoph Haag
3848d2be3f
st/oxr: Add env vars for global tracking origin offset
...
This commit is a band aid until a more proper room setup is implemented.
It allows moving the tracking offset for the device roles head, left and right by a fixed value.
A y tracking offset OXR_TRACKING_ORIGIN_OFFSET_Y=1.0 would tell monado that the current tracking
origin is 1 meter above the desired tracking origin, e.g. when the headset was calibrated to a
(0,0,0) position while sitting on table 1 meter above the floor.
This environment variable affects STAGE space, but not LOCAL space.
2021-01-06 13:03:47 +00:00
Jae Lee
a71de192e0
illixr: Add initial integration.
2020-12-29 23:44:57 +00:00
Jakob Bornecrantz
15320d9ebe
c/client: Insert fence and give sync handle on layer_commit (EGL for now only)
2020-12-28 15:22:46 +00:00
Jakob Bornecrantz
32c9cb1bf3
c/main: Make sure to close sync handles on layer_commit
2020-12-28 15:22:06 +00:00
Jakob Bornecrantz
c191c9a466
ipc: Support sending sync handles on layer_commit
2020-12-28 15:22:06 +00:00
Jakob Bornecrantz
84d4b6aaae
ipc/shared: Support sending graphics sync handles
2020-12-28 15:22:06 +00:00
Jakob Bornecrantz
1302b07d68
xrt: Add sync_handle argument to layer_commit
2020-12-28 15:22:06 +00:00
Jakob Bornecrantz
e67ef85c0c
t/ctl: Tidy printing
2020-12-28 14:21:03 +00:00
Lubosz Sarnecki
1038145ffd
ipc: Port to u_logging.
2020-12-28 13:04:11 +00:00
Lubosz Sarnecki
4acab28f3f
c/client: Port printfs to static u_logging.
2020-12-28 13:04:11 +00:00
Lubosz Sarnecki
34563276e8
targets/openxr/sdl2_hack: Port to static u_logging.
2020-12-28 13:04:11 +00:00
Lubosz Sarnecki
12a3a24315
st/gui+steamvr_drv: Port to u_logging.
2020-12-28 13:04:11 +00:00
Lubosz Sarnecki
521daac012
st/oxr: Port to u_logging.
...
Remove foo print.
Use correct ENV variable XRT_COMPOSITOR_LOG for Vulkan log.
2020-12-28 13:04:11 +00:00
Lubosz Sarnecki
a8b01a89f3
st/prober: Port to u_logging.
2020-12-28 13:04:11 +00:00
Lubosz Sarnecki
55d6d57392
aux/math: Port to u_logging.
2020-12-28 13:04:11 +00:00
Lubosz Sarnecki
ba1d966f9f
aux/vk: Port to u_logging.
...
Fix log calls where no valid state struct was provided.
2020-12-28 13:04:11 +00:00
Lubosz Sarnecki
58ecf67515
aux/tracking: Port to u_logging.
2020-12-28 13:04:11 +00:00
Lubosz Sarnecki
e350e42ca9
aux/os/ble_dbus: Use printf padding.
2020-12-28 13:04:11 +00:00
Lubosz Sarnecki
79dde59f7e
aux/os/ble_dbus: Port to u_logging.
2020-12-28 13:04:11 +00:00
Lubosz Sarnecki
853458ed37
xrt: Port commented printfs to u_logging.
2020-12-28 13:04:11 +00:00
Lubosz Sarnecki
0302a47e6f
d/realsense: Port to static u_logging.
2020-12-28 13:04:11 +00:00
Lubosz Sarnecki
8ce0f73585
d/vive/conteroller: Porting to static u_logging.
2020-12-28 13:04:11 +00:00
Lubosz Sarnecki
0708863e55
d/ohmd: Port to u_logging.
2020-12-28 13:04:11 +00:00
Lubosz Sarnecki
e0b2c4ad2e
d/ohmd: Make env variables consistent with driver name.
2020-12-28 13:04:11 +00:00
Lubosz Sarnecki
2dbb6a6bb8
d/daydream: Port to u_logging.
...
Port static printfs to u_logging.
2020-12-28 13:04:11 +00:00
Lubosz Sarnecki
1ba7d803a0
d/hydra: Port to u_logging.
...
Port printfs to static u_logging.
2020-12-28 13:04:11 +00:00
Lubosz Sarnecki
00b2778504
d/arduino: Port to u_logging.
2020-12-28 13:04:11 +00:00
Lubosz Sarnecki
6a2221115d
d/ns: Port to u_logging.
2020-12-28 13:04:11 +00:00
Lubosz Sarnecki
a9703f6b39
d/survive: Port to u_logging.
2020-12-28 13:04:11 +00:00
Lubosz Sarnecki
2be5e32b67
d/v4l2: Port to u_logging.
2020-12-28 13:04:11 +00:00
Lubosz Sarnecki
e6b2c1f2c7
d/vf: Port to u_logging.
2020-12-28 13:04:11 +00:00
Lubosz Sarnecki
1f85d1c2ba
d/hdk: Port to u_logging.
2020-12-28 13:04:11 +00:00
Lubosz Sarnecki
abad99b956
service: Use new u_logging ENV variable for compositor.
2020-12-28 13:04:11 +00:00
Lubosz Sarnecki
adcd0aff1a
u/logging: Implement global log level.
...
Adds a `XRT_LOG` environemnt option.
Example:
```
XRT_LOG=debug
```
2020-12-28 13:04:11 +00:00
Lubosz Sarnecki
8bdff9a61a
u/logging: Implement optional color logging.
...
Check if stderr is a tty.
2020-12-28 13:04:11 +00:00
Lubosz Sarnecki
9ce9fa9238
u/logging: Align log level prefixes.
2020-12-28 13:04:11 +00:00
Lubosz Sarnecki
b1c700a500
d/survive: Ignore -Wignored-qualifiers in survive header.
2020-12-28 13:04:11 +00:00
Boris-Chengbiao Zhou
98ef9a8ef7
comp: Fix Wayland backend
2020-12-28 04:13:22 +01:00
Christoph Haag
31c4c14042
steamvr: Make serial unique by appending xrt_hand
...
Monado gives both Playstation Move controllers the same xrt device name.
fixes #109
2020-12-25 22:56:54 +01:00
Christoph Haag
d5183336b3
d/ohmd: Add display left rotation for Oculus Rift DK2
2020-12-23 11:51:51 +01:00
Lubosz Sarnecki
d55c2b016a
d/vf: Use static logging if no object is provided.
...
Found by clang11 warning.
2020-12-16 15:10:10 +01:00
Lubosz Sarnecki
9351673e55
st/steamvr_drv: Silence unfixable OpenVR cpp warnings.
2020-12-16 15:10:10 +01:00
Lubosz Sarnecki
d0262c8613
c/comp: Fix switch fall through warning in gcc10.
2020-12-16 15:07:28 +01:00
Lubosz Sarnecki
c03decd4d9
d/ht: Remove unused variable. Fixes warning on gcc 10.
2020-12-16 15:02:46 +01:00
Jakob Bornecrantz
c30c4c011d
c/main: Silence warnings and make sure that layer configs are picked up
2020-12-15 14:27:31 +00:00
Lubosz Sarnecki
200fb5aeed
c/layers: Don't build equirect code if not enabled.
2020-12-14 18:59:28 +00:00
Lubosz Sarnecki
4995854d06
c/layers: Implement equirect1 rendering.
...
Add equirect1 boilerplate, shader files, ubo and pipeline.
2020-12-14 18:59:28 +00:00
Lubosz Sarnecki
dc45a201db
c+ipc+st: Complete equirect1 boilerplate.
2020-12-14 18:59:28 +00:00
Lubosz Sarnecki
c8bdfae83e
src: Consistently append 1 to equirect1 code.
...
Rename XRT_FEATURE_OPENXR_LAYER_EQUIRECT_LEGACY to XRT_FEATURE_OPENXR_LAYER_EQUIRECT1.
Use correct define in verify_equirect1_layer function.
Rename equirect to equirect1.
meson: enable equirect1 by default.
2020-12-14 18:59:28 +00:00
Lubosz Sarnecki
f334b8b6c7
src: Consistently append 2 to equirect2 code.
...
Rename XRT_FEATURE_OPENXR_LAYER_EQUIRECT to XRT_FEATURE_OPENXR_LAYER_EQUIRECT2.
Rename equirect to equirect2.
Rename shader files.
2020-12-14 18:59:28 +00:00
Christoph Haag
b2337469a4
st/prober: Make video file input work with no camera connected
2020-12-14 18:55:15 +00:00
Christoph Haag
30d7001df1
ipc: Make OXR_DEBUG_GUI=1 work with monado-service
2020-12-14 18:53:07 +00:00
Christoph Haag
49202eda87
d/psvr: Make get_tracked_pose thread safe
2020-12-14 02:00:09 +01:00
Christoph Haag
ada506513f
comp: Add XRT_COMPOSITOR_DEFAULT_FRAMERATE variable, default to 60
...
This variable only has an effect if
* The compositor is not run in direct mode (which uses the actual refresh interval of the chosen mode)
* The HMD driver does not default to a refresh ate by settting hmd->screens[0].nominal_frame_interval_ns
2020-12-10 16:36:22 +01:00
Christoph Haag
99e8416cac
comp: Hook up xcb fullscreen and display settings to variables
2020-12-10 16:33:38 +01:00
Christoph Haag
199536c575
comp: Default xcb window to VK_PRESENT_MODE_IMMEDIATE_KHR
...
VK_PRESENT_MODE_FIFO_KHR leads to unsteady 60 fps.
2020-12-10 16:33:34 +01:00
Jakob Bornecrantz
39186a1e1e
ipc/server: Rename ipc_server_client.c to ipc_server_handler.c
2020-12-09 21:03:50 +00:00
Jakob Bornecrantz
4b74d6b7eb
ipc/server: Remove (f)printf usage from code
2020-12-09 21:03:50 +00:00
Jakob Bornecrantz
1154e58d06
ipc/server: Refactor out per_client_thread
2020-12-09 21:03:50 +00:00
Jakob Bornecrantz
743c289be5
xrt: Code style
2020-12-09 21:03:50 +00:00
Jakob Bornecrantz
a5bf14502c
t/hand: Remove per frame printing
2020-12-09 21:03:50 +00:00
Christoph Haag
7b4ac89a8f
t/hand: warn when rectification matrix doesn't match image matrix
2020-12-07 12:30:26 +00:00
Christoph Haag
693cd77ca3
t/hand: Add comment that rectification is expensive
2020-12-07 12:30:26 +00:00
Christoph Haag
f0d21c1dcc
d/vf: Add video file playback driver
2020-12-07 12:30:26 +00:00
Christoph Haag
e480352cee
t/hand: Add hand tracking module
2020-12-07 12:30:26 +00:00
Christoph Haag
717d3a27ef
d/ht: Add hand tracking driver code skeleton
2020-12-07 12:30:26 +00:00
Christoph Haag
f7a8e8810b
xrt: Split hand tracking input name into left/right
...
oxr_hand_tracker now stores which xdev and input name it tracks.
2020-12-07 11:43:51 +00:00
Ryan Pavlik
61c36f5a52
t/oxr: Export the right symbol on Windows.
2020-12-06 23:07:05 +00:00
Ryan Pavlik
ee755961fc
comp: Guard more of the caps-detector with an ifdef.
2020-12-06 23:07:05 +00:00
Ryan Pavlik
8b4e3aafa5
comp: Remove unused macro
2020-12-06 23:07:05 +00:00
Ryan Pavlik
535f20b503
inc/xrt: Reference the Vulkan extension table from related data.
2020-12-06 23:07:05 +00:00
Ryan Pavlik
5ea9fe04a3
comp: Add comments near Vulkan extension lists about updating docs.
2020-12-06 23:07:05 +00:00
Ryan Pavlik
90e307bf8a
util: Port logging to OutputDebugString on Windows
2020-12-06 23:07:05 +00:00
Ryan Pavlik
0cb64ce5bd
comp/main: Windows work - got a window to appear!
2020-12-06 23:07:05 +00:00
Ryan Pavlik
2743790180
comp/main: Remove *nix-only include
2020-12-06 23:07:05 +00:00
Lubosz Sarnecki
049bc385b1
xrt: Remove unused XRT_DEVICE_ANDROID.
2020-12-01 18:05:32 +01:00
Lubosz Sarnecki
cf2fe0e2c3
d/android: Use XRT_DEVICE_GENERIC_HMD device name.
2020-12-01 18:05:32 +01:00
Lubosz Sarnecki
a3e5daaa18
android/service_taget: Store native window pointer as global.
2020-12-01 18:05:32 +01:00
Lubosz Sarnecki
5a2ff41c7a
android/service_target: Init ipc server in Android service.
2020-12-01 18:05:32 +01:00
Lubosz Sarnecki
1430b1b22c
ipc/server: Add Android main entry point which receives fd.
2020-12-01 18:05:32 +01:00
Lubosz Sarnecki
baa68fac4f
ipc/server_process: Don't init listen socket and epoll on Android.
...
As the equivalent is already done in Java.
2020-12-01 18:05:32 +01:00
Lubosz Sarnecki
3202922ce7
ipc/server: Factor out start_server_thread function.
2020-12-01 18:05:32 +01:00
Lubosz Sarnecki
db95b34e6c
android/Client: Start IPC process in thread.
2020-12-01 18:05:32 +01:00
Lubosz Sarnecki
373a3096a9
c/window_android: Use cached surface from IPC.
...
Create window if activity is cached for in process.
2020-12-01 18:05:32 +01:00
Lubosz Sarnecki
92dab7b75b
android/Client: Create Android surface for OoP.
2020-12-01 18:05:32 +01:00
Lubosz Sarnecki
37e87d1942
android/MonadoView: Make native pointer optional.
2020-12-01 18:05:32 +01:00
Lubosz Sarnecki
0a6bfe6d96
aux/android_globals: Provide API to store a native window globally.
2020-12-01 18:05:32 +01:00
Lubosz Sarnecki
020df327fa
MonadoView: Don't be a Hilt view. Resolve exception.
...
Resolves:
java.lang.IllegalStateException: class org.freedesktop.monado.auxiliary.MonadoView, Hilt view must be attached to an @AndroidEntryPoint Fragment or Activity.
2020-12-01 18:05:32 +01:00
Ryan Pavlik
4101b3d92d
android: IPC/service-related cleanups.
2020-12-01 18:05:32 +01:00
Ryan Pavlik
974e7bd1d5
ipc/android: Be a foreground service
2020-12-01 18:05:32 +01:00
Ryan Pavlik
b92646c778
t/oxr_android: Bind ServiceNotificationImpl
2020-12-01 18:05:32 +01:00
Ryan Pavlik
fe6507d64e
t/android_common: Implement IServiceNotification
2020-12-01 18:05:32 +01:00
Ryan Pavlik
94d747cac9
aux/android: Create an interface for handling foreground service notification
2020-12-01 18:05:32 +01:00
Ryan Pavlik
a2a61cb5cf
ipc/android: Improve Client
2020-12-01 18:05:32 +01:00
Ryan Pavlik
70542fbb3b
t/oxr_android: Split android UI that is not target-specific to a separate common target.
2020-12-01 18:05:32 +01:00
Ryan Pavlik
2fe699d7c1
xrt/android: Actually start using dependency injection in Java/Kotlin code.
2020-12-01 18:05:32 +01:00
Ryan Pavlik
3c3d628f0c
t/oxr_android: Add resources and build code to grab the CDDL license for display.
...
Used by a dependency of Hilt.
2020-12-01 18:05:32 +01:00
Ryan Pavlik
885dd1d4d5
gradle: Handle kotlin in multiple parts of the build
2020-12-01 18:05:32 +01:00
Ryan Pavlik
fa840e1cd8
ipc/android: Initial port of parts to Kotlin.
2020-12-01 18:05:32 +01:00
Ryan Pavlik
b2f751ae99
aux/android: More null checks
2020-12-01 18:05:31 +01:00
Ryan Pavlik
f6aff9196a
t/oxr_android: Mention out-of-proc in app name resource
2020-12-01 18:05:31 +01:00
Ryan Pavlik
9a92b8f76c
st/oxr_android: Provide a shutdown runtime button in activity.
2020-12-01 18:05:31 +01:00
Ryan Pavlik
e4a346ad0b
ipc/android: Clean ups and debug messages
2020-12-01 18:05:31 +01:00
Ryan Pavlik
d9053e0dc5
ipc/android: Single point of truth for action name.
2020-12-01 18:05:31 +01:00
Ryan Pavlik
aa222ebba1
ipc/android: Clean up, adjust action name, adjust manifest.
2020-12-01 18:05:31 +01:00
Ryan Pavlik
d9453c708e
ipc/android: Bump minSdkVersion
2020-12-01 18:05:31 +01:00
Ryan Pavlik
d53e2dd7e2
st/oxr_android: Add icon to VR Listener service
2020-12-01 18:05:31 +01:00
Ryan Pavlik
7b5aad0be2
st/oxr_android: Declare sensor usage in manifest
2020-12-01 18:05:31 +01:00
Ryan Pavlik
635542f905
gradle: Break release build on a // STOPSHIP comment
2020-12-01 18:05:31 +01:00
Ryan Pavlik
23e01fc656
gradle: Factor out the dependency versions to a build-wide variable
2020-12-01 18:05:31 +01:00
Lubosz Sarnecki
4d45bfeb1b
cmake: Fix Android linking error
2020-12-01 18:05:31 +01:00
Lubosz Sarnecki
144a5751f6
android/ipc/Client.java: call connectSync.notify().
2020-12-01 18:05:31 +01:00
Ryan Pavlik
da68bf502b
ipc/client: Start using Android-specific code if needed.
2020-12-01 18:05:31 +01:00
Ryan Pavlik
9c7cfa0229
ipc/android: Add Android-specific native code library.
2020-12-01 18:05:31 +01:00
Ryan Pavlik
3011e3c9f6
ipc/android: Add a blocking connect Java method, and small clean-ups.
2020-12-01 18:05:31 +01:00
Ryan Pavlik
04318b4104
meson: Generate a mock Android config header.
2020-12-01 18:05:31 +01:00
Lubosz Sarnecki
d493044e55
d/android: Use display metrics instead of hardcoded Pixel 3 values.
2020-12-01 17:36:15 +01:00
Lubosz Sarnecki
c0ab34a355
aux/android: Implement display metrics acquisition.
2020-12-01 17:36:15 +01:00
Lubosz Sarnecki
ae76b5037d
c/renderer: Fix right eye viewport when not pre-rotating.
...
Scale X / Y were swapped incorrectly.
2020-12-01 15:46:21 +01:00
Jakob Bornecrantz
6fc0e1cda5
u/sink_converter: Silence warning
2020-11-30 17:52:58 +00:00
Jakob Bornecrantz
242faf9b60
u/sink_converter: Refactor allocation function a bit more
2020-11-30 17:52:58 +00:00
Christoph Haag
3b992a4508
u/sink_converter: Remove u_sink_converter::frame
2020-11-30 15:38:21 +00:00
Christoph Haag
5a4df61885
u/sink_converter: Clarify dst frame of format conversions
2020-11-30 15:38:19 +00:00
Christoph Haag
49587412bd
u/sink_converter: clarify ensure_data()
2020-11-30 15:38:15 +00:00
Christoph Haag
9873588d08
sdl2hack: Don't call SDL_Quit()
...
It crashes client applications that use SDL2 on their own.
2020-11-30 15:38:13 +00:00
Christoph Haag
3d3361706c
os/threading: Fix typo in comment
2020-11-30 15:38:07 +00:00
Christoph Haag
3168eb750d
d/remote: Only define __USE_MISC if not defined
2020-11-30 15:38:06 +00:00
Lubosz Sarnecki
c4683bb059
c/renderer: Pre-rotate display for transformed surfaces.
...
This resolves VK_SUBOPTIMAL_KHR warnings when preseting the swap chain
on systems likes Android.
https://android-developers.googleblog.com/2020/02/handling-device-orientation-efficiently.html
2020-11-27 16:50:55 +01:00
Lubosz Sarnecki
bd68c0e5f5
aux/math: Implement math_matrix_2x2_multiply.
2020-11-27 16:50:55 +01:00
Christoph Haag
f6839ee4bf
st/oxr: Add view space case to hand tracking data
2020-11-23 20:42:54 +00:00
Christoph Haag
f7cbe37c2d
u/hand_tracking: Tweak hand model parameters
...
* shortened way too long bones
* tweaked offset positions
2020-11-23 20:42:54 +00:00
Christoph Haag
006971ae7a
u/hand_tracking: Calculate joint velocities
...
And return them in the state tracker
2020-11-23 20:42:54 +00:00
Christoph Haag
aa6e5f7fdf
u_hand_tracking: Fix typo in u_hand_tracking_model
2020-11-23 20:42:54 +00:00
Christoph Haag
191fe7a59f
st/oxr: Add verification of XrHandJointVelocitiesEXT
2020-11-23 20:42:54 +00:00
Christoph Haag
f5ef3985ba
xrt: Add support for locating hand joints in action spaces
2020-11-23 20:42:54 +00:00
Christoph Haag
95af586654
aux: Add m_space_graph_add_inverted_relation
2020-11-23 20:42:54 +00:00
Christoph Haag
d6b072805a
aux: Add m_space_relation_invert
2020-11-23 20:42:54 +00:00
Ryan Pavlik
4307ee8a08
st/oxr: Fix exporting of negotiate function.
2020-11-23 14:27:21 -06:00
Ryan Pavlik
de36a64f27
st/gui: Don't export symbols from cimgui
2020-11-23 14:27:21 -06:00
Ryan Pavlik
883fe27aed
t/gui: Fix linking on Windows
2020-11-23 14:27:21 -06:00
Ryan Pavlik
147dcc24e0
comp/main: Fix finding M_PI
2020-11-23 14:27:21 -06:00
Ryan Pavlik
8b4c473233
comp/main: Change annotation for struct packing for MSVC compatibility.
2020-11-23 14:27:21 -06:00
Ryan Pavlik
6fbd12bde4
comp/main: near and far are keywords on Windows.
2020-11-23 14:27:21 -06:00
Ryan Pavlik
66811b436a
xrt: Have the vk_helper vk_create_device take in a list of device extensions, and fix usages.
2020-11-23 14:27:21 -06:00
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