Commit graph

1116 commits

Author SHA1 Message Date
Jakob Bornecrantz 68422f6e3e d/ns: Fix all warnings and tidy code 2020-02-12 12:22:08 +00:00
Nova d4e034dd44 d/ns: Greatly extend the North Star driver 2020-02-12 12:22:07 +00:00
Jakob Bornecrantz fd9cef6493 d/vive: Use proper external include in meson 2020-02-10 20:38:19 +00:00
Jakob Bornecrantz 937e6fafb7 d/ns: Use RealSense 6DOF for tracking if available 2020-02-10 20:07:31 +00:00
Jakob Bornecrantz b75ac54fe6 d/ns: Only create a North Star hmd if config path is set 2020-02-10 20:07:31 +00:00
Jakob Bornecrantz d6d934e35f d/rs: Meson build 2020-02-10 20:07:31 +00:00
Jakob Bornecrantz 53201debdc d/rs: Add a simple pure 6DOF device, for the T26[1|5] devices 2020-02-10 20:07:31 +00:00
Nova d48022d55d u/json: Add a lot more helper functions 2020-02-09 21:06:47 +00:00
Nova 4cfd4c4657 math: Added vec3 math functions 2020-02-09 21:06:47 +00:00
Ryan Pavlik f3803f7365 t/imu: Update docs to specify units for gyro. 2020-01-31 17:19:54 +01:00
Ryan Pavlik afd5328bd6 t/imu: Add optional debug prints to simple IMU fusion.
By request of @pblack.
2020-01-31 17:19:48 +01:00
Ryan Pavlik a11ba04b96 aux/tracking: handle loading into empty mat 2020-01-31 17:19:48 +01:00
Ryan Pavlik 85761db12c aux/math: Update comment 2020-01-31 17:19:48 +01:00
Ryan Pavlik 84dfbf241f d/vive: Fix typo. 2020-01-31 10:47:52 +01:00
Ryan Pavlik c590a3f69b st/oxr: Fix segfault in conformance 2020-01-31 10:47:52 +01:00
Ryan Pavlik eaf834249b t/calib: Verify that storage location doesn't move for wrappers. 2020-01-31 10:47:52 +01:00
Jakob Bornecrantz fca0513b4e d/v4l2: Print out the card name during debugging 2020-01-26 19:37:37 +00:00
Jakob Bornecrantz 0df88dedca st/gui: Add support for Leap Motion Controller 2020-01-26 19:37:37 +00:00
Jakob Bornecrantz ca06c16eeb st/gui: Better conversion sinks 2020-01-26 19:37:37 +00:00
Jakob Bornecrantz 8aee77401b t/calib: Tweak printing and move assert to after printing 2020-01-26 19:37:37 +00:00
Jakob Bornecrantz be75fe823a t/calib: Fix default asymmetrical circles rows values 2020-01-26 19:37:37 +00:00
Pete Black a80ef43339 t/calib: Also accept L8 frames 2020-01-26 19:37:37 +00:00
Jakob Bornecrantz c14d709a85 u/sink: Better error printing in converters 2020-01-26 19:37:37 +00:00
Jakob Bornecrantz 405f68c98a u/sink: Convert handle YUV888 to RGB888 as well 2020-01-26 19:37:37 +00:00
Jakob Bornecrantz 50b3794816 u/sink: Add quirk support for Leap Motion Conrtoller 2020-01-26 19:37:37 +00:00
Jakob Bornecrantz 16eb05e089 u/sink: Make quirk sink creation parameters into a struct. 2020-01-26 19:37:37 +00:00
Jakob Bornecrantz f16230a2d5 u/sink: Add a converter sink that accepts yuv, yuyv or l8 2020-01-26 19:37:36 +00:00
Pete Black f45f69c9f2 u/sink: Add a deinterleaver sink 2020-01-26 19:37:36 +00:00
Jakob Bornecrantz 576fcac5ae xrt: Add interleaved stereo format 2020-01-26 19:37:36 +00:00
Jakob Bornecrantz e74fab4d14 d/ns: Correct directory in documentation 2020-01-26 17:04:34 +00:00
Jakob Bornecrantz 1bcf13ba7e u/mesh: Refactor and document 2020-01-26 16:00:14 +00:00
Jakob Bornecrantz 2114fc877d comp: Add option to draw wireframe 2020-01-25 20:19:13 +00:00
Jakob Bornecrantz 62addc7a9f d/ns: Add stub mesh generation code 2020-01-25 17:32:32 +00:00
Nova 981fe55a27 d/ns: Add North Star stub driver 2020-01-25 17:06:51 +00:00
Jakob Bornecrantz 260a0279aa d/dummy: Track pose 2020-01-25 16:40:09 +00:00
Jakob Bornecrantz 21ed0facb7 st/gui: Add a bit hacky pose controls 2020-01-25 16:39:57 +00:00
Jakob Bornecrantz ef4798ab1c u/var: Add pose tracking 2020-01-25 16:37:46 +00:00
Jakob Bornecrantz 38fbb1d7ad u/var: Use a macro to only write list once 2020-01-25 14:54:44 +00:00
Jakob Bornecrantz d305f773ea d/ohmd: Do not open External Device by default 2020-01-25 14:42:02 +00:00
Jakob Bornecrantz 356e4c18c1 d/dummy: Add dummy HMD driver 2020-01-25 14:42:02 +00:00
Jakob Bornecrantz a48d5bb835 d/vive: Also rotate acceleration 2020-01-24 21:43:32 +00:00
Ryan Pavlik 798fa623ea u_json: Add array helper. 2020-01-24 21:42:43 +00:00
Jakob Bornecrantz b3e84f9041 xrt: Make sure that auto probers can add non-HMD devices after a HMD has been found 2020-01-23 15:51:36 +00:00
Jakob Bornecrantz c2560ae6d2 xrt: Switch to new quirking sink
This is done in one commit as split out they would leave the code
in a fairly broken state.
2020-01-17 14:31:50 +00:00
Jakob Bornecrantz 4024bd454a xrt: Expose the name of the frameserver source 2020-01-17 14:31:45 +00:00
Jakob Bornecrantz 6603882a2d u/sink: Add new quirking sink 2020-01-17 14:31:45 +00:00
Jakob Bornecrantz 30e9338aba t/calib: Don't lose any pixels in stereo rectification 2020-01-17 14:01:52 +00:00
Jakob Bornecrantz 1085db150b t/calib: Fix rectify for stereo fisheye camera 2020-01-17 14:00:22 +00:00
Jakob Bornecrantz ba10152765 t/calib: Print out rectify matricies 2020-01-17 14:00:22 +00:00
Jakob Bornecrantz 67d33550cf t/calib: Change how default arguments are applied 2020-01-17 12:09:08 +00:00
Jakob Bornecrantz 8564bbec4f st/prober: Update GUI with new truths 2020-01-16 23:04:14 +00:00
Ryan Pavlik e35c87d59e comp: Fix glXGetProcAddress prototype when building as C++ 2020-01-16 22:37:43 +00:00
Ryan Pavlik 5592ed28da xrt: Make vkGetInstanceProcAddr prototype available. 2020-01-16 22:37:39 +00:00
Ryan Pavlik 0df4dc2be1 st/prober: Fix typo 2020-01-16 22:37:29 +00:00
Jakob Bornecrantz d1af0b7f15 t/calib: Play around with mono calibration a bit 2020-01-16 22:34:04 +00:00
Jakob Bornecrantz 62013c142b t/helper: Introduce a small debug frame helper 2020-01-16 18:15:21 +00:00
Jakob Bornecrantz 50eda5a262 t/hsv: Copy stereo format to result frame 2020-01-16 17:47:08 +00:00
Jakob Bornecrantz 5d6ed6973c u/sink: Copy stereo format to result frame 2020-01-16 17:47:08 +00:00
Ryan Pavlik c957072dfc t/calib: Remove references to left and right from new structs 2020-01-16 09:14:07 -06:00
Ryan Pavlik 81acc290cb t/calib: Clean up emplace_back calls. 2020-01-16 09:14:07 -06:00
Ryan Pavlik 2d20f2066a t/psmv: Update existing blob tracker to work with simpler input 2020-01-16 09:12:50 -06:00
Ryan Pavlik 91fdfd0c94 t/file: Have matrix reader be more careful about loading, and optionally transpose
The, actually consistently use result of matrix read and built-in transpose to simplify code
2020-01-16 09:08:32 -06:00
Ryan Pavlik bc49fd4803 t/calib: Use cv::Mat_<> for wrappers since the element type is known 2020-01-16 09:08:32 -06:00
Ryan Pavlik fcdebc6e9d aux/tracking: Re-organize structs related to camera calibration.
Removes the "raw" data structures for camera calibration, not needed.
The only thing they contained beyond the revised regular structures
was derived data that the consumer might parameterize differently.

Renames t_settings_stereo to t_stereo_camera_calibration.
The calibration info is data (that could be stored on the device, etc),
not settings.
2020-01-16 09:07:52 -06:00
Jakob Bornecrantz 771006f97b t/calib: Fix OpenCV type-related assertions and some perf enhancments
Pre-reserve, use emplace to avoid copies.
This is a combination of Ryan's patches and mine.

t/calib: performance improvements
t/calib: Fix doxygen warning
t/calib: Fix asserts and some perf enhancments
2020-01-16 00:02:56 +00:00
Samantha Bowen 14bfd17f39 d/ohmd: Add position tracking. 2020-01-15 21:07:05 +00:00
Ryan Pavlik b44f14d348 st/gui: Display the calibration status data. 2020-01-14 15:55:50 -06:00
Ryan Pavlik 9790ca7602 t/calib: Add interface for getting some status info on calib process. 2020-01-14 15:55:50 -06:00
Ryan Pavlik dec5d8de7d st/gui: Update camera calibration config GUI 2020-01-14 15:55:50 -06:00
Ryan Pavlik 871395d5b5 build: Adjust meson build equivalently 2020-01-14 12:28:23 -06:00
Ryan Pavlik c68d3bfe54 build: Adjust CMake build to allow actually disabling dependencies/options 2020-01-14 11:51:12 -06:00
Ryan Pavlik f834d20300 xrt: Move OpenXR platform defines to build system 2020-01-14 11:51:12 -06:00
Ryan Pavlik 130a649f92 build: Move checking of sufficient enabled drivers to the drivers dir 2020-01-14 11:51:12 -06:00
Ryan Pavlik 47f704277a xrt: Let BUILD_TRACKING mean you need more than just the IMU fusion.
This is required to build anything that uses the IMU fusion module
without OpenCV.
2020-01-14 11:51:12 -06:00
Ryan Pavlik 67a561d0ea st/oxr: Fix ifdef guards 2020-01-14 11:51:12 -06:00
Ryan Pavlik 682f41a37c comp: Fix build when VK_USE_PLATFORM_XLIB_XRANDR_EXT is not defined 2020-01-14 11:51:12 -06:00
Ryan Pavlik 358cde31b7 comp: Add a comment explaining why a function is guarded 2020-01-14 11:51:12 -06:00
Ryan Pavlik d03db42075 d/hdk: Does not require hidapi 2020-01-14 11:51:12 -06:00
Jakob Bornecrantz 382813edd6 d/vive: Dump JSON config on debug instead of spew 2020-01-14 15:59:41 +00:00
Jakob Bornecrantz 8ded6bac8b d/vive: Extract lighthouse data 2020-01-14 15:59:41 +00:00
Jakob Bornecrantz 5bf65b41fa math: Add some more functions 2020-01-14 15:59:41 +00:00
Jakob Bornecrantz 796d9c49ec t/calib: Support stereo fisheye in the config file 2020-01-14 15:42:31 +00:00
Jakob Bornecrantz 4ae650a006 t/calib: Support stereo fisheye in stereo calibration 2020-01-14 15:42:31 +00:00
Jakob Bornecrantz 0e6b908f80 t/callib: Move stereo calibration to new interaction 2020-01-14 15:42:31 +00:00
Jakob Bornecrantz 3f9d94cb8a d/psmv: Mark ball pose as active depending on tracking 2020-01-13 21:59:37 +00:00
Jakob Bornecrantz c383a933ea st/oxr: Propegate device input active status through API 2020-01-13 21:59:37 +00:00
Jakob Bornecrantz 7082a599c7 xrt: Make it possible for the device set active status on inputs 2020-01-13 21:59:37 +00:00
Jakob Bornecrantz 998b198b44 math: Fix math_pose_invert 2020-01-13 10:37:14 +00:00
Ryan Pavlik 4cc9380f0b st/oxr: Fix missing include. 2020-01-09 17:36:24 -06:00
Ryan Pavlik c1928468af t/gui: Fix SDL flag enum type 2020-01-09 17:35:54 -06:00
Ryan Pavlik c123195800 t/oxr: Fix type issue with sdl2 code 2020-01-09 17:35:54 -06:00
Ryan Pavlik 9e953083fc st/oxr: Move shipped binding data into a separate header to avoid re-declaration of statics 2020-01-09 17:35:54 -06:00
Ryan Pavlik 13c099f59e xrt: Fix for mismatched parameter names 2020-01-09 22:54:01 +00:00
Ryan Pavlik ae466ce70e d/vive: Fix typos. 2020-01-09 16:32:18 -06:00
Jakob Bornecrantz b816afce63 d/vive: Extract Index canting parameter from the config 2020-01-09 15:22:14 +00:00
Jakob Bornecrantz 7618f4c5a4 math: Make it possible to get a rotation from a rotation matrix 2020-01-09 15:22:14 +00:00
Jakob Bornecrantz 35fcd2ae3d xrt: Add xrt_matrix_3x3 2020-01-09 15:22:14 +00:00
Ryan Pavlik 290bd7937b d/vive: Port to cJSON.
Replacing nxjson because of license issues: upstream of nxjson is LGPL3.
2020-01-09 15:21:04 +00:00
Jakob Bornecrantz eda46d3bea util: Add some wrapper files around cJSON
This makes cJSON files be accessible from everywhere in Monado,
and adds a nice place to add common helpers.
2020-01-09 15:21:04 +00:00
Jakob Bornecrantz d6ca37bc70 d/vive: Set last acc and gyro values 2020-01-09 15:21:04 +00:00
Jakob Bornecrantz 8306e00bd1 d/vive: Apply all axis flip after scale and bias 2020-01-09 15:21:04 +00:00
Jakob Bornecrantz 995ecfaac2 d/vive: Tidy IMU code 2020-01-09 15:21:04 +00:00
Jakob Bornecrantz 4895ab704c d/vive: Tidy and refactor config parsing 2020-01-09 15:21:04 +00:00
Christoph Haag bc20d84171 st/oxr: Also make sure to keep actions with outputs active 2020-01-09 02:13:08 +01:00
Christoph Haag a3d04090c5 st/oxr: Always make actions active that have inputs
If an applications only syncs a subset of action sets, the actions from all
sets that are not synced get the active bit reset.

Once the application starts syncing the previously not synced sets again,
the actions have to become active again.
2020-01-09 02:12:59 +01:00
Jakob Bornecrantz ba104f59f3 d/vive: Tidy motherboard thread 2019-12-22 14:08:14 +00:00
Jakob Bornecrantz 85197f1584 d/vive: Tidy sensors thread 2019-12-22 14:08:14 +00:00
Jakob Bornecrantz 784b53ded2 d/vive: Spew instead of debug vive_device_update_inputs 2019-12-22 13:35:37 +00:00
Ryan Pavlik 5c830f16b2 t/oxr: Fix linking in absence of SDL2 2019-12-07 18:25:37 +00:00
Ryan Pavlik 6d60227e06 comp: More renaming for clarity 2019-12-07 18:25:37 +00:00
Ryan Pavlik 9668437c78 comp: Rename comp_xlib_client to indicate it's also GL related 2019-12-07 18:25:37 +00:00
Ryan Pavlik e49fdd8523 st/oxr: EGL extension requires OpenGL enabled 2019-12-07 18:25:37 +00:00
Ryan Pavlik 51c3240c23 st/oxr: Improve extension support header. 2019-12-07 18:25:37 +00:00
Ryan Pavlik f25b5d7f8d st/gui: clang-tidy 2019-12-07 18:25:37 +00:00
Ryan Pavlik c92590930d d/vive: clang-tidy 2019-12-07 18:25:37 +00:00
Ryan Pavlik 5772f86292 d/psvr: clang-tidy 2019-12-07 18:25:36 +00:00
Ryan Pavlik a36d351a18 d/psmv: clang-tidy 2019-12-07 18:25:36 +00:00
Ryan Pavlik 56f8e3272e a/tracking: clang-tidy 2019-12-07 18:25:36 +00:00
Ryan Pavlik ceb600167c u/var: Clang tidy and make param names consistent/expressive 2019-12-07 18:25:34 +00:00
Ryan Pavlik 24158bd747 t/gui: Apply clang-tidy fixes to remove redundant returns. 2019-12-07 18:24:56 +00:00
Ryan Pavlik d9fb855f6e t/cli: Fix type correctness 2019-12-07 18:24:56 +00:00
Ryan Pavlik 06ce6617f5 st/oxr: Port logger realloc to helper macro 2019-12-07 18:24:56 +00:00
Ryan Pavlik c9f1b2be4b d/vive: Port realloc to helper macro 2019-12-07 18:24:56 +00:00
Ryan Pavlik a6d9eea394 comp: Port memory allocation to the helper macros 2019-12-07 18:24:56 +00:00
Ryan Pavlik 2d86dfd560 d/v4l2: Type safety fixes and realloc porting 2019-12-07 18:24:56 +00:00
Ryan Pavlik b47428b451 st/p: Convert to realloc macro 2019-12-07 18:24:56 +00:00
Ryan Pavlik f6d3aabc08 st/oxr: Convert remaining realloc in binding code 2019-12-07 18:24:56 +00:00
Ryan Pavlik 2b5fa2c57f st/p: Fix enum types in libusb usage 2019-12-07 18:24:56 +00:00
Ryan Pavlik 447b3550e8 st/oxr: Fix enum types in shipped bindings 2019-12-07 18:24:56 +00:00
Ryan Pavlik 2751824e16 st/gui: Type safety fixes 2019-12-07 18:24:56 +00:00
Ryan Pavlik e11eb0203f d/vive: Initializer order fix 2019-12-07 18:24:56 +00:00
Ryan Pavlik 282f38ca62 d/vive: Type safety fix 2019-12-07 18:24:52 +00:00
Ryan Pavlik be8530db74 d/psvr: Type correctness fixes 2019-12-07 18:21:28 +00:00
Ryan Pavlik a7a7545d0d d/psmv: Casting/type safety fixes 2019-12-07 18:21:22 +00:00
Ryan Pavlik 86db0622f9 d/vive: Split nxjson sources from vive sources 2019-12-07 18:21:17 +00:00
Christoph Haag fcd43180e6 comp: Error when forcing a nonexistent vulkan gpu index
Instead of segfaulting.
2019-12-03 20:33:46 +01:00
Ryan Pavlik 808892742b st/p: Fix allocation size error with realloc macro 2019-12-03 09:39:06 -06:00
Ryan Pavlik f20a0e14e0 st/oxr: Fix oversized allocation in binding code 2019-12-03 09:39:06 -06:00
Ryan Pavlik 4f6b4761cb aux/util: Add U_ARRAY_REALLOC_OR_FREE to safely wrap realloc. 2019-12-03 09:39:06 -06:00
Ryan Pavlik a602b2247f st/oxr: Fix bug in get current interaction profile.
We returned the path instead of putting it in the out value.
2019-12-03 09:39:06 -06:00
Ryan Pavlik 7ca4fb34d5 d/v4l2: typo fix 2019-12-03 09:39:06 -06:00
Ryan Pavlik 90e57a4e8a xrt: Fix types related to EGL.
Fixes #46
2019-12-03 09:30:31 -06:00
Jakob Bornecrantz ba9fd61bb8 u/sink: Reject frames that don't have a valid JPEG header 2019-11-23 00:01:05 +00:00
Jakob Bornecrantz cdec2ca367 t/calib: Add resolution size to image name 2019-11-22 23:59:35 +00:00
Jakob Bornecrantz ab0d94201a t/calib: s/grey/gray/g 2019-11-22 15:53:17 +00:00
Jakob Bornecrantz 6cba920668 t/calib: Force the principal point to the center of the image 2019-11-22 15:51:58 +00:00
Jakob Bornecrantz 9b60bd7c77 t/calib: Add support to load images 2019-11-22 14:20:56 +00:00
Jakob Bornecrantz 0cbd3e8601 t/calib: Do not fix principal point and tweak balance 2019-11-22 14:19:22 +00:00
Jakob Bornecrantz 392b42e900 t/calib: Don't double wait for frame after finding a measurement 2019-11-22 14:09:29 +00:00
Jakob Bornecrantz 3f202d0d6f t/calib: Make cooldown period separate from wait period 2019-11-22 12:36:23 +00:00
Jakob Bornecrantz 86dc9e1a6b t/calib: Re-organize parameters and make it possible to select board type 2019-11-22 12:36:23 +00:00
Jakob Bornecrantz 9a4b55758a st/gui: Add support for mirror RGB option 2019-11-21 22:43:04 +00:00
Jakob Bornecrantz de67590bbf t/calib: Tweak defaults 2019-11-21 22:43:04 +00:00
Jakob Bornecrantz 504a34bc95 t/calib: Tidy messages 2019-11-21 22:43:04 +00:00
Jakob Bornecrantz 276e81c373 t/calib: Add option to mirror RGB image 2019-11-21 22:40:00 +00:00
Jakob Bornecrantz 94c55fc206 t/calib: Ensure that camera is still before taking measurment 2019-11-21 22:40:00 +00:00
Jakob Bornecrantz 50d28369c4 m/headers: Rename C++ headers to hpp and tidy headers 2019-11-21 14:54:17 +00:00
Jakob Bornecrantz 54f7c2ed1d t/headers: Rename C++ headers to hpp and tidy headers 2019-11-21 13:00:52 +00:00
Jakob Bornecrantz 84f9ad962c st/gui: Tidy UI 2019-11-20 23:50:42 +00:00
Jakob Bornecrantz ff4b91c688 st/gui: Expose fisheye option 2019-11-20 23:50:42 +00:00
Jakob Bornecrantz dc6da46852 st/gui: Add option to save image and add separators" 2019-11-20 23:50:42 +00:00
Jakob Bornecrantz d6317b2a14 st/gui: Expose new parameters to calibration 2019-11-20 23:50:42 +00:00
Jakob Bornecrantz 587c71182b t/calib: Make it possible to use fisheye functions (mono only) 2019-11-20 23:50:26 +00:00
Jakob Bornecrantz a36af4227f t/calib: Make it possible to save images used during calibration (mono only) 2019-11-20 23:49:56 +00:00
Jakob Bornecrantz 26d7e91615 t/calib: Even more docs 2019-11-20 22:05:23 +00:00
Jakob Bornecrantz 4925ea657f t/calib: Add support for [asym]circles grid, not active right now 2019-11-20 22:05:23 +00:00
Jakob Bornecrantz bd02e47078 t/calib: Add mono calibration 2019-11-20 22:05:16 +00:00
Jakob Bornecrantz 49f9a1a46f t/calib: Add stub for hacking in measurments 2019-11-20 22:03:20 +00:00
Jakob Bornecrantz 6bc617b8e3 t/calib: Tidy TermCriteria 2019-11-20 22:03:20 +00:00
Jakob Bornecrantz 645a45c167 t/calib: Tweak default params 2019-11-20 22:03:20 +00:00
Jakob Bornecrantz c16756c330 t/calib: Ensure everything have initializers 2019-11-20 22:03:20 +00:00
Jakob Bornecrantz ebb41601ed t/calib: Some doc-comments and typedefs to clarify code 2019-11-20 22:03:20 +00:00
Jakob Bornecrantz 79b7d2504a t/calib: Expand mono calibration a bit 2019-11-18 19:14:02 +00:00
Simon Ser 9347ecfe00
xrt: check arraySize==1 when using OpenGL ES 2
Only OpenGL ES 3 supports GL_TEXTURE_2D_ARRAY.
2019-11-18 15:16:16 +01:00
Simon Ser c395f85565
oxr: add XR_TYPE_SWAPCHAIN_IMAGE_OPENGL_ES_KHR support 2019-11-18 15:16:16 +01:00
Simon Ser 81cace0250
comp: replace glCreateTextures with glGenTextures+glBindTexture
glCreateTextures is only available on OpenGL 4.5. It's not supported on
OpenGL ES.
2019-11-18 15:16:16 +01:00
Simon Ser a8b2370946
xrt: accept OpenGL ES in oxr_session_populate_egl 2019-11-18 15:16:15 +01:00
Simon Ser 5eacb6f309
xrt: add support for OpenGL ES
This commit advertises the extension and adds support for
xrGetOpenGLESGraphicsRequirementsKHR
2019-11-18 15:16:15 +01:00
Jakob Bornecrantz b358e22fd7 t/calib: Stub in support for mono calibration 2019-11-17 22:11:41 +00:00
Jakob Bornecrantz ad45aeb0a7 t/calib: Refactor loading a bit more 2019-11-17 22:09:01 +00:00
Jakob Bornecrantz 4af9978803 st/gui: Correctly destroy timekeeping 2019-11-17 20:53:18 +00:00
Christoph Haag b17f1c2f97 st/oxr: Initialize sdl on main thread
Calling SDL_Init() in different threads in the same process crashes.

In this SDL2 code X11_XOpenDisplay() will be a null pointer on the second thread;

    if (SDL_X11_LoadSymbols()) {
        display = X11_XOpenDisplay(NULL);

This becomes a problem when monado starts the debug UI in a thread,
and then an OpenXR client application tries to initialize SDL.

Two consecutive SDL_Init() in the same thread is harmless though.
2019-11-17 13:59:21 +00:00
Jakob Bornecrantz 2ad2243fe7 t/doc: Do not put directory in aux_tracking group 2019-11-16 23:29:29 +00:00
Jakob Bornecrantz 38ec113c04 t/calib: Add comments to sizes 2019-11-16 23:29:10 +00:00
Jakob Bornecrantz 8917607a49 t/calib: Also expose disparity_to_depth on both raw and refined settings 2019-11-16 23:27:32 +00:00
Jakob Bornecrantz 6d8abd87a8 t/calib: Tidy and rename calibration data to settings 2019-11-16 23:17:11 +00:00
Jakob Bornecrantz f364b7a45b t/calib: Make prober load calibration data instead of trackers 2019-11-16 12:17:07 +00:00
Jakob Bornecrantz 5a600ffbcf t/calib: Make destroy funcitons take pointer to pointer 2019-11-16 11:42:33 +00:00
Jakob Bornecrantz ee3d9d08f6 u/time: Send in a pointer to pointer to the timekeeping destroy function 2019-11-15 20:30:01 +00:00
Jakob Bornecrantz 786e67f189 u/time: Mark exported functions as C to get even better errors 2019-11-15 20:28:24 +00:00
Jakob Bornecrantz 76445c8fe9 d/psvr: Fix use after free of timekeeping 2019-11-15 15:23:25 +00:00
Jakob Bornecrantz b33811930b d/psvr: Get data info packet 0x82 2019-11-15 14:55:18 +00:00
Jakob Bornecrantz 419f038017 t/calib: Also save the fisheye distortion always 2019-11-14 17:05:16 +00:00
Jakob Bornecrantz f9599a6763 t/imu: Make sure imu_fusion is aligned 2019-11-14 16:35:56 +00:00
Jakob Bornecrantz 08e898c111 comp: Do not use cut-off in vive shader 2019-11-14 15:12:17 +00:00
Ryan Pavlik e01cf5efd3 t_imu: Actually return non-zero leftover acceleration data. 2019-11-14 12:14:58 +00:00
Ryan Pavlik 2823193302 t_imu_fusion: Add capability to get world non-gravity acceleration 2019-11-14 12:14:58 +00:00
Ryan Pavlik 21352ca338 t_imu: Add param for accelerometer output 2019-11-14 12:14:58 +00:00
Ryan Pavlik a17413744b t_calibration: clang-tidy 2019-11-14 12:14:58 +00:00
Ryan Pavlik 4d411723a1 t/psvr: Fix parameter names 2019-11-14 12:14:58 +00:00
Ryan Pavlik e9d64c4c41 a/math: Clang-tidy 2019-11-14 12:14:58 +00:00
Ryan Pavlik 0a9efbf443 t_imu: Comments 2019-11-14 12:14:58 +00:00
Ryan Pavlik 958c1b7df9 t_imu_fusion: Perform some filtering of accelerometer signal 2019-11-14 12:14:58 +00:00
Ryan Pavlik 29c630cec8 d/psvr: Port PSVR to use timestamps 2019-11-14 12:14:58 +00:00
Ryan Pavlik 194938c405 d/psmv: Port positional tracking to use t_imu_fusion with timestamps 2019-11-14 12:14:58 +00:00
Ryan Pavlik 7bb9fad5e6 t_imu_fusion: adjust to use timepoints directly 2019-11-14 12:14:58 +00:00
Ryan Pavlik aaf08a2abd d/psmv: Porting to changed API that uses timestamps instead of dt 2019-11-14 12:14:58 +00:00
Ryan Pavlik 7314bd75b7 t_imu: Change C API to take timestamps instead of dt 2019-11-14 12:14:58 +00:00
Ryan Pavlik 1440c95f78 t/psmv: Angular rate limit. 2019-11-14 12:14:58 +00:00
Ryan Pavlik 83f652bda1 aux/tracking: Add low-pass IIR filter 2019-11-14 12:14:58 +00:00
Ryan Pavlik ca7397be45 d/psmv: Initial port to imu fusion for orientation-only 2019-11-14 12:14:58 +00:00
Julian Eisel 05b069b0a0 Fix two use-after-free's and multiple memory leaks 2019-11-13 21:53:16 +01:00
Ryan Pavlik af0515232f t_imu_fusion: Fix initialization of orientation from accelerometer. 2019-11-11 18:14:44 -06:00
Ryan Pavlik 08903e67b3 u_var: Update comments/prototypes. 2019-11-11 18:14:14 -06:00
Ryan Pavlik 355476d6b7 aux/tracking: Remove accidentally-left-in parameters from t_imu 2019-11-11 17:57:40 -06:00
Ryan Pavlik 882388b320 st/prober: Fix typo 2019-11-11 17:57:40 -06:00
Ryan Pavlik e44dd1a755 d/vive: Use define for standard gravity 2019-11-11 17:57:40 -06:00
Ryan Pavlik 5eaced0e4d aux/tracking: Use define for standard gravity 2019-11-11 17:57:40 -06:00
Ryan Pavlik 8a0ab71c09 t_imu: Comments. 2019-11-11 17:57:40 -06:00
Jakob Bornecrantz 76d6133142 cmake: Fix v4l2 flag not being set 2019-11-10 01:36:46 +00:00
Jakob Bornecrantz c6e6ba7485 t/psmv: Expose ball last position to debug gui 2019-11-10 01:36:44 +00:00
Jakob Bornecrantz 47bc4de56d t/doc: Fallout from latest codespell version 2019-11-09 12:53:42 +00:00
Jakob Bornecrantz a29dd8c0a4 st/oxr: Improve destruction of GUI hack 2019-11-09 12:53:42 +00:00
Jakob Bornecrantz 86244f726f st/oxr: Improve error condition handling on instance creation 2019-11-09 12:53:42 +00:00
Christoph Haag e78e5c8045 st/oxr: Return appropriate errors for incomplete OpenGL XLib binding
* xDisplay must be a pointer to a Display value
* glxDrawable must be a valid GLXDrawable value
* glxContext must be a valid GLXContext value

intentionally not checked:
* glxFBConfig must be a valid GLXFBConfig value
We don't care about this one for now.
2019-11-08 16:07:10 +01:00
Drew DeVault 4c7f830ea5 d/vive: reset orientation on headset button 2019-11-07 09:39:33 -05:00
Jakob Bornecrantz 1f02c54858 d/vive: Fix copy typo 2019-11-07 13:45:56 +00:00
Lubosz Sarnecki 2ffa77d923 d/vive: Handle error when config could not be read. 2019-11-07 14:16:09 +01:00
Lubosz Sarnecki db1e5b9f16 d/vive: Initialize useful defaults.
This initializes default values in the display, distortion and IMU
properties so the runtime is happy in case the JSON config could not be
read.

This patch also moves default value initialization for the Index
into one place with the others, for cases we do not have the data.
2019-11-07 14:16:09 +01:00
Jakob Bornecrantz e7e550fa8d d/psmv: Fix build 2019-11-06 19:51:24 +00:00
Jakob Bornecrantz a54cdb2632 d/psvr: Can we get some info out of the calibration data 2019-11-06 19:50:07 +00:00
Jakob Bornecrantz 845af78c20 d/psvr: Only flip Z-axis after calibration is applied 2019-11-06 19:50:07 +00:00
Jakob Bornecrantz c60b9881e2 d/psmv: More verbose error handling 2019-11-06 19:48:01 +00:00
Drew DeVault e5a9cbb2f9
Implement XR_MND_egl_enable
This extension introduces a more robust way of creating an XrSession for
OpenGL. It also lays the groundwork for future OpenGL ES support.

https://github.com/KhronosGroup/OpenXR-Docs/pull/40

Signed-off-by: Simon Ser <contact@emersion.fr>
Signed-off-by: Drew DeVault <sir@cmpwn.com>
2019-11-06 10:07:21 +01:00
Simon Ser eefeec12fd oxr: check input type in oxr_swapchain_gl_enumerate_images
Don't blindly cast the input struct to XrSwapchainImageOpenGLKHR, check
that the type is XR_TYPE_SWAPCHAIN_IMAGE_OPENGL_KHR.
2019-11-05 16:32:04 +00:00
Christoph Haag 3b87d518c4 build: Fix meson build without v4l2 2019-11-05 15:36:52 +01:00
Jakob Bornecrantz 93218fa9e4 d/psvr: Tweak panotools values 2019-11-05 12:31:42 +00:00
Jakob Bornecrantz 5e3565c28f st/oxr: Set maximum image rect size to 200% 2019-11-05 12:31:42 +00:00
Jakob Bornecrantz defdd97288 st/oxr: Fix recommended swapchain image height 2019-11-05 12:31:42 +00:00
Jakob Bornecrantz 9eedb05f1b st/prober: Do not autoprobe if we have a HMD 2019-11-05 12:15:56 +00:00
Simon Ser 9183f53c5f
xrt: allow NULL args in various functions
The spec says NULL arguments are valid when the argument just exists for
extensibility. Fix the implementation to accept NULL args.
2019-11-05 10:40:21 +01:00
Simon Ser 8ade6b654b
xrt: introduce OXR_VERIFY_ARG_TYPE_CAN_BE_NULL
It's like OXR_VERIFY_ARG_TYPE_AND_NOT_NULL, but doesn't ensure the argument
is non-NULL.
2019-11-05 10:21:23 +01:00
Simon Ser 1b51db68f9
xrt: rename OXR_VERIFY_ARG_TYPE_AND_NULL to …_NOT_NULL 2019-11-05 10:15:35 +01:00
Jakob Bornecrantz 072e9afb54 t/psvr: Counter tracking origin offset
At least until we have proper tracking for the PSVR.
2019-11-03 14:23:03 +00:00
Jakob Bornecrantz 7c73a1b6bd xrt: Tidy xrt_compiler.h and silence some doxygen warnings 2019-11-02 22:54:23 +00:00
Jakob Bornecrantz b59676e184 st/oxr: Comment all parameters 2019-11-02 22:40:26 +00:00
Ryan Pavlik 059234bbfc d/vive: Cleanup scopes, types, leak in vive_sensors_read_config 2019-11-01 22:41:22 +00:00
Ryan Pavlik e8660a18bd build: Use CMAKE_POSITION_INDEPENDENT_CODE instead of target props.
Reduces repetitive code.
2019-11-01 16:51:54 -05:00
Drew DeVault 6bce0838e0 d/vive: Fix minor typo in vive driver 2019-11-01 14:35:41 +00:00
Simon Ser 36102bfa1e
comp: make Wayland window unresizable
This prevents the compositor from issuing resize requests. We ignore
those anyway.
2019-10-31 16:42:26 +01:00
Christoph Haag 746cccca36 meson: HDK driver does not depend on hidapi 2019-10-31 02:26:19 +01:00
Christoph Haag 680b8971b3 d/hdk: Remove unused hidapi include 2019-10-31 01:50:30 +01:00
Jakob Bornecrantz b5ee4f0dbd comp: Make it obvious that you should implement destroy yourself 2019-10-30 11:06:02 +00:00
Jakob Bornecrantz 46b9d28e8d t/imu: No fancy new c++ syntax until clang-format-8 is used on CI
Go to your room clang-format and think about what you have done.
2019-10-29 20:08:59 +00:00
Jakob Bornecrantz 477e740568 d/psmv: Fix flipped bit for cross and square 2019-10-29 20:08:49 +00:00
Jakob Bornecrantz e84ca2de34 st/oxr: Use xrt_compositor helpers 2019-10-28 21:00:56 +00:00
Jakob Bornecrantz 1abdae5b64 xrt: Add helper functions for xrt_compositor 2019-10-28 20:56:33 +00:00
Jakob Bornecrantz c11640d66b st/oxr: Make sure actions that are not marked as active are deactivated 2019-10-28 14:58:59 +00:00
Jakob Bornecrantz 312a99ecf8 st/oxr: Implement any sub-action path handling 2019-10-28 14:58:59 +00:00
Christoph Haag 7d9ef2f371 comp: Add setting to force a vulkan gpu index 2019-10-25 21:05:06 +02:00
Jakob Bornecrantz 186f3ff7e0 st/prober: Ignore I2C based hid devices 2019-10-25 18:39:34 +01:00
Jakob Bornecrantz 5f4ddcc414 t/cli: Add a just probe command 2019-10-25 18:34:18 +01:00
Ryan Pavlik 56f61412f5 d/psmv: Fix possible alignment issues and endianness comments 2019-10-25 18:08:20 +01:00
Jakob Bornecrantz 06ffb8da8f d/psvr: Remove none used inbuilt mesh 2019-10-25 13:05:54 +00:00
pblack 73420739d9 d/psvr: Adjust values and remove comments 2019-10-25 13:05:54 +00:00
Jakob Bornecrantz c5e1511271 d/psvr: Use new mesh distortion generator functions 2019-10-25 13:05:54 +00:00
Jakob Bornecrantz be712c7049 d/ohmd: Use mesh shader for none distortion 2019-10-25 13:05:54 +00:00
Jakob Bornecrantz ef6931b7f9 aux/util: Refactor mesh generation 2019-10-25 13:05:54 +00:00
Jakob Bornecrantz b403da22eb aux/util: Add distortion mesh generation 2019-10-25 13:05:54 +00:00
Jakob Bornecrantz b67d65b4a5 aux/util: Add function to free device and stuff hanging off it 2019-10-25 13:05:54 +00:00
Jakob Bornecrantz 9b6625961a comp: Implement new mesh shader 2019-10-25 13:05:54 +00:00
Jakob Bornecrantz 9d238d7313 xrt: Refactor mesh distortion fields 2019-10-25 13:05:54 +00:00
Jakob Bornecrantz cdafcda626 math: Add some vec2 functions 2019-10-25 13:05:54 +00:00
Jakob Bornecrantz c906caabf4 d/psvr: Disable mesh distortion 2019-10-25 13:05:54 +00:00
Jakob Bornecrantz babd3af4ae d/psvr: Add link to documention 2019-10-25 12:32:40 +01:00
Jakob Bornecrantz b9e1ca6e55 d/psvr: Document calibration data getting process better 2019-10-25 12:27:54 +01:00
Jakob Bornecrantz fda43c5a19 d/psvr: Add code to get device name and calibration data 2019-10-25 11:11:45 +01:00
Jakob Bornecrantz 6580e3ee3f d/psmv: Use U_ZERO 2019-10-24 22:45:07 +01:00
Jakob Bornecrantz 6bfb1d9110 d/psmv: Fix buttons parsing 2019-10-24 22:16:40 +01:00
Ryan Pavlik 6b8b1ae935 st/oxr: Fix changed since last sync and support for more input types 2019-10-24 22:16:40 +01:00
Jakob Bornecrantz aa52da072f xrt: Remove relation input type 2019-10-24 21:51:07 +01:00
Ryan Pavlik 0ebf754996 xrt: Add XRT_GET_INPUT_TYPE, document XRT_INPUT_NAME 2019-10-24 21:43:18 +01:00
Ryan Pavlik 166bee167e xrt: Comment the input types 2019-10-24 21:43:14 +01:00
Ryan Pavlik 6b0f18bf6e tracking: Build kalman things as a single TU 2019-10-24 18:51:21 +02:00
Jakob Bornecrantz 8f6da565e2 d/v4l2: Align up the buffer size 2019-10-24 16:43:45 +01:00
Ryan Pavlik d3d6f15107 st/prober: More data in the "failed to get interface number" messages. 2019-10-24 15:45:41 +01:00
Ryan Pavlik 1ce0124d5c t/psmv: Simple two-state machine for tracking. 2019-10-24 15:45:41 +01:00
Ryan Pavlik af85f6af6b t/psmv: Reset filter if we get non-finite 2019-10-24 15:44:01 +01:00
Ryan Pavlik 28abcf7ce6 t/psmv: Filter the blobs selected 2019-10-24 15:44:01 +01:00
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
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 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
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