Lubosz Sarnecki
a786401bec
aux/vk: Lock vkCmdPipelineBarrier with pool mutex.
2021-01-14 13:54:19 +01:00
Lubosz Sarnecki
0e4e4efe79
cmake: Turn on XRT_FEATURE_OPENXR_LAYER_EQUIRECT1 by default.
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
6455b1b829
doc: Document MR 645.
2021-01-13 12:33:15 +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
7a030e36ae
build/meson: Build and run tests
...
closes #97
2021-01-07 22:15:08 +01: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
030e43e7d1
doc: Add changelog for 633
2021-01-06 13:40:59 +00:00
Christoph Haag
4d652fef5a
st/oxr: Implement XR_KHR_vulkan_enable2
2021-01-06 13:40:59 +00:00
Christoph Haag
3e4f9d5b6f
external: Update OpenXR includes to 1.0.13
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
58900f1db9
doc: add changelog for mr 635
2021-01-06 13:34:31 +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
057f65630f
doc: Add changelog for mr 636
2021-01-06 13:23:28 +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
712763c5c6
doc: Add changelog for mr 634
2021-01-06 13:03:47 +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
Christoph Haag
345e9eab56
build/cmake: Enable survive driver when libsurvive is installed
...
The same change was recently done in meson in 8c4b6cef
closes #111
2021-01-05 22:56:00 +01: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