Ryan Pavlik
c713ca61f2
t/psmv: Rotate IMU into something like camera space
2019-10-24 15:44:01 +01:00
Jakob Bornecrantz
ccd139ab68
xrt: Add xrt_atomic_cmpxchg
2019-10-23 23:39:22 +01:00
Ryan Pavlik
e90ea99aa8
comp: Adjust frame waiting logic to behave correctly.
...
Some sub-calculations are still slightly hacky,
but now the overall structure is correct.
2019-10-23 17:18:46 +02:00
Jakob Bornecrantz
742fe05dd8
comp: Cody style shaders
2019-10-23 11:07:33 +01:00
Jakob Bornecrantz
127e5e67b4
comp: Cut-off is not needed
2019-10-23 10:21:33 +01:00
Jakob Bornecrantz
8301bd8d4c
external: Refactor out sdl functions from main cimguo.cpp
2019-10-22 21:37:03 +01:00
Jakob Bornecrantz
60be24e119
external: If out non-implemented imgui init functions
2019-10-22 21:24:58 +01:00
Ryan Pavlik
939c41aba9
st/oxr: If the app called request-exit, go to exiting instead of ready.
2019-10-22 21:14:04 +02:00
Jakob Bornecrantz
6b99e2fbdc
d/psvr: Add new imu code, but it's stubbed out... Unless?
2019-10-22 19:51:24 +01:00
Jakob Bornecrantz
35ae8f31ce
d/vive: Add some variable tracking
2019-10-22 18:52:52 +01:00
Ryan Pavlik
713830338e
st/oxr: Allow wait frame in headless since it does more than just waiting.
2019-10-22 17:29:04 +00:00
Lubosz Sarnecki
5becb60714
d/vive: Use different device string for each variant.
2019-10-22 19:18:47 +02:00
Lubosz Sarnecki
02dc839ca8
d/vive: Add initial support for the Valve Index.
2019-10-22 19:18:47 +02:00
Lubosz Sarnecki
2ed3109c95
d/vive: Add initial support for Vive Pro.
2019-10-22 19:18:47 +02:00
Lubosz Sarnecki
e063e8245e
d/vive: Add native driver for the Vive.
...
This adds a driver for the Vive family of devices based on Philipp
Zabel's ouvrt.
The driver currently only handles the IMU and main board report streams,
but is able to acquire the JSON configuration and utilize it for IMU
calibration as well as distortion configuration.
2019-10-22 19:18:47 +02:00
Lubosz Sarnecki
8e6cc11d69
external: Add nxjson.
2019-10-22 19:18:47 +02:00
Lubosz Sarnecki
a1d729af8f
os/hid: Add os_hid_get_feature_timeout.
2019-10-22 19:18:47 +02:00
Lubosz Sarnecki
6eb1086578
st/prober: Add string functions.
...
Functions for printing and matching xrt_proper_string.
2019-10-22 19:18:47 +02:00
Ryan Pavlik
e2428ee7fa
st/oxr: Handle request exit session and stopping state
2019-10-22 18:00:00 +02:00
Jakob Bornecrantz
0826ff9273
st/oxr: xrCreateActionSpace is fully implemented
2019-10-22 15:19:23 +01:00
pblack
e32902843c
comp: Add chromatic aberration correction to mesh
2019-10-22 14:44:26 +01:00
Jakob Bornecrantz
cd5153dead
xrt: Spelling
2019-10-22 12:10:20 +01:00
Jakob Bornecrantz
937f5d582a
st/oxr: Refactor logging options to instance
2019-10-22 11:47:25 +01:00
Jakob Bornecrantz
ce57fae37d
st/oxr: Actually implement oxr_slog_abort
2019-10-22 11:45:21 +01:00
Jakob Bornecrantz
0b16e1e94d
d/v4l2: Set the timestamp
2019-10-22 09:44:39 +01:00
Jakob Bornecrantz
4d0b2f0b81
d/v4l2: Better control quirking tools
2019-10-21 17:21:28 +01:00
Jakob Bornecrantz
24bc8135e0
t/hsv: Add a debug sink
2019-10-19 23:15:51 +01:00
Jakob Bornecrantz
dcd9bbb4d7
st/gui: Use r8g8b8 or l8 converter
2019-10-19 23:15:49 +01:00
Jakob Bornecrantz
f38f631fe8
aux/util: Add special r8g8b8x8 or l8 converter
2019-10-19 23:15:48 +01:00
Jakob Bornecrantz
078ac7c59e
st/oxr: Slightly better error message
2019-10-19 22:18:29 +01:00
Jakob Bornecrantz
e56271d968
st/oxr: Add super hacky debug gui
2019-10-15 20:54:57 +01:00
Jakob Bornecrantz
5f1078675d
st/gui: Do not call prober select in debug scene
2019-10-15 20:54:52 +01:00
Jakob Borncrantz
7239282aab
st/prober: Add tracking factory variable tracking
2019-10-15 21:05:37 +02:00
Jakob Borncrantz
d245fc33c9
d/ohmd: Add variable tracking
2019-10-15 21:00:12 +02:00
Jakob Borncrantz
0bc91ab1cd
cmake: Make sure to link to pthreads
2019-10-15 21:00:12 +02:00
Ryan Pavlik
f4f07da0c2
t/file: Comment matrix sizes since entirely generic matrix types used.
2019-10-15 20:50:32 +02:00
Ryan Pavlik
bc081bee80
t/psmv: cleanup/comments
2019-10-15 20:50:32 +02:00
Jakob Bornecrantz
f8ee9281f8
t/calibration: Move more data storage to C portion
2019-10-13 10:48:07 +01:00
Jakob Bornecrantz
43c366ad41
t/file: Save more calibration data
2019-10-12 22:07:49 +01:00
Jakob Bornecrantz
9ec1205f37
t/api: Add comments and put all files in tracking group
2019-10-12 12:24:19 +01:00
Jakob Bornecrantz
a435817a6f
t/file: Add comments and restyle (NFC)
2019-10-12 12:23:42 +01:00
Lubosz Sarnecki
783a36fbcc
st/prober: Add libusb error strings and can open function.
...
The prober will now output libusb errors as string. This patch also adds
a `can_open` function to the prober, that opens and closes device with
libusb to ensure devices can be opened.
This makes it possible to ensure early that permissions on the device
are correct.
2019-10-11 15:56:30 +01:00
Lubosz Sarnecki
6ec8721899
xrt: Add num_devices to prober found interface.
...
In order to access multiple devices the prober found interface needs to
pass the length of the device list. This patch updates the found
interface in all drivers.
2019-10-11 15:56:20 +01:00
Lubosz Sarnecki
3e8bd73e34
d/hdk: Use float to avoid implicit cast.
2019-10-11 15:55:18 +01:00
Jakob Bornecrantz
fece0458b6
t/psmv: Make it possible to get the tracked ball pose
2019-10-11 15:40:42 +01:00
Jakob Bornecrantz
a0a4fa3399
st/oxr: Fixes for ball on stick bindings
2019-10-11 15:40:39 +01:00
Drew DeVault
bca5899fcc
meson: fix build with 0.52+
2019-10-10 23:21:27 +00:00
Drew DeVault
202d1d72aa
openxr/meson.build: remove install: true
...
This removes the meson feature warnings.
2019-10-10 22:58:10 +00:00
Drew DeVault
7f16e7230f
oxr_verify.cpp: rewrite in C
2019-10-10 22:54:19 +00:00
Drew DeVault
d7debdb724
oxr_logger.cpp: rewrite in C
2019-10-10 22:54:19 +00:00
Drew DeVault
6c275f0aae
oxr_event.cpp: rewrite in C
2019-10-10 22:54:19 +00:00
Drew DeVault
904d58d365
oxr: track list of sessions; poll sessions
2019-10-10 22:51:21 +00:00
Drew DeVault
a736812f63
oxr: mostly implement XR_SESSION_LOSS_PENDING
...
This is missing support for xrPollEvents, which needs to be handled
separately as it's not properly rigged up throughout Monado yet.
2019-10-10 22:51:21 +00:00
Jakob Bornecrantz
bffe802449
t/psmv: Adjust room position in prober instead
2019-10-10 23:47:51 +01:00
Ryan Pavlik
3630dae537
t/psmv: FindLowestScore template param renames
...
Less terse
2019-10-10 21:48:09 +00:00
Ryan Pavlik
430e27d084
t/psmv: Use new imu fusion in psmv positional tracking.
2019-10-10 21:48:09 +00:00
Ryan Pavlik
18f9760986
tracking: Add t_imu: simple IMU fusion for absolute orientation
2019-10-10 21:48:09 +00:00
Ryan Pavlik
b00f5315c2
t/psmv: Initial Kalman filter.
...
Rotation a little out of control right now because still using bad fusion.
2019-10-10 21:48:09 +00:00
Ryan Pavlik
85b6c7222d
tracking: Add t_fusion for Kalman filter added code.
2019-10-10 21:48:09 +00:00
Ryan Pavlik
c660183848
external: Add multi-header version of FlexKalman.
...
Takes off a little build time compared to single-header version.
2019-10-10 21:48:09 +00:00
Jakob Bornecrantz
315d3b65f1
comp: Do not destry VK_NULL_HANDLE buffers and memory
2019-10-10 22:11:09 +01:00
Jakob Bornecrantz
7680038f8b
t/gui: Request forward compatible OpenGL version and minimum 3.2
2019-10-10 16:06:57 +01:00
pblack
1dacea071d
d/psvr: Add hacked mesh distortion
2019-10-10 13:28:01 +01:00
Jakob Bornecrantz
e86628884b
comp: Add disabled shader debugging code
2019-10-10 13:28:01 +01:00
Jakob Bornecrantz
2db8138e8e
comp: Hack in a flip of the right eye
2019-10-10 13:28:01 +01:00
Jakob Bornecrantz
fafbe287e1
comp: Clamp UV textures to a black border
2019-10-10 13:28:01 +01:00
pblack
898c1b4a9f
comp: Add mesh distortion shader
2019-10-10 13:28:01 +01:00
pblack
b351e8cd75
aux/util: Don't overwrite distortion info
2019-10-10 01:52:45 +01:00
Jakob Bornecrantz
102e36efc9
st/gui: Don't include glad directly
2019-10-09 22:11:41 +01:00
Jakob Bornecrantz
1afc4df95c
st/gui: Refactor gui code into it's own state tracker
2019-10-09 21:53:21 +01:00
Jakob Bornecrantz
e327d56bf4
aux/ogl: Introduce a single small OpenGL library
2019-10-09 17:07:23 +01:00
Jakob Bornecrantz
420f25c7f7
t/gui: Refactor out SDL2 code
2019-10-09 16:32:58 +01:00
Jakob Bornecrantz
473047962f
d/psvr: Correct screen size
2019-10-08 11:19:14 +01:00
Jakob Bornecrantz
acd2c50470
aux/math: Rework offset transformation
...
This reverts commit 0d9aaae470
, and changes it.
2019-10-08 11:19:14 +01:00
Jakob Bornecrantz
0d9aaae470
aux/math: Correct(?) transform
2019-10-08 01:04:46 +00:00
Jakob Bornecrantz
68e7544f57
comp: Free window swapchain VkImageViews & VkSwapchainKHR
2019-10-08 00:04:25 +01:00
Jakob Bornecrantz
649bf88379
comp: Make sure to free VkImageViews on swapchains
2019-10-07 23:48:39 +01:00
Jakob Bornecrantz
0108207b3d
comp: Use VK_NULL_HANDLE
2019-10-07 23:27:09 +01:00
Jakob Bornecrantz
1d9009a461
comp: Set array_size
2019-10-07 23:26:43 +01:00
Benjamin Saunders
3d5872f346
comp: Fix missing usages on Vulkan client swapchains
2019-10-07 22:08:56 +01:00
Ryan Pavlik
23e7f99a71
t/psmv: More algorithm simplification/optimization
2019-10-07 12:39:56 +00:00
Ryan Pavlik
7e358ea721
t/psmv: Simplify final stage of tracking.
2019-10-07 12:39:56 +00:00
Ryan Pavlik
d7d12a69f8
aux/tracking: Remove unused functions.
...
Use cv::norm instead.
2019-10-07 12:39:56 +00:00
Ryan Pavlik
09f984258f
t/psmv: Improve finding the nearest blob.
...
No more need to construct a vector every time.
2019-10-07 12:39:56 +00:00
Ryan Pavlik
5d9311bd30
d/psmv: Fix size of tracking ball.
2019-10-07 12:39:56 +00:00
Ryan Pavlik
76aa839f5b
a/track: Simplify.
2019-10-07 12:39:56 +00:00
Ryan Pavlik
37d4eae37a
a/track: Fix typo.
2019-10-07 12:39:56 +00:00
Jakob Bornecrantz
d8cd9ffcdd
st/prober: Better error printing
2019-10-04 10:32:02 +01:00
Jakob Bornecrantz
f2fcfd98e1
aux/os: Return 'errno' on device open failure
2019-10-04 10:32:02 +01:00
Lubosz Sarnecki
979536dd4b
xrt/comp/cmake: Enable build of Wayland backend.
...
Add pkgconfig based Wayland build including protocol generation.
2019-10-02 12:22:42 +02:00
Jakob Bornecrantz
51f3fac192
aux/tracking: Refactor calibration data handling
2019-09-29 15:43:54 +01:00
Jakob Bornecrantz
b37eb0f55b
xrt: Add xrt_size struct
2019-09-29 15:43:54 +01:00
Jakob Bornecrantz
cbee61a008
xrt: Don't derive pointer alignment
2019-09-29 11:45:23 +01:00
Jakob Bornecrantz
ec7e98538c
st/prober: Code style, pointer star location
2019-09-29 11:45:23 +01:00
Jakob Bornecrantz
76527b73f8
st/oxr: Code style, pointer star location
2019-09-29 11:45:23 +01:00
Jakob Bornecrantz
0987927343
aux/util: Code style, pointer star location
2019-09-29 11:45:23 +01:00
Jakob Bornecrantz
423da670fa
aux/tracking: Code style, pointer star location
2019-09-29 11:45:23 +01:00
Jakob Bornecrantz
b95e114160
aux/math: Code style, pointer star location
2019-09-29 11:45:23 +01:00
Jakob Bornecrantz
3bee6e3a8b
d/ohmd: Code style, pointer star location
2019-09-29 11:45:23 +01:00
Jakob Bornecrantz
30de1d0928
d/psvr: Code style, pointer star location
2019-09-29 11:45:23 +01:00
Jakob Bornecrantz
5cd4d272a2
comp: Code style, pointer star location
2019-09-29 11:45:23 +01:00
Jakob Bornecrantz
42f4784d14
xrt: Code style, pointer star location
2019-09-29 11:45:19 +01:00
Jakob Bornecrantz
70f632be10
aux/tracking: Refactor PS Move tracking code
2019-09-28 18:06:05 +01:00
pblack
5d616cd077
aux/tracking: Port PS Move tracker
2019-09-28 18:04:19 +01:00
Jakob Bornecrantz
3e27720083
t/gui: Better handling of sink interceptors
2019-09-28 18:02:41 +01:00
Jakob Bornecrantz
bc26f68c74
aux/calibration: Do fast pass for checkerboard detection and tidy file
2019-09-28 15:17:48 +01:00
Jakob Bornecrantz
b5eae545e7
aux/tracking: Fix build on new OpenCV versions
2019-09-28 02:55:37 +01:00
Jakob Bornecrantz
6dcf69df83
aux/tracking: Adjust checkerboard corners for subpixel accuracy
2019-09-28 02:47:42 +01:00
Jakob Bornecrantz
ee3f54adb6
aux/tracking: Add parameters to calibration
2019-09-27 20:49:31 +01:00
Jakob Bornecrantz
8d0aa220c1
aux/tracking: Tidy calibration
2019-09-27 20:49:31 +01:00
Jakob Bornecrantz
ea5203fbc0
aux/tracking: Fix position hack in PSVR
2019-09-27 20:28:04 +01:00
Jakob Bornecrantz
cc2f456663
aux/tracking: Fix warnings
2019-09-27 20:28:04 +01:00
Jakob Bornecrantz
216f7df355
d/ohmd: Less distorted view on external device
2019-09-27 20:28:04 +01:00
Jakob Bornecrantz
fcc316d6f1
st/prober: First ball is red
2019-09-27 20:28:04 +01:00
Jakob Bornecrantz
58305a33c6
meson: OCD
2019-09-27 12:25:05 +01:00
Jakob Bornecrantz
c295c8e6c9
xrt: Refactor meson and cmake (most) to fix cmake build
2019-09-27 12:19:48 +01:00
Jakob Bornecrantz
d848ea010f
xrt: s/XRT_BUILD_*/XRT_BUILD_DRIVER_*/g
2019-09-27 12:03:36 +01:00
Jakob Bornecrantz
765d263b96
d/psvr: Use os_nanosleep
2019-09-27 11:44:54 +01:00
Jakob Bornecrantz
b8205d77fe
meson: Add all tracking files
...
PSVR and PSMV trackers are independant from the drivers, so build them all always.
2019-09-26 22:34:14 +01:00
Jakob Bornecrantz
6081b147fc
cmake: Tidy auxiliary file
2019-09-26 22:34:14 +01:00
Jakob Bornecrantz
953ce6480d
st/prober: Gate tracking on OpenCV instead of PSMV and PSVR
2019-09-26 22:34:14 +01:00
Drew DeVault
b4f0c79abd
comp_compositor.c: prefer Wayland over XCB
2019-09-26 12:15:27 -04:00
Drew DeVault
9bcfa56f2f
compositor: overhaul Wayland backend
...
This simplifies the Wayland backend, fixes the build configuration for
it, ports it to xdg-shell stable, and reworks some false assumptions
from the original port.
2019-09-26 12:15:27 -04:00
Drew DeVault
064aef3526
build: port to meson
2019-09-26 15:05:22 +00:00
Drew DeVault
c6586cfd1e
comp_compositor: use nanosleep instead of usleep
...
Improves portability
2019-09-26 15:05:22 +00:00
Jakob Bornecrantz
9c7c818637
d/v4l2: Use more portable sysconf(_SC_PAGESIZE)
2019-09-26 16:03:48 +01:00
pblack
3d7ec1546b
aux/tracking: Port calibration to new gui/node setup
2019-09-26 09:32:46 +01:00
Ryan Pavlik
24260bb042
st/oxr: Silence meaningless negotiate errors/warnings.
...
Loader just indiscriminately populates all function pointers.
2019-09-24 22:01:05 +00:00
Ryan Pavlik
bbd63ff071
st/oxr: Disable partial implementation of debug extension for now.
2019-09-24 14:16:31 -05:00
Ryan Pavlik
80b0c14590
st/oxr: Paths cannot end with a slash.
2019-09-24 10:20:16 -05:00
Ryan Pavlik
b7aebc2146
st/oxr: Implement oxr_xrStructureTypeToString
2019-09-24 10:20:16 -05:00
Ryan Pavlik
192a219d1c
st/oxr: Implement oxr_xrResultToString
2019-09-24 10:20:16 -05:00
Jakob Bornecrantz
a211b392df
st/prober: Set origin for PSVR tracker as well
...
Spotted by Pete Black.
2019-09-24 01:14:48 +01:00
Jakob Bornecrantz
b1febd8971
t/gui: Add a calibration scene
2019-09-23 11:46:06 +01:00
Jakob Bornecrantz
4a0a95dab8
aux/tracking: Fix calibration code to work with new frame semantics
2019-09-23 11:43:23 +01:00
Jakob Bornecrantz
79eba848ae
st/prober: Add hardcoded tracking system integration for PSMV and PSVR
2019-09-22 12:00:48 +01:00
Jakob Bornecrantz
871b06cd72
aux/tracking: Add stub PSVR tracker
2019-09-22 11:50:34 +01:00
Jakob Bornecrantz
37590e7525
aux/tracking: Add stub PSMV tracker
2019-09-21 19:12:12 +01:00
Jakob Bornecrantz
a4ee0dd838
d/psvr: Use tracking interface
2019-09-21 19:02:13 +01:00
Jakob Bornecrantz
b47efb1520
d/psmv: Use tracking interface
2019-09-21 18:33:45 +01:00
Jakob Bornecrantz
b50415a367
t/gui: Add main menu and pure debug scene
2019-09-21 18:33:45 +01:00
Jakob Bornecrantz
387bc123f8
xrt: Expand tracking interface
2019-09-21 18:22:06 +01:00
Jakob Bornecrantz
65eeb19939
targets: Link with tracking if built
2019-09-21 18:21:05 +01:00
Jakob Bornecrantz
ba12a0aa0e
aux/tracking: Track hsv filter sinks
2019-09-21 18:21:05 +01:00
Jakob Bornecrantz
ef3074afa7
aux/util: Add sink as tracker variable
2019-09-21 18:21:05 +01:00
Jakob Bornecrantz
046c9e18b9
d/psmv: Fix timestamp parsing (ZCM2)
2019-09-20 12:06:58 +01:00
Ryan Pavlik
63d62cf4fe
d/psmv: Fix timestamp parsing (ZCM1)
2019-09-20 12:06:48 +01:00
Ryan Pavlik
f123c41146
t/gui: Support quat values
2019-09-20 10:07:50 +01:00
Ryan Pavlik
65cc62daf9
aux/util: Add quat support to variable tracker
2019-09-20 10:07:48 +01:00
Ryan Pavlik
f10eaafcdb
t/gui: Align floats by always outputting the + or -
2019-09-20 10:07:46 +01:00
Lubosz Sarnecki
910f16fd30
targets/cli: Fix build with OpenHMD disabled.
...
Without this patch the build is failing due to linker errors
when BUILD_WITH_OPENHMD is set to false.
2019-09-20 10:15:17 +02:00
Lubosz Sarnecki
9dec3dda81
drv_psvr: Fix prototype warnings in clang.
2019-09-20 10:14:49 +02:00
Jakob Bornecrantz
51dafe7b05
xrt: Add usb_dev_class to xrt_prober_device
2019-09-18 13:03:01 +01:00
Jakob Bornecrantz
ad373c55b7
os: Include xrt_config.h in os_threading.h
2019-09-17 11:42:28 +01:00
Jakob Bornecrantz
ff341e43f0
d/psvr: Use standard gravity value
2019-09-16 16:36:54 +01:00
Jakob Bornecrantz
d3eb48ada4
d/psmv: Normalize acceleration to gravity
2019-09-16 16:36:48 +01:00
Jakob Bornecrantz
1bcf537785
aux/math: Add standard gravity value
2019-09-16 16:36:47 +01:00
Jakob Bornecrantz
46389cd6ae
xrt: Send in real prober to auto probers
2019-09-15 23:24:58 +01:00
Jakob Bornecrantz
59a2b87c43
d/psmv: Tidy code and add some comments
2019-09-15 23:22:25 +01:00
Jakob Bornecrantz
d4e139f09e
d/psmv: Use gyro_bias from calibration data on ZCM2
2019-09-15 23:22:25 +01:00
Jakob Bornecrantz
548f4edee3
d/psmv: Don't use the copy sample on ZCM2
2019-09-15 23:22:25 +01:00
Jakob Bornecrantz
9d1353c626
t/gui: Connect it all together
2019-09-15 18:52:17 +00:00
Jakob Bornecrantz
a507aee906
t/gui: Add two scenes
2019-09-15 18:52:17 +00:00
Jakob Bornecrantz
74bdb0cb38
t/gui: Add imgui code
2019-09-15 18:52:17 +00:00
Jakob Bornecrantz
71b3de9c46
t/gui: Add scene manager
2019-09-15 18:52:17 +00:00
Jakob Bornecrantz
c474112782
t/gui: Add OpenGL sink code
2019-09-15 18:52:17 +00:00
Jakob Bornecrantz
968952aa9e
t/gui: Add st/prober code
2019-09-15 18:52:17 +00:00
Jakob Bornecrantz
44d58037b7
t/gui: Add SDL2 based GUI target
2019-09-15 18:52:17 +00:00
Jakob Bornecrantz
d48b3385f8
ext/imgui: Add Dear ImGui
2019-09-15 18:52:17 +00:00
Jakob Bornecrantz
a673f9b7fc
st/oxr: Add Monado ball on a stick controller
2019-09-15 15:44:39 +01:00
Jakob Bornecrantz
79ad85e9b7
st/oxr: Add interaction profile code
...
Not a complete implementation but gets us far enough to
respect the bindings that a application gives us.
2019-09-15 15:44:39 +01:00
Jakob Bornecrantz
2337299279
st/oxr: Make sure action keys don't start at zero
2019-09-15 15:44:39 +01:00
Jakob Bornecrantz
2db3df9027
st/oxr: Add oxr_sink_logger, the slog-inator!
2019-09-15 15:44:39 +01:00
Jakob Bornecrantz
81213f119c
os: Tidy threading
2019-09-15 15:43:57 +01:00
Jakob Bornecrantz
ee5fe9a4e5
d/psmv: Even more tidy
2019-09-15 15:43:57 +01:00
Jakob Bornecrantz
0641342b7d
d/psmv: Tidy driver
2019-09-15 15:29:47 +01:00
Jakob Bornecrantz
3d744c5959
d/psmv: Add support for ZCM2
2019-09-15 15:29:45 +01:00
Jakob Bornecrantz
e98fb81c56
d/psmv: Make calibration values slight more readable
2019-09-15 15:29:43 +01:00
Jakob Bornecrantz
7dcfe5ca50
d/psmv: Flip axis once more
2019-09-15 15:29:41 +01:00
Jakob Bornecrantz
932b8dfd70
d/psmv: Refactor calibration and make room for ZCM2
2019-09-15 12:28:53 +01:00
Jakob Bornecrantz
b5c7f080de
d/psmv: Use new thread helper to create a pulling thread
2019-09-13 22:17:34 +01:00
Jakob Bornecrantz
0d09d225dd
os: Add wrappers for threading primitives
2019-09-13 22:11:02 +01:00
Jakob Bornecrantz
e82f3616c9
d/psmv: Tick time
2019-09-11 22:21:53 +01:00
Jakob Bornecrantz
b5c37bcf10
d/psmv: Don't force sending of update packet when setting output
2019-09-11 22:21:53 +01:00
Jakob Bornecrantz
523c9980c9
d/psmv: Super simple sensor "fusion"
2019-09-11 22:21:53 +01:00
Jakob Bornecrantz
1488dcf579
d/psmv: Add stub update fusion function
2019-09-11 22:21:53 +01:00
Jakob Bornecrantz
d2acc9d6e4
d/psmv: Also set gyro data
2019-09-11 22:20:22 +01:00
Jakob Bornecrantz
c5e5c98c9c
d/psmv: Shouldn't negate Z-axis in gyro calibration data
2019-09-11 22:20:20 +01:00
Jakob Bornecrantz
5b02974ae0
d/psmv: Correctly handle z-axis
2019-09-11 16:43:09 +01:00
Jakob Bornecrantz
e179349644
d/psvr: Super simple sensor "fusion"
2019-09-11 16:43:09 +01:00
Jakob Bornecrantz
750b8bb755
d/psvr: Expose more data via variable code
2019-09-11 16:43:09 +01:00
Jakob Bornecrantz
c2c230b3de
d/psvr: Refactor and improve packet reading
2019-09-11 16:43:09 +01:00
Jakob Bornecrantz
bf9bcf8e26
d/psvr: Read sensor packets when updating input
2019-09-11 16:43:09 +01:00
Jakob Bornecrantz
8d001ca95f
st/oxr: Even more fixes for system xdevs
2019-09-09 21:57:37 +01:00
Jakob Bornecrantz
affd1cb2c1
st/oxr: Tidy
2019-09-09 20:47:43 +01:00
Jakob Bornecrantz
b84413cc35
st/oxr: Fix system xdev init
2019-09-09 20:47:30 +01:00
Jakob Bornecrantz
94d4822afb
d/psmv: Use correct calibration value
2019-09-08 10:01:55 +01:00
Jakob Bornecrantz
962de77ca0
st/oxr: Carry around extra xrt_devices
...
Pretty much only used for enabling 3 PS Move Controllers right now.
2019-09-08 10:01:55 +01:00
Jakob Bornecrantz
2abc98dbec
aux/util: Add split sink
2019-09-07 14:34:20 +01:00
Jakob Bornecrantz
798ef43342
st/prober: Make sure the usb-product is always filled out
2019-09-07 14:34:20 +01:00
Jakob Bornecrantz
c021199b98
xrt: Add interface to prober to open video devices
2019-09-07 14:34:20 +01:00
Jakob Bornecrantz
3b1abffa2d
xrt: Refactor frameserver start stream arguments
2019-09-07 14:34:20 +01:00
Jakob Bornecrantz
1b35846506
d/psmv: Expose more variables and add gui annotations
2019-09-07 14:34:20 +01:00
Jakob Bornecrantz
10d9fbcd9e
aux/util: Add some gui annotations to variable tracking
2019-09-07 14:32:53 +01:00
Jakob Bornecrantz
2a6e194b2d
d/psmv: Improve accelerometer adjustment
2019-09-06 19:14:12 +01:00
Jakob Bornecrantz
2e5c8f43a0
d/psmv: Export a whole lot more variables
2019-09-06 19:14:12 +01:00
Jakob Bornecrantz
9cf6108899
aux/util: Add more types to variable tracker
2019-09-06 18:12:15 +01:00
Jakob Bornecrantz
5e3d5295b7
xrt: Add xrt_vec3_i32
2019-09-06 18:12:15 +01:00
Jakob Bornecrantz
3f13224502
d/psmv: Fix strict aliasing warnings when compiling with optimisations
2019-09-06 15:46:17 +01:00
Jakob Bornecrantz
aaaa9fc235
st/oxr: Fix strict aliasing warnings when compiling with optimisations
2019-09-06 15:46:17 +01:00
Jakob Bornecrantz
e8ead02c4c
st/oxr: Silence warning from snprintf when compiling with optimisations
2019-09-06 15:46:06 +01:00
Jakob Bornecrantz
d6465bc017
d/psvr: Enable by default
2019-09-06 14:37:45 +01:00
Jakob Bornecrantz
8570493db1
d/psvr: Add variable tracking
2019-09-06 14:37:45 +01:00
Jakob Bornecrantz
9192c9c6b5
d/psmv: Add variable tracking
2019-09-06 14:37:45 +01:00
Jakob Bornecrantz
676bc81f40
d/v4l2: Add variable tracking
2019-09-06 14:37:45 +01:00
Jakob Bornecrantz
d8f8f670d3
st/prober: Add variable tracking
2019-09-06 14:37:45 +01:00
Jakob Bornecrantz
591e6d3b29
st/oxr: Add variable tracking
2019-09-06 14:37:45 +01:00
Jakob Bornecrantz
a9e88f3f20
aux/util: Add variable tracking code
2019-09-06 14:37:42 +01:00
Jakob Bornecrantz
58008d2ff1
d/psmv: Return error code
2019-09-05 22:18:14 +01:00
Jakob Bornecrantz
1ae8acc71c
d/psmv: Read calibration data
2019-09-05 17:24:57 +01:00
Jakob Bornecrantz
29b1713be9
xrt: Add enum xrt_device_name so that state trackers can reason about device
2019-09-04 12:47:18 +01:00
Jakob Bornecrantz
a0f2793457
xrt: It's a cross not a x
2019-09-03 15:26:10 +01:00
Jakob Bornecrantz
5de401ea58
comp: Tidy wait frame
2019-08-31 14:17:41 +01:00
Jakob Bornecrantz
cfb1ca3052
comp: Ensure nominal_frame_interval_ns is a sane value
2019-08-31 14:17:41 +01:00
Jakob Bornecrantz
cfa89b84c1
d/psmv: Tidy doc
2019-08-27 09:04:03 +01:00
Jakob Bornecrantz
005abd5429
t/cli: Tidy CMakeLists.txt file
2019-08-27 08:52:57 +01:00
Jakob Bornecrantz
358183115f
aux/track: Micro optimize hsv filter
2019-08-27 08:34:40 +01:00
Jakob Bornecrantz
f5a93699cb
xrt: Add XRT_NO_INLINE define
2019-08-27 08:34:40 +01:00
Jakob Bornecrantz
1e93ba2461
xrt: Refactor frame interface
2019-08-27 08:17:21 +01:00
Jakob Bornecrantz
b9c3ac797e
xrt: Add colour structs
2019-08-27 08:17:21 +01:00
Jakob Bornecrantz
7f3651775b
xrt: Add xrt_reference struct
2019-08-27 08:17:21 +01:00
Jakob Bornecrantz
6774a7e1b3
xrt: Add atomics and container_of helpers
2019-08-27 08:17:21 +01:00
Jakob Bornecrantz
98d7c3542c
d/v4l2: Minor fixes
2019-08-27 08:17:21 +01:00
Jakob Bornecrantz
0f9b5786f3
st/oxr: Remove unnecessary NULL check
2019-08-22 16:46:42 +01:00
Ryan Pavlik
a8ae7c432d
aux/tracking: Fix class vs struct warnings in calibration and hsv debug code.
2019-08-21 14:29:37 -05:00
Ryan Pavlik
12de62fdbc
d/psmv: Fix typo in bit mask.
...
Found by clang-tidy.
2019-08-21 14:28:54 -05:00
Ryan Pavlik
dae90d4b42
st/oxr: Fix potential null-deref in events.
...
Found by clang-tidy
2019-08-21 14:28:32 -05:00
Ryan Pavlik
624fe8ab59
st/oxr: Change iteration of actions.
2019-08-21 14:28:07 -05:00
Jakob Bornecrantz
79402d0081
aux/track: Add stub calibration tracker
2019-08-20 13:07:42 +01:00
Jakob Bornecrantz
a2ffb18852
aux/util: Add a special yuv or yuyv converter sink
2019-08-20 12:40:05 +01:00
Jakob Bornecrantz
fc88d7d099
aux/util: Add more formats
2019-08-20 12:40:05 +01:00
Jakob Bornecrantz
36f24036eb
xrt: Add more formats
2019-08-20 12:40:05 +01:00
Jakob Bornecrantz
c8f16be641
xrt: Refactor out frame from frameserver
2019-08-20 12:35:55 +01:00
Christoph Haag
d9736ba3b7
comp: wait for next frame in xrWaitFrame
...
fixes 6e396ed
It was unnecessary to move the wait to xrEndFrame.
It does not matter if the compositor renders the frame immediately because the
frame physically can not be displayed before the next HMD refresh.
On the other hand, leaving too short of a time for the compositor to render
may delay the frame past its predicted time.
2019-08-20 10:10:10 +00:00
Ryan Pavlik
2389c207f5
st/oxr: debug utils extension cleanup
2019-08-19 17:12:33 -05:00
Ryan Pavlik
077d0c39c5
st/oxr: Unify handling of extensions.
2019-08-19 17:12:33 -05:00
Benjamin Saunders
c111f528b8
oxr: Optionally install as the default runtime
2019-08-19 12:09:49 -05:00
Jakob Bornecrantz
a0fcaf9b6b
aux/util: Disable use of conversion table for YUV to RGB for now
2019-08-17 10:34:40 +01:00
Jakob Bornecrantz
042d30c590
comp: Fix warnings
2019-08-17 10:34:12 +01:00
Jakob Bornecrantz
33dd9b65ea
st/oxr: Don't pad systemName with a lot of padding
...
This was a thinko by me and just plain wrong.
2019-08-17 09:31:01 +01:00
Ryan Pavlik
e824b83112
st/oxr: Install manifest to major version "1" subdir
2019-08-17 03:31:40 +00:00
Ryan Pavlik
6566e7d21d
st/oxr: Return FUNCTION_UNSUPPORTED for some not-enabled extensions.
...
More to do, but this is something.
2019-08-16 18:04:53 -05:00
Ryan Pavlik
ac22f30a2c
st/oxr: xrGetInstanceProcAddr typo fix.
2019-08-16 18:04:53 -05:00
Ryan Pavlik
ad6c26c231
st/oxr: xrGetInstanceProcAddr doesn't require an instance to enumerate layers
2019-08-16 18:04:53 -05:00
Ryan Pavlik
d6df86a9ae
st/oxr: Don't write debug message on functions we just don't know in GIPA.
2019-08-16 18:04:53 -05:00
Ryan Pavlik
ae63bfc0ac
st/oxr: Adjust two call helper to satisfy spec.
2019-08-16 23:01:04 +00:00
Ryan Pavlik
ca47a216c3
d/psmv: Minor clang-tidy fixes
2019-08-16 17:25:29 -05:00
Ryan Pavlik
eef6d87da4
d/v4l2: Minor clang-tidy fixes
2019-08-16 17:25:29 -05:00
Ryan Pavlik
0088c6cb6e
st/oxr: Fix possible null dereference.
...
Found by clang-tidy.
2019-08-16 17:25:29 -05:00
Ryan Pavlik
c8776a8b0d
st/oxr: Minor clang-tidy fixes.
2019-08-16 17:25:29 -05:00
Ryan Pavlik
c048bc0052
targets: Clang-tidy fixes (name consistency)
2019-08-16 17:25:29 -05:00
Ryan Pavlik
dddb8069d0
st/prober: Minor clang-tidy fixes.
2019-08-16 17:25:29 -05:00
Ryan Pavlik
80cc620eca
st/prober: Fix use of uninitialized condition.
...
Found by clang-tidy
2019-08-16 17:25:29 -05:00
Ryan Pavlik
c874d25ee3
st/prober: Fix null dereference.
...
Found by clang-tidy.
2019-08-16 17:25:29 -05:00
Ryan Pavlik
e21b495f90
comp: Comment a resource and memory leak
2019-08-16 17:25:19 -05:00
Ryan Pavlik
2aca9821fa
comp: Clang-tidy
2019-08-16 17:20:01 -05:00
Ryan Pavlik
86d3d2b149
aux/util: clang-tidy
2019-08-16 17:12:53 -05:00
Ryan Pavlik
876bd5088f
hid: Fix clang-tidy warnings.
2019-08-16 17:12:53 -05:00
Ryan Pavlik
11c5518aa0
aux/math: Simplify
2019-08-16 17:12:53 -05:00
Ryan Pavlik
1700be7022
aux/math: Fix typo
2019-08-16 17:12:53 -05:00
Ryan Pavlik
dbf0bdd014
comp: Factor out some shared functionality.
...
Simplifies error handling as well.
2019-08-16 17:12:35 -05:00
Nova King
2d016b3385
xrt: Added support for XR Swapchain flags
2019-08-16 22:06:28 +00:00
Ryan Pavlik
557172f8ae
st/oxr: Silence warning about results in binding code.
2019-08-16 10:54:53 -05:00
Ryan Pavlik
1eae45212e
comp: Complete initializers for Vulkan structures
2019-08-16 10:54:49 -05:00
Ryan Pavlik
6088402605
d/psvr: Fix narrowing conversions
2019-08-16 10:45:26 -05:00
Ryan Pavlik
ea0dec9898
a/util: Cast realloc results.
2019-08-16 10:45:26 -05:00
Benjamin Saunders
dbbfe8e455
Handle CMAKE_INSTALL_LIBDIR being absolute
...
This seems to be common in distro packaging environments.
2019-08-16 14:52:45 +00:00
Ryan Pavlik
261b9125f6
d/hdk: Use string descriptor to guess at revision
2019-08-15 12:36:01 +00:00
Ryan Pavlik
93976bb276
prober: Add ability to get string descriptors.
...
Right now we can only use libusb to get this info.
2019-08-15 12:36:01 +00:00
Ryan Pavlik
853f8ab68e
d/hdk: Port to internal HID wrapper.
...
Not entirely feature-complete due to lack of access to descriptor strings.
2019-08-15 12:36:01 +00:00
Ryan Pavlik
0226c11528
inc/xrt: Fix typos
2019-08-15 12:36:01 +00:00
Christoph Haag
6e396ed07e
comp: Add hack waiting on xrEndFrame() until frame should be displayed.
...
xrWaitFrame() doesn't block at all, will only predict the time for the next frame.
Once the compositor is multithreaded, this wait should be moved to the compositor thread
and xrWaitFrame should be the function to block until the compositor finished rendering the frame.
2019-08-15 12:29:58 +00:00
Ryan Pavlik
3e34060777
st/oxr: Ignore view config type in monado headless mode.
2019-08-14 17:15:15 -05:00
Ryan Pavlik
225bac0cfb
st/oxr: Enforce 0 session create flags
2019-08-14 17:14:59 -05:00
Ryan Pavlik
761c4d7ca8
Fix build.
2019-08-14 17:14:46 -05:00
Ryan Pavlik
749e6bbdc5
Bump OpenXR includes to 1.0.1
2019-08-14 12:33:34 -05:00
Ryan Pavlik
1fd9936f95
st/oxr: Fix enumerating swapchain formats on headless
2019-08-14 12:28:30 -05:00
Christoph Haag
8cda1b6f67
comp: fix cleanup of direct window, delete with correct type
...
Found by gcc address sanitizer.
2019-08-13 01:47:50 +02:00
Jakob Bornecrantz
5fa58efcbf
st/oxr: Verify width and height on swapchain create
2019-08-01 07:39:50 +01:00
Jakob Bornecrantz
4ebc308a37
st/oxr: Update version for OpenXR 1.0 support
2019-08-01 07:34:33 +01:00
Jakob Bornecrantz
57c6078a69
st/oxr: Update to OpenXR 1.0
2019-07-29 16:43:39 +01:00
Jakob Bornecrantz
08a4b40f77
st/oxr: Fix API negotiation code
2019-07-29 16:34:48 +01:00
Jakob Bornecrantz
3a89e2f0d4
ext/oxr: Update OpenXR headers to 1.0
2019-07-29 16:34:48 +01:00
Ryan Pavlik
bf45f2bc21
st/oxr: Hack the fixed bindings to add support for the Hydra
2019-07-29 04:08:06 +01:00
Ryan Pavlik
2cd28914c7
d/hydra: Initially-functional multi-device Razer Hydra driver.
...
Not pretty - no filtering on tracking, coordinate system
probably a little bit wrong still, no hemisphere tracking,
but enough to show movement and resizing in hello_xr.
2019-07-29 03:01:57 +00:00
Jakob Bornecrantz
9a4fee3896
st/oxr: Code style
2019-07-25 00:57:51 +01:00
Jakob Bornecrantz
5fbebd2bd5
aux/util: Code style
2019-07-25 00:57:40 +01:00
Jakob Bornecrantz
d66cd05445
st/oxr: Fix warnings during release builds
2019-07-25 00:53:04 +01:00
Jakob Bornecrantz
5beaba9c0d
aux/util: Fix warnings during release builds
2019-07-25 00:53:04 +01:00
Jakob Bornecrantz
fb24bb979f
d/hdk: Fix warnings during release builds
2019-07-25 00:53:04 +01:00
Jakob Bornecrantz
4237b97d37
d/v4l2: Add control functions and expand PS4 quirk
2019-07-24 19:49:48 +01:00
Jakob Bornecrantz
718a81608a
d/v4l2: Add new frameserver
2019-07-23 17:41:34 +01:00
Jakob Bornecrantz
a544b4b56f
aux/util: Add sink format converters
2019-07-23 17:41:34 +01:00
Jakob Bornecrantz
6a79f5878e
aux/util: Add format helper functions
2019-07-23 17:41:34 +01:00
Jakob Bornecrantz
b0337f29da
xrt: Add frameserver interface
2019-07-23 17:41:34 +01:00
Jakob Bornecrantz
833ca3f8f9
xrt: Add some formats
2019-07-23 13:40:08 +01:00
Jakob Bornecrantz
e7a933a168
st/oxr: Verify poses in space create functions
2019-07-21 14:57:45 +00:00
Jakob Bornecrantz
505d5cf5d6
aux/math: C export paranoia
2019-07-21 14:57:45 +00:00
Jakob Bornecrantz
776c46713f
aux/math: Refactor math_pose_validate into two functions
2019-07-21 14:57:45 +00:00
Jakob Bornecrantz
223206dc24
st/oxr: Refactor function returning to actually raise error this time
2019-07-21 14:15:17 +01:00
Jakob Bornecrantz
97939accda
st/oxr: Slightly improve swapchain image status
...
The current code is not up spec at all anyways, but this at least
helps to avoid some bad situations in the current code.
2019-07-02 17:54:13 +01:00
Jakob Bornecrantz
79364eaf4c
st/oxr: Validate that Swapchain has at least one released image
2019-07-02 17:54:13 +01:00
Jakob Bornecrantz
35093bee3c
d/psmv: Use new prober function helpers
2019-06-30 14:35:27 +01:00
Jakob Bornecrantz
e336590153
t/cli: Use new prober function helpers
2019-06-30 14:35:27 +01:00
Jakob Bornecrantz
b7defdb0ae
st/oxr: Use new prober function helpers
2019-06-30 14:35:27 +01:00
Jakob Bornecrantz
985536457f
xrt: Add helper accessor functions to prober
2019-06-30 14:35:27 +01:00
Jakob Bornecrantz
ccac11ac1d
st/prober: Remove auto-wrapper
2019-06-30 14:35:27 +01:00
Jakob Bornecrantz
cc83b93733
d/psmv: Add helper function to convert value to u8
2019-06-28 18:32:30 +01:00
Jakob Bornecrantz
af7238ec21
t/common: Link with Libusb1
2019-06-28 17:49:24 +01:00
Jakob Bornecrantz
1e8d683a49
t/common: Add PSVR to list of defines in targets_enabled
2019-06-28 16:53:53 +01:00
Jakob Bornecrantz
58da7263f1
t/common: Fix typo in PSMV define
2019-06-28 16:53:32 +01:00
Jakob Bornecrantz
ef36766aca
t/cli: Stub for calibration
2019-06-28 14:03:50 +01:00
Jakob Bornecrantz
249b9a03ca
t/cli: Turn prober command into a cli interface for Monado
2019-06-28 14:03:50 +01:00
Jakob Bornecrantz
699bb8d5ad
st/prober: Implement camera listing function
2019-06-28 14:03:50 +01:00
Jakob Bornecrantz
16f8b013ec
st/prober: Save usb path and product name
2019-06-28 14:03:50 +01:00
Jakob Bornecrantz
24d3dc45c8
xrt: Add interface to list cameras
2019-06-28 14:03:50 +01:00
Jakob Bornecrantz
f926f42a0d
xrt: Remove unused field on xrt_prober_device
2019-06-28 11:37:18 +01:00
Ryan Pavlik
0d75b465bd
build: Move enabled-driver defines to a header, instead of compiler options for every target.
2019-06-26 10:52:27 -05:00
Jakob Bornecrantz
ec69936890
build: Revert "Only show the XRT_BUILD_ defines where they're needed."
...
This reverts commit 334d62dfcd
.
2019-06-26 16:17:06 +01:00
Jakob Bornecrantz
de4dc03ab7
st/oxr: Save people from shooting themselves in the foot
2019-06-25 18:36:14 +01:00
Ryan Pavlik
1f84814721
st/prober: Allow "found" functions called by prober to make more than one device.
2019-06-22 11:34:51 +01:00
Ryan Pavlik
a673a4d469
st/oxr: Make the binding finder return bool so we can chain it.
2019-06-22 11:34:51 +01:00
Ryan Pavlik
ccf26dcd4e
os/hid: Add support for get/set feature reports.
2019-06-22 11:34:51 +01:00
Ryan Pavlik
2b006d5df7
aux/math: Add quaternion normalization
2019-06-22 11:34:51 +01:00
Jakob Bornecrantz
46fa9cbd25
t/prober: Refactor closing down a bit
2019-06-21 21:56:06 +01:00
Jakob Bornecrantz
0fa7af1dd2
d/psvr: Set name of PSVR headset
2019-06-21 21:55:43 +01:00
Ryan Pavlik
257cf6b5a8
prober: Fix typo
2019-06-21 13:17:55 -05:00
Ryan Pavlik
cfb443843f
targets/common: Add comment to target_entry_list
2019-06-21 13:17:55 -05:00
Ryan Pavlik
3cc7ee872a
d/psmv: Fix typo
2019-06-21 13:17:55 -05:00
Ryan Pavlik
334d62dfcd
build: Only show the XRT_BUILD_ defines where they're needed.
2019-06-21 13:17:55 -05:00
Jakob Bornecrantz
80cf616355
st/prober: Improve printing order of dumping
2019-06-21 17:10:57 +01:00
Jakob Bornecrantz
cf8dfe6357
st/prober: Prefer deb_path for finding usb bus and addr
2019-06-21 17:04:27 +01:00
Jakob Bornecrantz
a3ae5ae453
st/prober: Probe for V4L devices
2019-06-21 17:04:27 +01:00
Jakob Bornecrantz
cb44c822d2
st/prober: Refactor hidraw enumeration code in udev file
2019-06-21 17:04:27 +01:00
Jakob Bornecrantz
dfdc794272
st/prober: Refactor libuvc code to own file
2019-06-21 17:04:27 +01:00
Jakob Bornecrantz
d9b820c834
st/prober: Refactor libusb code to own file
2019-06-21 17:04:25 +01:00
Jakob Bornecrantz
7f07cee387
st/prober: Guard libudev usage
2019-06-21 17:03:20 +01:00
Jakob Bornecrantz
542208bd42
d/ohmd: Fix warning by including right header
2019-06-19 16:45:10 +01:00
Ryan Pavlik
c5fea837f3
oxr: Allow relative vs absolute manifest path to be selected at configure time.
2019-06-19 08:15:08 -07:00
Ryan Pavlik
88efae1078
oxr: Generate the dev manifest using the same template as installed.
2019-06-19 08:15:08 -07:00
Ryan Pavlik
fc98db1439
oxr: Use an absolute path in the installed runtime manifest.
2019-06-19 08:15:08 -07:00
Ryan Pavlik
66086c1b0b
oxr: Reduce proportion of install that's platform-guarded
2019-06-19 08:15:08 -07:00
Benjamin Saunders
40d8446ba8
oxr: Use absolute path of runtime library in manifest
...
Improves robustness when there might be multiple libraries by the same
name visible to the loader.
2019-06-19 08:15:08 -07:00
Jakob Bornecrantz
43f2a0f054
t/common: Code style
2019-06-19 12:10:12 +01:00
Caleb Szalacinski
6664588eba
Added a delay quirk to allow the Oculus Rift CV1 to initialize properly.
2019-06-18 20:36:43 -05:00
Jakob Bornecrantz
d30cd0b639
st/oxr: Fix segfault due to bad U_ZERO of sub_paths
2019-06-18 21:32:08 +01:00
Ryan Pavlik
e70a28b912
st/oxr: Fix enumerating swapchain formats on headless
...
Operating on the assumption that it's OK to pass a null countOutput sometimes.
2019-06-18 15:17:53 -05:00
Ryan Pavlik
93c5ae105f
st/oxr: Fix typo.
2019-06-18 14:46:51 -05:00
Ryan Pavlik
c327d5e48c
st/oxr: Banish remaining bare calloc calls.
2019-06-18 14:14:01 -05:00
Ryan Pavlik
901254b9ac
aux/util: Improve docs for calloc wrappers
2019-06-18 14:14:01 -05:00
Ryan Pavlik
edfa0323a3
comp: Use U_ZERO
2019-06-18 14:14:01 -05:00
Ryan Pavlik
3de9b08ebc
d/psmv: Use U_ZERO
2019-06-18 14:14:01 -05:00
Ryan Pavlik
2175a4226b
d/psvr: Use U_ZERO
2019-06-18 14:14:01 -05:00
Ryan Pavlik
661fa79057
st/prober: Use U_ZERO
2019-06-18 14:14:01 -05:00
Ryan Pavlik
bc4b36ed61
st/oxr: Use U_ZERO
2019-06-18 14:14:01 -05:00
Ryan Pavlik
15b61b5c4f
util: Add U_ZERO and U_ZERO_ARRAY wrappers for memset.
...
Ensures the type is always correct.
2019-06-18 14:14:01 -05:00
Ryan Pavlik
02be89bf35
targets: De-duplicate conditional inclusion of driver objects/libraries.
2019-06-18 18:44:17 +00:00
Ryan Pavlik
9d57e158f9
aux/util: fix truncation warning
2019-06-18 18:43:20 +00:00
Ryan Pavlik
287bd1cb06
d/ohmd: Cast bitmask enum
2019-06-18 18:43:20 +00:00
Ryan Pavlik
839d08616e
drv/psvr: Fix some enum casting build errors
2019-06-18 18:43:20 +00:00
Ryan Pavlik
b004f95503
comp: Adjust initialization order to match declaration.
2019-06-18 18:43:20 +00:00
Ryan Pavlik
941a18e06a
util/u_device: Use typed calloc wrapper
2019-06-18 18:41:57 +00:00
Ryan Pavlik
fbfee92601
d/oh: Have prober include interface header
...
Without this, the implementation definition might drift from the declaration,
and it doesn't get its extern "C"-ness.
2019-06-18 13:32:07 -05:00
Ryan Pavlik
0472bef1fa
d/hdk: Have prober include interface header
...
Without this, the implementation definition might drift from the declaration,
and it doesn't get its extern "C"-ness.
2019-06-18 13:31:32 -05:00
Ryan Pavlik
0f2635a6eb
a/os: Add extern "C" to hid header
2019-06-18 13:31:32 -05:00
Jakob Bornecrantz
739b6b7895
st/oxr: Code style fix
2019-06-18 13:09:59 -05:00
Ryan Pavlik
58f5d56d48
st/oxr: Code style fix
2019-06-18 13:09:59 -05:00
Ryan Pavlik
9635952165
aux/math: Codespell fix
2019-06-18 13:09:59 -05:00
Ryan Pavlik
21e324ed57
comp: Codespell fix
2019-06-18 13:09:59 -05:00
Ryan Pavlik
de0506fb0c
d/oh: Codespell fix
2019-06-18 13:09:59 -05:00
Ryan Pavlik
aeff374fcb
d/psvr: Codespell fix
2019-06-18 13:09:59 -05:00
Ryan Pavlik
2228a00b08
st/oxr: Codespell fix
2019-06-18 13:09:59 -05:00
Jakob Bornecrantz
e745a28374
st/oxr: Basic foundation for input and output
...
This commits lays the foundation for actions in Monado (input and output).
There are lots of things missing and non-conformant in there. But once in
more people then just me can test it out and work on it.
2019-06-18 17:56:10 +01:00
Jakob Bornecrantz
b71e143eaa
d/psmv: Add PS Move driver
2019-06-18 17:56:10 +01:00
Benjamin Saunders
41ad2b872c
st/oxr: Accept nonnull subactionPaths when countSubactionPaths is 0
...
It's not clear that this is forbidden, and it can make the caller's
life a little easier.
2019-06-14 12:06:00 -07:00
Ryan Pavlik
06cb5d680b
st/oxr: Check requested OpenXR API version.
...
Conformance.
2019-06-12 15:40:19 -05:00
Ryan Pavlik
0bdb4e4aeb
st/oxr: Unify checking of system ID, and do so in createSession
2019-06-12 15:40:19 -05:00
Ryan Pavlik
052728d515
st/oxr: Don't break on function unsupported errors.
2019-06-12 15:39:26 -05:00
Jakob Bornecrantz
4c6de83ea9
comp: Fix uninitialised errors from Valgrind
...
```txt
Conditional jump or move depends on uninitialised value(s)
at 0x6A5A7A0: vk_select_physical_device (comp_vk.c:847)
by 0x6A5AAF9: vk_create_device (comp_vk.c:916)
by 0x6A5CD82: compositor_check_vulkan_caps (comp_compositor.c:401)
by 0x6A5D659: comp_compositor_create (comp_compositor.c:656)
by 0x6A5F99B: xrt_gfx_vk_provider_create (comp_glue_vk.c:57)
by 0x6A78197: oxr_session_populate_vk (oxr_session_vk.c:32)
by 0x6A77E59: oxr_session_create_impl (oxr_session.c:536)
by 0x6A77F53: oxr_session_create (oxr_session.c:567)
by 0x6A6EA74: oxr_xrCreateSession (oxr_api_session.c:44)
by 0x2632A8: xrCreateSession (in hello_xr)
by 0x239F0D: (anonymous namespace)::OpenXrProgram::InitializeSession() (in hello_xr)
by 0x22ED25: main (in hello_xr)
Uninitialised value was created by a stack allocation
at 0x6A5CB05: compositor_check_vulkan_caps (comp_compositor.c:349)
```
2019-06-11 15:27:31 +01:00
Jakob Bornecrantz
8aec512de3
xrt: Update prober interface
2019-06-10 14:47:19 +01:00
Jakob Bornecrantz
89d8315b3b
xrt: Add output interfaces
2019-06-10 14:47:19 +01:00
Jakob Bornecrantz
1f64f714f6
xrt: Add input, hmd_parts and tracking interface
...
This patch has been spun of the rather massive amount of work for adding input
devices into Monado. The interfaces feels somewhat stable now so could do
with another pair of eyes on them, before too much work is done on st/oxr.
2019-06-10 14:47:19 +01:00
Jakob Bornecrantz
889c89590c
st/oxr: Implement action stubs in oxr_input.c
2019-06-10 14:47:05 +01:00
Jakob Bornecrantz
de6bf55116
aux/util: Add hashmap
2019-06-10 14:47:05 +01:00
Jakob Bornecrantz
2d6cb08c48
aux/util: Fix uninitialized errors
2019-06-10 14:15:53 +01:00
Ryan Pavlik
acec80da2f
st/oxr: Fix graphics binding error codes/messages
2019-06-03 22:52:28 +00:00
Ryan Pavlik
dab52d319d
st/oxr: Support arbitrary next chains in session creation.
2019-06-03 22:52:28 +00:00
Ryan Pavlik
0a523bef05
st/oxr: Fix verifying XrSessionCreateInfo and graphics bindings structs.
...
Don't enforce next == NULL, and look through entire chain for structure
type enum, using oxr_chain.h
2019-06-03 22:52:28 +00:00
Ryan Pavlik
fa8047fed3
st/oxr: Add oxr_chain.h header
...
This should replace all manual poking of the next chain.
Prefer the macros over the functions since they'll do your casting for you.
2019-06-03 22:52:28 +00:00
Ryan Pavlik
e944bcb96f
st/oxr: Parenthesize macro args.
...
Found by upcoming modifications.
2019-06-03 22:52:28 +00:00
Ryan Pavlik
74065d49dd
st/oxr: Remove incorrect check in OXR_VERIFY_TYPE_AND_NULL
...
We are to ignore any unexpected types in a next chain.
2019-06-03 22:52:28 +00:00
Ryan Pavlik
9c979099e3
st/oxr: Fix some error message formatting in oxr_verify
2019-06-03 17:48:59 -05:00
Ryan Pavlik
0696203858
st/oxr: Document message style for oxr_error
2019-06-03 17:48:39 -05:00
Jakob Bornecrantz
c0008199ae
aux/util: Remove meta prober
2019-05-16 20:41:35 +01:00
Jakob Bornecrantz
43dfb400a6
prober: Add small helper program to debug st/prober
2019-05-16 20:41:35 +01:00
Jakob Bornecrantz
702eba0f53
openxr: Use prober target
2019-05-16 20:41:35 +01:00
Jakob Bornecrantz
d97df04c11
xrt: Add new prober interface and code
2019-05-16 20:41:35 +01:00
Jakob Bornecrantz
e2bd986bc5
os: Add a minimal hidraw wrapper
2019-05-13 18:26:02 +01:00
Jakob Bornecrantz
d9cdd04b7a
openxr: Don't unconditionally link with OpenHMD driver
2019-05-13 18:09:40 +01:00
Christoph Haag
09e9771a2d
st/oxr: fix path length verification
...
We can't assume the string is null terminated.
2019-05-09 17:49:03 +00:00
Jakob Bornecrantz
d5f5d9f354
st/oxr: Set session on action spaces
2019-05-09 12:42:28 +01:00
Jakob Bornecrantz
defc4f9eef
build: Tidy auxiliary
2019-05-09 12:42:26 +01:00
Jakob Bornecrantz
83159a02c1
d/psvr: Add to meta prober and OpenXR target
...
Still hidden behind a env variable.
2019-05-06 16:46:10 +00:00
Jakob Bornecrantz
42cddb2580
d/psvr: Add a experimental PSVR driver
...
Hidden behind a env variable.
2019-05-06 16:46:10 +00:00
Benjamin Saunders
74165d7e0e
comp: Support sRGB swapchain under OpenGL
2019-05-04 13:25:24 -07:00
Jakob Bornecrantz
e0adc25124
aux/util: Add a device helper function to setup the fields for a common HMD setup
2019-05-03 18:56:14 +01:00
Jakob Bornecrantz
a70fdba30e
st/oxr: Move CMakeLists.txt into base directory
2019-05-03 18:53:24 +01:00
Jakob Bornecrantz
dc9ab44a5a
xrt: Rename xrt_prober to xrt_auto_prober
2019-05-03 18:53:07 +01:00
Jakob Bornecrantz
fd74f48529
xrt: Code style
2019-05-02 14:07:52 +01:00
Jakob Bornecrantz
690a354bd1
comp: Code style
2019-05-02 14:07:41 +01:00
Benjamin Saunders
13cef1b8b9
comp: Support rendering individual array layers
2019-05-01 17:45:43 -07:00
Benjamin Saunders
b6f2013bc5
st/oxr: Frame end uses the most recently released image
2019-05-01 17:45:43 -07:00
Benjamin Saunders
f6b8cb25b8
comp: Respect swapchain array size
2019-05-01 17:45:43 -07:00
Jakob Bornecrantz
c8cdf3ee38
d/ohmd: Tidy code style
2019-04-30 14:02:00 +01:00
Jakob Bornecrantz
9c05e853cc
build: Refactor flags and definitions (and fix fallout)
...
Defines:
* XRT_HAVE_[name] is a external dep indicator.
* XRT_DRIVER_[name] if a internal driver is built.
CMake variables:
* BUILD_WITH_[name] is a external dep indicator.
* BUILD_DRIVER_[name] tells if we should build a specific driver.
2019-04-29 17:18:09 +01:00
Jakob Bornecrantz
831b52f71e
d/ohmd: Refactor quirking some more
2019-04-27 09:21:12 +01:00
Jakob Bornecrantz
8675142e32
d/ohmd: Refactor quirking code
2019-04-27 09:06:33 +01:00
Jakob Bornecrantz
79d7555449
d/ohmd: Make rotate in be more correct
2019-04-27 08:32:44 +01:00
Jakob Bornecrantz
2caa08f8a8
comp: Debug print more info
2019-04-25 06:46:20 +01:00
Jakob Bornecrantz
95f24f4735
comp: Debug print Vulkan device and version
2019-04-25 06:34:34 +01:00
Ryan Pavlik
3a4e020920
st/oxr: Fix conformance issue in begin session.
2019-04-24 02:41:34 +00:00
Benjamin Saunders
570ba1ae88
st/oxr: Initialize action act_set pointer
...
Fixes a segfault in OXR_VERIFY_ACTION_AND_INIT_LOG
2019-04-22 09:19:59 -07:00
Jakob Bornecrantz
bc77052493
st/oxr: Tidy code style
2019-04-20 02:54:23 +01:00
Jakob Bornecrantz
e39260eb67
d/ohmd: Add quirk for PSVR
...
The OpenHMD driver does not have any sensible panotools values
2019-04-19 14:56:47 +01:00
Jakob Bornecrantz
2d6b3c2113
openxr: Use meta prober
2019-04-15 09:52:44 +01:00
Jakob Bornecrantz
aa4a0eb9f7
aux/util: Add meta proper helper
2019-04-15 09:52:44 +01:00
Benjamin Saunders
1da5cd9914
st/oxr: Initialize action set session pointer
...
Fixes a segfault in OXR_VERIFY_ACTION_AND_INIT_LOG
2019-04-15 09:52:40 +01:00
Benjamin Saunders
9b774cbd72
st/oxr: Verify action names
2019-04-15 09:52:37 +01:00
Benjamin Saunders
f32cab368f
st/oxr: Fix error code for empty path segments
2019-04-15 09:52:34 +01:00
Benjamin Saunders
a776b94147
st/oxr: Fix localized name validation
2019-04-15 09:52:30 +01:00
Jakob Bornecrantz
ab6defc610
d/*: Add a bit of documentation organization
2019-04-12 14:08:46 +01:00
Jakob Bornecrantz
a6ea2816cb
st/oxr: Tidy off by one error
2019-04-12 11:48:25 +01:00
Jakob Bornecrantz
98c91ccb25
st/oxr: Tidy code style
2019-04-12 11:46:59 +01:00
Jakob Bornecrantz
fcdfd9d97d
st/oxr: Pipe some path functions down into the path store
2019-04-12 11:30:01 +01:00
Jakob Bornecrantz
77b3b7b840
st/oxr: Add a path store
2019-04-12 11:30:01 +01:00
Jakob Bornecrantz
9173e1d31c
st/oxr: Add code to verify full paths
2019-04-12 11:30:01 +01:00
Jakob Bornecrantz
51b5d55e61
st/oxr: Use correct error returns in single level path
...
Spotted by Ryan.
2019-04-12 11:30:01 +01:00
Jakob Bornecrantz
e4a779f19b
aux/util: Add a size calloc helper
2019-04-12 10:47:13 +01:00
Jakob Bornecrantz
a36565c5b7
aux/util: Add string hashset
2019-04-12 10:47:13 +01:00
Jakob Bornecrantz
b8e4a5f8d1
aux/math: Add simple string hashing function
2019-04-12 10:47:13 +01:00