Christoph Haag
e21f4a2458
t/ctl: Add usage information
2021-07-07 00:49:28 +02:00
Christoph Haag
250ef94d71
st/oxr: Don't go to READY after EXITING
...
The STOPPING state has two possible follow up paths:
STOPPING -> IDLE -> READY
STOPPING -> IDLE -> EXITING
After EXITING, the application must call xrDestroySession; there is no meaningful
session state after EXITING.
To go to the READY state again, the application should first create a new session.
Applications that are lazy and drain the entire event queue and only handle
the last encountered state would be affected by "skipping" the EXITING state.
2021-07-02 15:19:00 +00:00
Jakob Bornecrantz
5838d737b3
u/sink: Tidy and add some comments to queue sink (NFC)
2021-06-27 00:59:24 +00:00
Jan Schmidt
8192e74f76
d/wmr: Compute visible region for render rectangle.
...
Use the distortion function to calculate the visible limits of the
display and then configure the rendered FoV angles accordingly.
2021-06-26 03:52:32 +10:00
Jan Schmidt
dfe932ffd7
d/wmr: Add an extensible headset map.
...
Add a mechanism for recognising known headsets and handling specific
init/deinit sequences for those that need it.
2021-06-26 03:52:29 +10:00
Dan Weatherford
6bb3577b1b
d/wmr: Implement Lenovo explorer support.
...
Recognise the Lenovo explorer device
2021-06-26 03:52:29 +10:00
Jan Schmidt
bad625965a
d/wmr: Extract JSON configuration from the firmware.
...
Pull in the WMR config obfuscation key and extract the JSON
calibration data.
Based on a patch from Dan Weatherford <sabretooth@gmail.com>
2021-06-26 03:52:26 +10:00
Dan Weatherford
3ca80e9607
d/wmr: Add functions to read raw config data
...
Co-authored-by: Jakob Bornecrantz <jakob@collabora.com>
2021-06-26 03:52:26 +10:00
Jan Schmidt
0cf7b4a9b3
d/wmr: Add render distortion configuration
...
Take the parameters from the headset configuration and the existing
render FoV, and use them to instantiate a distortion mesh.
TODO: Reverse the distortion in order to calculate good FoV range
that covers the full view for each headset.
2021-06-26 03:52:23 +10:00
Jan Schmidt
f663727b07
d/wmr: Add some groundwork for config parsing.
...
Sketch out some groundwork for parsing WMR config blocks,
using some hard-coded values from my headset for now. Later,
this will be parsed from the headset JSON blob.
2021-06-26 03:52:16 +10:00
Dan Weatherford
fabf01ff39
aux/math: Add math_quat_slerp()
2021-06-25 17:40:07 +01:00
Jan Schmidt
4581a7a9a6
aux/math: Implement math_matrix_3x3_inverse.
...
Add a function to invert 3x3 matrices, to reverse 2D
affine transforms.
2021-06-25 17:40:07 +01:00
Christoph Haag
bcc50dbd4f
st/oxr: Add checks for Vulkan graphics bindings
2021-06-25 01:10:25 +02:00
Moses Turner
7461c57043
cmake: make ulv2 build a little better
2021-06-23 23:40:43 +01:00
Jakob Bornecrantz
47470cc8e2
d/ns: Use fread when reading from config file
2021-06-21 12:29:31 -05:00
Moses Turner
3569e4f2ed
d/ns: Fix 3D distortion FOV calc
...
co-authored-by: Nico Zobernig <nico.zobernig@gmail.com>
2021-06-21 12:29:31 -05:00
Moses Turner
bcadbea3aa
d/ns: Clean utility_northstar a bit
2021-06-21 12:29:31 -05:00
Moses Turner
7e385aa810
d/ns: Big refactor
2021-06-21 12:29:31 -05:00
Moses Turner
93ec678110
aux/util: Add North Star "VIPD" and "polynomial 2D" distortion methods
2021-06-21 12:29:31 -05:00
Moses Turner
017997fba3
aux/math: Add math_map_ranges function
2021-06-21 12:29:31 -05:00
Moses Turner
01bfed1694
aux/util: Make new u_extents_2d as alternative to u_device_simple_info
2021-06-21 14:49:35 +00:00
Jakob Bornecrantz
e554f9ee02
ipc: Fix NULL check stopping main app visibility events from working
2021-06-18 20:13:46 +01:00
Christoph Haag
ccb9777a47
d/vive: Set hand tracking values to actives
...
fixes !716 which introduced the need for setting hand joint active status.
2021-06-16 23:17:07 +02:00
Ryan Pavlik
ad44f42b24
aux/vk: Add fence import for windows
2021-06-15 17:37:14 -05:00
Ryan Pavlik
2d20a6436c
comp: Wrap a unistd include for Windows.
2021-06-15 17:37:14 -05:00
Jakob Bornecrantz
ebc2208a73
c/main: Also resize on VK_SUBOPTIMAL_KHR
2021-06-15 19:45:14 +00:00
Jakob Bornecrantz
9996d686e4
c/main: Tidy
2021-06-15 19:45:14 +00:00
Jakob Bornecrantz
1eebc12780
c/main: Refactor out viewport calculation into own function
2021-06-15 19:45:14 +00:00
Jakob Bornecrantz
6d011e25d4
c/main: Give the correct queue family argument to vkGetPhysicalDeviceSurfaceSupportKHR
2021-06-15 19:45:14 +00:00
Jakob Bornecrantz
f38932cb64
c/main: Tidy comp_renderer fence creation a bit
2021-06-15 19:45:14 +00:00
Jakob Bornecrantz
65ca3113f8
c/main: Allow to specifiy image usage for target images
2021-06-15 19:45:14 +00:00
Jakob Bornecrantz
fd1a916e0b
c/main: Tidy and add a bit of debug to comp_target_swapchain
2021-06-15 19:45:14 +00:00
Jakob Bornecrantz
0f07e5b899
c/main: Tweak swapchain formats a bit
2021-06-15 19:45:14 +00:00
Jakob Bornecrantz
928ae5b27a
c/render: Add support for non-freeable descriptor pools
2021-06-15 19:45:14 +00:00
Jakob Bornecrantz
6c033658a8
c/render: Add support for storage image descriptors
2021-06-15 19:45:14 +00:00
Jakob Bornecrantz
8a7d857dde
aux/vk: Add the option to handle optional device features
2021-06-15 19:45:14 +00:00
Jakob Bornecrantz
4bbc13f5d4
aux/vk: Add support for VK_EXT_robustness2 and tidy
2021-06-15 19:45:14 +00:00
Jakob Bornecrantz
bf27691280
aux/vk: Refactor out optional extension handling
2021-06-15 19:45:14 +00:00
Jakob Bornecrantz
57d24ecdbb
aux/vk: Make it possible to get a compute only queue
2021-06-15 19:45:14 +00:00
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