Patrick Nicolas
a8dc902468
a/vk Add extentions for DMA-buf
2022-11-13 22:56:06 +00:00
Ryan Pavlik
2eb259f26a
aux: can not -> cannot
2022-11-09 14:48:38 -06:00
Ryan Pavlik
1fb6270194
a/util: Resolve a bothersome clang-tidy complaint in iterators.
2022-11-09 08:26:16 -05:00
Ryan Pavlik
290fafa4f7
a/util: Fix missing pragma once
2022-11-09 08:26:16 -05:00
Mateo de Mayo
77f8972f36
d/vive: Add hardcoded quaternions for SLAM extrinsics
...
These come from my own calibration and are hopefully better than the wrong ones
reported by the factory data.
2022-11-08 12:02:34 -06:00
Mateo de Mayo
c3757792d7
d/vive: Generate SLAM calibration automatically from factory data
...
Use factory data for SLAM calibration. Sensor rotations are off in most calib
files we saw (or at least we can't figure something better) so this won't work
very well. It's still necessary to properly calibrate the headset for good
results but at least now something works without that step.
2022-11-08 17:41:43 +00:00
Jakob Bornecrantz
6ba07d564c
a/vk: If global priority is not available, only allow medium queues
2022-11-04 10:46:42 +00:00
Jakob Bornecrantz
379bf36860
a/vk: Also try to use VK_KHR_global_priority when creating device
2022-11-04 10:46:42 +00:00
Jakob Bornecrantz
b6803b4bf8
a/vk: Add VK_KHR_global_priority
2022-11-04 10:46:42 +00:00
Mateo de Mayo
9d6c29397f
misc: Fix multiple compile warnings in gcc and clang
2022-11-03 20:08:52 +00:00
Jakob Bornecrantz
45937312bd
a/vk: Print out error on too many images to allocate
2022-11-03 17:43:06 +00:00
Jakob Bornecrantz
a41ccb0467
a/vk: Use xrt limits for number of collection images max
2022-11-03 17:43:06 +00:00
Moses Turner
b8a586175d
a/util: Add header for box intersection over union
2022-11-03 16:46:33 +00:00
Jakob Bornecrantz
c4a734e546
a/tracking: Do not push empty frames to debug sink
2022-11-02 17:55:58 +00:00
Jakob Bornecrantz
0f17fa0f5f
a/tracking: Fix data waiting logic in PSVR tracking
2022-11-02 17:55:58 +00:00
Jakob Bornecrantz
7b1c18255a
u/pacing: Work around issues with frame reuse
...
The code creates a frame with the timing information, and keeps track of the
times the applications does various things during the frame loop. Like
starting to render and finished rendering and so on. It keeps track of that
frame until it has determined that the application or the system compositor
will never do anything thing with that frame.
Now the allocation side of thing is very simple, just a long array of
FRAME_COUNT size that is reused with frame_id % FRAME_COUNT. So if the
application or the compositor keeps a frame along for too long it will try to
reuse that frame. The code has asserts to catch this. Making FRAME_COUNT makes
that re-use more unlikely.
2022-11-02 00:22:19 +00:00
Jakob Bornecrantz
51730d2db1
a/vk: Improve the VkResult to string printing (NFC)
2022-10-30 20:17:09 +00:00
Mateo de Mayo
bf66a9595c
build: Fix undefined reference to u_sink_create_queue
...
When XRT_FEATURE_SLAM is on, t_euroc_recorder.cpp is linked.
This depends on u_sink_queue.c.
2022-10-30 11:34:57 -03:00
Jakob Bornecrantz
f9c6c0d016
a/ogl: Only link to EGL on Android
2022-10-27 17:19:57 +00:00
Jakob Bornecrantz
d33b2b136f
a/os: Add comments about DSOs
2022-10-27 17:19:57 +00:00
Jakob Bornecrantz
637c49c1ea
a/os: Refactor out BLE functions into own library
2022-10-27 17:19:57 +00:00
Jakob Bornecrantz
96eabd1347
a/os: Add BLE stub functions
2022-10-27 17:19:57 +00:00
Jakob Bornecrantz
d4a77da827
a/util: Add comments about DSOs
2022-10-27 17:19:57 +00:00
Jakob Bornecrantz
e629bbbe2b
a/util: Split out process functions into own library
2022-10-27 17:19:57 +00:00
Jakob Bornecrantz
8ca60f4304
a/util: Split out sink functions into own library
2022-10-27 17:19:57 +00:00
Mateo de Mayo
80fdf7317f
t/slam: Add SLAM_UI option to enable the external system UI
2022-10-17 21:33:17 +00:00
Jakob Bornecrantz
12bb18a34c
u/file: Fix define checks being erroneous
2022-10-12 13:05:39 +01:00
Jakob Bornecrantz
1cafa92c3b
u/pacing: Refactor out tracing writing to own function
2022-10-11 20:33:56 +01:00
Jakob Bornecrantz
5ed13c6cc2
u/pacing: Account for present slop in assert
2022-10-11 20:33:56 +01:00
Julian Petrov
2e4c857a5a
u/process: Make u_process work on non-linux systems
2022-10-09 15:21:37 +01:00
Julian Petrov
c7a5a0bc1b
u/file: Make more functions work on Windows
2022-10-09 15:21:37 +01:00
Jakob Bornecrantz
08f6440aa4
u/pacing: Trace GPU info
2022-09-28 21:46:56 +00:00
Jakob Bornecrantz
f63c786ac9
u/pacing: Add gpu_info to u_pacing_compositor
2022-09-28 21:46:56 +00:00
Jakob Bornecrantz
da542e3f5e
u/pacing: Introduce latched and retired calls on app pacer
2022-09-28 21:46:56 +00:00
Jakob Bornecrantz
7eacf6bd7a
u/pacing: Refactor out tracing writing to own function
2022-09-28 21:46:56 +00:00
Jakob Bornecrantz
4ec3512641
u/pacing: Track session_id on app pacer
2022-09-28 21:46:56 +00:00
Jakob Bornecrantz
b6b9004fb2
u/pacing: Tidy
2022-09-28 21:46:56 +00:00
Jakob Bornecrantz
d1d845e430
u/pacing: Make sure to set predicted_display_time_ns
2022-09-28 21:46:56 +00:00
Jakob Bornecrantz
b5b832f612
u/trace_marker: Silence deprecation from percetto defines
2022-09-22 22:00:32 +01:00
Moses Turner
d5dd9a264e
a/util: Remove C++ guards and pragma once from C source file
2022-09-22 01:11:33 -05:00
Moses Turner
833787c492
u/tracked: Add u_tracked_imu_3dof
2022-09-21 01:52:15 +01:00
Moses Turner
d48792d9a9
u/sink: Ensure that image frames have monotonic timestamps
2022-09-21 01:52:15 +01:00
Moses Turner
17e0c39df2
u/sink: Add u_imu_sink_force_monotonic and u_imu_sink_split
2022-09-21 01:52:15 +01:00
Moses Turner
48e8894b74
u/json: Add u_json_get_pose_permissive
...
To parse poses from non-Monado configs with non-standard member names.
2022-09-21 01:52:15 +01:00
Moses Turner
b31eb76718
u/json: Add u_json_get_pose
2022-09-21 01:52:15 +01:00
Moses Turner
d91975299d
u/config: Use cJSON_Delete instead of cJSON_Free for gui scene parsing
2022-09-21 01:52:15 +01:00
Moses Turner
d2e2c3a988
cmake: Run cmake-format.sh
2022-09-19 21:57:37 +01:00
Mateo de Mayo
3d366b9243
gui: Fix layout file not being created for the first time on Windows
...
By ensuring imgui.ini exists.
Also enabled u_config_json_open_or_create_file for Windows as this OS has an
implementation of u_file_get_path_in_config_dir available now.
2022-09-19 17:19:12 +00:00
Moses Turner
bd265c611d
d/ns: update Moses's distortion method
2022-09-19 11:20:04 -05:00
Moses Turner
d04139bedd
u/file: Add u_file_read_content_from_path
...
Useful for Simula builder and North Star builder which both read straight from a path
2022-09-19 11:17:34 -05:00
Moses Turner
17acb376f9
xrt: Fix some typos that codespell caught
2022-09-11 23:32:28 -05:00
Jakob Bornecrantz
11a4f776e5
a/vk: Add vk_cmd_buffer_create helper
2022-09-09 10:46:21 +01:00
Jakob Bornecrantz
500d5b9954
a/vk: Rename command buffer helpers
2022-09-09 10:43:49 +01:00
Jakob Bornecrantz
eeaaaf398b
a/vk: Add helper to get buffer handle types
...
The image version of it was used for buffers as well.
2022-09-07 20:42:27 +01:00
Jakob Bornecrantz
a0d63d2f9c
u/wait: Add wait helper
2022-09-07 15:06:57 +00:00
Mateo de Mayo
d47d0ce2d9
u/logging: Log to stderr in Windows
2022-09-02 22:43:24 +00:00
Jarvis Huang
7be4163b91
d/android: Fix errors while getting display metrics
2022-09-02 16:25:12 +00:00
Jarvis Huang
52c790d1a9
t/android: Store jvm/context in service-lib
2022-09-02 16:25:12 +00:00
Jarvis Huang
25e96a508c
aux/android: Using DexClassLoader to load class
2022-09-02 16:25:12 +00:00
Jakob Bornecrantz
767637abb8
a/vk: Add image view with usage creation helper
2022-08-25 16:57:56 +01:00
Jakob Bornecrantz
fa02407726
a/vk: Add mutable R8G8B8A8_[UNORM|SRGB] image creation helper
2022-08-25 16:57:54 +01:00
Jakob Bornecrantz
a5efaceba5
a/vk: Add small chain helper
2022-08-25 16:57:36 +01:00
Jakob Bornecrantz
e79b23275b
a/vk: Remove unused vk_get_access_flags function
2022-08-25 15:06:09 +01:00
Jakob Bornecrantz
90f3adcdd1
a/vk: Group code
2022-08-25 15:06:09 +01:00
Jakob Bornecrantz
e7c217cea5
a/vk: Track various limits
2022-08-25 15:06:09 +01:00
Jakob Bornecrantz
b0f51acf77
a/vk: Track maintenance extensions
2022-08-25 15:05:44 +01:00
Christoph Haag
3c9ef82060
a/math: Add math_matrix_4x4_transform_vec3
2022-08-25 12:41:07 +01:00
Ryan Pavlik
fc0f390a87
aux/ogl: Add WGL wrapper to the build.
2022-08-22 19:53:50 +00:00
Moses Turner
4de631285b
u/hand: Fix finger ordering
2022-08-22 13:19:48 +01:00
Jakob Bornecrantz
7e24b1dfe7
u/hand: Move common init into init helper function
2022-08-14 16:16:27 +01:00
Jakob Bornecrantz
e6efcd7a02
u/hand: Take xrt_hand enum instead of bool
2022-08-14 16:16:27 +01:00
Jakob Bornecrantz
2b05bfc709
u/hand: Constify arguments
2022-08-14 16:16:27 +01:00
Moses Turner
386117c5ee
NFC: a/math: Make math_quat_from_swing prettier
2022-08-13 19:31:58 +00:00
Jan Schmidt
f8a486884b
u/u_json: Implement u_json_get_int_array()
2022-08-10 18:30:08 +01:00
Jan Schmidt
ce13de9484
aux/math: Add math_matrix_3x3_from_quat()
...
Add a function to get a 3x3 rotation matrix
from a quaternion.
2022-08-10 18:30:08 +01:00
Mateo de Mayo
dabf592d59
t/euroc: Add lock for IMU recording queue
2022-08-10 14:28:59 +00:00
Aidan Thornton
4840def448
a/math: add math_matrix_2x2_transform_vec2
2022-08-10 12:39:44 +00:00
Ryan Pavlik
831c2aefaf
a/math: Fix doc warning
2022-08-08 16:44:24 +00:00
Ryan Pavlik
e6da9b8090
a/d3d: Fix doc warning
2022-08-08 16:44:24 +00:00
Ryan Pavlik
094498dbf3
a/vk: Fix up and factor out external image support check
2022-08-08 16:44:24 +00:00
Christoph Haag
c24e482e5e
st/oxr: Make OpenXR timestamps relative to service startup
...
This solves a problem where OpenXR timestamps could become invalid
(negative) in certain circumstances:
The timestamps that the OpenXR state tracker returned were offset such
that they appeared to start at OpenXR application startup time.
However monado-service is a long running service using system timestamps.
Because of this, if monado-service started work using a system timestamp
acquired before an OpenXR application started, then this system timestamp
could not be converted into an OpenXR without becoming invalid.
With this change, the OpenXR timestamps for OpenXR applications are offset
such that they appear to start at monado-service startup time instead.
As a side effect, all OpenXR applications connected to the same
monado-service instance will receive timestamps from the same domain.
2022-08-08 15:52:18 +00:00
danwillm
c4a290aa97
xrt/util: Fix typo with number of joints per finger
2022-08-01 17:33:40 +00:00
danwillm
1dee288459
aux/util: Share joint width hand tracking function
2022-08-01 17:33:40 +00:00
danwillm
9e7f814328
aux/util: Remove old hand tracking code
2022-08-01 17:33:40 +00:00
danwillm
9dc8632b0f
aux/util: Add u_hand_simulation
...
Co-authored-by: Moses Turner <moses@collabora.com>
2022-08-01 17:33:40 +00:00
Moses Turner
0c4b45c6c2
a/util: Add DEBUG_GET_ONCE_TRISTATE_OPTION
2022-07-27 10:49:29 +00:00
Ryan Pavlik
980ad86008
a/vk: Get and show some external buffer data on startup, too.
2022-07-26 14:45:29 +00:00
Ryan Pavlik
576b158a83
a/d3d: Add some d3d12 features
2022-07-26 14:45:29 +00:00
Ryan Pavlik
5c24b8e637
xrt: Define D3D12 interface
2022-07-26 14:45:29 +00:00
Ryan Pavlik
ee26b5f575
a/d3d: Split out some d3d11 stuff from generic
2022-07-26 14:45:29 +00:00
Ryan Pavlik
842c160c49
a/util: Guard against bad defs of "max"
2022-07-26 14:45:29 +00:00
Ryan Pavlik
413c8230ff
a/d3d: Clean up formats
2022-07-26 14:45:29 +00:00
danwillm
0943ce10be
a/util, xrt: u_hand_tracking interface change
2022-07-25 23:57:45 +01:00
Mateo de Mayo
ae8305f324
u/deque: Add generic wrapper for std::deque
2022-07-25 19:08:46 +00:00
Mateo de Mayo
c181909b0d
t/slam: Add debug sinks
2022-07-22 16:19:49 +00:00
Ryan Pavlik
f69b6d6320
a/vk: Annotate some must-check-return functions
2022-07-14 14:17:35 +00:00
Ryan Pavlik
107f56b6d9
a/util: Resolve warnings
2022-07-14 14:17:35 +00:00
Ryan Pavlik
88389ae0ca
a/math: Resolve warnings.
2022-07-14 14:17:35 +00:00
Mateo de Mayo
f55ac05578
t/slam: Implement feature count metric UI and recording
2022-07-12 12:47:05 +00:00
Mateo de Mayo
789111daf8
u/var: Add u_var_curves
2022-07-12 12:47:05 +00:00