Commit graph

375 commits

Author SHA1 Message Date
Anthony J. Thibault
ca3fe28b05 JavaScript exceptions during Controller system callbacks are now logged
(cherry picked from commit d3aec12e9e76e4aeb8ecbd449cc76afda1a0e35d)
2018-03-28 14:01:21 -07:00
Dante Ruiz
b8796db1e5 Merge branch 'master' of github.com:highfidelity/hifi into remap-keybaord 2018-03-26 09:13:58 -07:00
SamGondelman
06c0b3afd3 disable IK on android, input recorder doesn't do anything if off 2018-03-16 16:52:12 -07:00
Dante Ruiz
fe363e7f2a changing keybaord mapping 2018-03-06 14:16:25 -08:00
Anthony J. Thibault
f0985a8a01 Code review feedback
clamp _rotationConstant and _translationConstante between 0 and 1.
re-organized apply structure, to prevent transforming invalid values.
2018-01-04 14:21:53 -08:00
Anthony J. Thibault
42424d32f1 Added exponential smoothing filter
Tuned coefficients to maximize glitch and vibration damping while minimizing latency.
2017-12-08 09:29:54 -08:00
SamGondelman
cf34fe3345 laserpointers generate pointerevents 2017-10-26 12:01:09 -07:00
Bradley Austin Davis
b93e91b9f3 New android toolchain 2017-09-19 13:45:12 -07:00
Anthony J. Thibault
98bbe887b9 Merge branch 'master' into feature/secondary-pose-support 2017-08-04 16:11:13 -07:00
seefo
106b0ad8bb Added Vive pucks as an input channel 2017-08-02 13:08:43 -07:00
Anthony J. Thibault
78c6564174 Merge branch 'master' into feature/secondary-pose-support 2017-07-27 09:09:32 -07:00
Chris Collins
853101fcbc Merge pull request #10928 from 1P-Cusack/21362
Add point and thumb up gestures to the Vive.
2017-07-26 22:07:14 -07:00
1P-Cusack
9e25c3b7d8 Renaming 'not' route to 'logicalNot'.
Build was failing on non-windows platforms because 'not' is a reserved
word in C++ (which Visual Studio happily ignores).
2017-07-25 14:47:34 -04:00
1P-Cusack
af751c8b8c Add filter to map the boolean negation of a flag. 2017-07-17 10:53:37 -04:00
Anthony J. Thibault
c85e187c61 first stab at secondary target pose support 2017-07-13 18:12:33 -07:00
David Rowe
07697c5083 Merge branch 'master' into 21418
# Conflicts:
#	interface/resources/qml/hifi/dialogs/GeneralPreferencesDialog.qml
#	interface/resources/qml/hifi/tablet/TabletGeneralPreferences.qml

Removed stray "Vive Controller Picks" configuration item which no longer exists.
2017-07-01 11:19:00 +12:00
David Rowe
88ed69a4a1 Code review 2017-06-29 08:58:27 +12:00
David Rowe
31714675c3 Remove unused Sixense preference and associated methods 2017-06-26 16:14:57 +12:00
David Rowe
bed0e8ef87 Merge branch 'master' into 21396
# Conflicts:
#	interface/src/avatar/MySkeletonModel.cpp
2017-06-26 12:07:25 +12:00
Seth Alves
05f0ec267e fix an initialization order fiasco 2017-06-24 18:53:00 -07:00
David Rowe
6ff8aed5e3 Merge branch 'master' into 21396 2017-06-22 23:54:15 +12:00
David Rowe
3bdf267900 Implement fingers control 2017-06-22 23:32:06 +12:00
Brad Davis
a69cf31f4b PR feedback and cmake fixes 2017-06-16 16:59:58 -07:00
Seth Alves
d91b3700a7 Merge branch 'master' of github.com:highfidelity/hifi into head-controller 2017-06-02 10:07:50 -07:00
Seth Alves
48ee546545 Merge branch 'master' of github.com:highfidelity/hifi into head-controller 2017-06-01 16:15:03 -07:00
Dante Ruiz
77eb75db95 add .json to extension 2017-06-01 22:48:59 +01:00
Dante Ruiz
6bc53388f8 Merge branch 'master' of github.com:highfidelity/hifi into record-standard 2017-06-01 22:34:57 +01:00
Dante Ruiz
725388043f removed double semi-colons 2017-06-01 22:30:50 +01:00
Dante Ruiz
2a5c43026a gzip recording data 2017-06-01 22:27:51 +01:00
Dante Ruiz
9a8030cc09 Merge branch 'recorder-fix' into record-standard 2017-06-01 19:01:54 +01:00
Dante Ruiz
0e82b33d6d final changes 2017-06-01 19:00:31 +01:00
Dante Ruiz
e52765b641 playback recording back through the standard inputs 2017-06-01 18:51:24 +01:00
Dante Ruiz
c686acc071 fixing build issue 2017-06-01 18:20:56 +01:00
Seth Alves
eb94c48c5b merge from upstream 2017-06-01 10:10:11 -07:00
Dante Ruiz
23a9209285 Merge branch 'master' of github.com:highfidelity/hifi into recorder-fix 2017-06-01 18:06:37 +01:00
Dante Ruiz
a1e0737928 saving work 2017-06-01 18:06:06 +01:00
Sam Cake
d19956f93c Fixing warnings 2017-05-31 22:02:47 -07:00
Dante Ruiz
cca0fa6600 fixed some input recorder design issue 2017-06-01 00:23:37 +01:00
Seth Alves
ffe844a8e7 Merge branch 'master' of github.com:highfidelity/hifi into head-controller 2017-05-30 13:42:20 -07:00
Seth Alves
af5ba3a90a ask display-plugins if they are head-controllers 2017-05-25 15:14:10 -07:00
Seth Alves
3823ece153 Merge branch 'master' of github.com:highfidelity/hifi into head-controller 2017-05-25 10:57:46 -07:00
Seth Alves
bdbc6ddcc1 change some code to look at head-controller position rather than hmd position 2017-05-25 10:50:41 -07:00
Dante Ruiz
8cb9bfcc81 fixed merge conflict 2017-05-24 19:35:41 +01:00
Dante Ruiz
ac3c9655ec added arms 2017-05-24 01:28:08 +01:00
Dante Ruiz
d98e7d5bc6 adding left and right arm 2017-05-23 00:26:12 +01:00
Dante Ruiz
78f6d2e850 fix low velocity filter 2017-05-18 21:22:42 +01:00
Dante Ruiz
90ddc16d09 add calibration data to filters 2017-05-18 17:07:28 +01:00
Dante Ruiz
b0fa26e390 fix wierd calibration effect due to low velocity filter 2017-05-16 16:38:01 +01:00
Dante Ruiz
975b1ab077 moved low velocity filter in the input system 2017-05-16 00:15:06 +01:00
Dante Ruiz
c689b9949c fixed merge conflict 2017-05-15 16:11:28 +01:00
Dante Ruiz
655483182c daving work 2017-05-12 23:38:20 +01:00
Dante Ruiz
6155d31513 removed debug statment 2017-05-12 19:48:31 +01:00
Dante Ruiz
1f328cc923 made requested changes 2017-05-12 19:46:12 +01:00
Dante Ruiz
9a0fd78e41 fixed indentation 2017-05-12 19:34:13 +01:00
Dante Ruiz
026daef842 fixed input recorder crash 2017-05-12 19:26:37 +01:00
Dante Ruiz
0cae299192 fix issue when loading file to the input recorder 2017-05-11 00:20:21 +01:00
Seth Alves
b82a333a5e Merge pull request #10196 from ZappoMan/poseFilters
support for input controller pose filters
2017-05-02 09:46:22 -07:00
Anthony J. Thibault
2120e63e3a Merge branch 'master' into feature/head-standard-action 2017-04-27 17:51:13 -07:00
ZappoMan
829fa2b323 Merge branch 'master' of https://github.com/highfidelity/hifi into poseFilters 2017-04-27 08:17:59 -07:00
Anthony J. Thibault
ef43ff4b99 Add default pose matrices to InputCalibrationData structure 2017-04-26 11:55:24 -07:00
Dante Ruiz
79d827c6be added requested features 2017-04-26 16:52:51 +01:00
Anthony J. Thibault
1fc9f4c93d Hips and Spine are routed thru input system properly 2017-04-25 17:22:47 -07:00
Seth Alves
0cd2863df4 start on routing HMD position and rotation through controller interface
(cherry picked from commit bca5241bae7674ff7e41c037d84bb78e5152046a)
2017-04-25 11:01:52 -07:00
Dante Ruiz
8c020a0ec2 saving work 2017-04-25 18:01:19 +01:00
Dante Ruiz
2a997f2a4d fix for ubuntu build error 2017-04-24 23:08:02 +01:00
Dante Ruiz
8705db07e5 removed dead code 2017-04-24 22:22:49 +01:00
Dante Ruiz
367a6ac03c first prototype 2017-04-24 22:09:01 +01:00
Dante Ruiz
d057dfebf0 got input recording to work 2017-04-24 19:57:38 +01:00
Dante Ruiz
64fcfd33a4 working on loading files 2017-04-21 22:38:53 +01:00
Dante Ruiz
07f674eabe exprting compressed file 2017-04-19 20:41:56 +01:00
Dante Ruiz
1cf9485143 fixed compile issue 2017-04-19 00:23:05 +01:00
Dante Ruiz
5cd4007aaa got input recording working 2017-04-18 21:53:23 +01:00
Dante Ruiz
cd095915ef removed emacs junk file from my repo 2017-04-18 00:32:30 +01:00
Dante Ruiz
c298886896 hooking up the input playback 2017-04-18 00:17:14 +01:00
druiz17
4bf3fa56f8 saving work 2017-04-16 21:26:09 -07:00
ZappoMan
8ff1ca8af6 swap the velocity components 2017-04-12 16:11:06 -07:00
ZappoMan
dce73ea428 some cleanup 2017-04-12 13:43:57 -07:00
ZappoMan
afe7c386c3 added postTransform filter 2017-04-11 17:03:33 -07:00
ZappoMan
6daf68b338 tweak 2017-04-11 14:18:21 -07:00
ZappoMan
82166f4947 add rotate and transform filters for poses 2017-04-11 14:06:36 -07:00
ZappoMan
bab7d1e596 first cut at translate and scale pose filters 2017-04-11 12:17:28 -07:00
Anthony Thibault
be2fdd9388 Merge pull request #10063 from hyperlogic/feature/vive-tracked-objects
Vive: Expose all 16 tracked poses to the controller system
2017-04-05 16:53:47 -07:00
ZappoMan
53c439ffba add foot IK targets as actions 2017-03-30 19:11:16 -07:00
Anthony J. Thibault
d47c040768 Vive: Expose all 16 tracked poses to the controller system.
This is in preparation for the Vive hockey puck trackers...
2017-03-29 18:15:29 -07:00
Brad Hefta-Gaub
87e8b6bfeb only consider standard poses written if the pose was valid 2016-12-12 09:23:01 -08:00
Anthony J. Thibault
0c8105b551 Revert "Merge pull request #9141 from hyperlogic/feature/my-avatar-docs-part-1"
This reverts commit 934148fea5, reversing
changes made to d2b32c3084.
2016-12-05 15:17:53 -08:00
Anthony J. Thibault
35eeaad590 Added jsdocs for MyAvatar
Not complete by any means, but it's a start.
2016-12-01 17:38:43 -08:00
Brad Hefta-Gaub
8da9fccb5d fix 'any endpoints' for axis style inputs 2016-10-08 20:24:52 -07:00
Seth Alves
4470338663 catagorize some qDebugs 2016-09-14 21:39:45 -07:00
Seth Alves
25f6e1d79d Merge branch 'master' of github.com:highfidelity/hifi into arrow-actions 2016-09-01 15:06:52 -07:00
Stephen Birarda
85ba0f36cf fix controllers/shared compile for android interface port 2016-08-31 16:34:31 -07:00
Seth Alves
9884426ad8 replace debugging aborts with asserts 2016-08-26 06:13:33 -07:00
Seth Alves
7c5b8cb75d send faux joints to the avatar-mixer 2016-08-25 15:21:29 -07:00
Seth Alves
39f52b3682 start on faux avatar joint that represent hand controllers 2016-08-25 10:58:23 -07:00
Seth Alves
87dbfa7e47 add -Wsuggest-override to compile flags and deal with fallout 2016-08-18 09:51:41 -07:00
Brad Davis
091e798267 Make hand pointer lasers 'click' on fully pressing and clicking the vive controller 2016-07-14 10:30:35 -07:00
Bradley Austin Davis
62051ad297 Working on touch 2016-06-13 14:40:15 -07:00
Brad Davis
472a3540d7 Merge remote-tracking branch 'upstream/master' into vive-ui
Conflicts:
	scripts/system/controllers/handControllerGrab.js
2016-06-10 10:43:09 -07:00
Brad Hefta-Gaub
fc5214c938 Merge pull request #8033 from SamGondelman/xboxFix
Game pads work after falling asleep and being reactivated
2016-06-08 16:27:26 -07:00
Brad Hefta-Gaub
8434aa9416 Merge pull request #8027 from SamGondelman/exposeHaptics
Expose haptics to JS
2016-06-08 16:17:04 -07:00
SamGondelman
2c1d20bd1a removed _deviceCounts, cache joystick available inputs, added deadzone to gamepad thumbsticks 2016-06-07 17:12:24 -07:00
SamGondelman
545dda0a98 whoops 2016-06-07 15:15:42 -07:00
SamGondelman
5daccba235 xbox controller works on restart 2016-06-07 15:14:08 -07:00
SamGondelman
dd97f16728 investigating xbox failure on restart (WIP) 2016-06-07 11:42:58 -07:00
SamGondelman
e7743cd8e2 added options for both hands (default), all devices, short pulse, and fixed touch timing mechanism 2016-06-06 15:03:08 -07:00
SamGondelman
2367cb1995 fixing input mapping for vive/touch grip button/trigger, script needs fixing 2016-06-03 15:07:21 -07:00
SamGondelman
69971a3439 fix one more tab 2016-06-02 12:20:05 -07:00
SamGondelman
642438a259 fix tabs 2016-06-02 12:18:56 -07:00
SamGondelman
6ca02dcad2 expose Controller.triggerHapticPulse to javascript (currently does nothing) 2016-06-02 12:11:13 -07:00
howard-stearns
c2858f847b Partition vive trackpad by center, x, and y (not just center v outer). 2016-05-31 16:57:23 -07:00
howard-stearns
a3f1ece978 Do button mapping in C++ and simplify vive.json accordingly. Vive and
Hydra now use PrimaryThumb and SecondaryThumb. Fix warnings for Neuron.
2016-05-24 16:10:12 -07:00
Seth Alves
40e862cf9e quiet gcc 5 warnings 2016-05-21 16:53:01 -07:00
Brad Davis
07562f72af Doing a pass over the input plugins and controller code 2016-05-20 14:50:23 -07:00
Brad Davis
ba357721bf Merge pull request #7864 from hyperlogic/tony/vive-controller-improvements
Fix for vive controllers sometimes not working
2016-05-11 14:32:33 -07:00
Anthony J. Thibault
09a4e0eaa8 Fix for vive controllers sometimes not working
* Fixed bug with input devices that where added, removed then re-added.
  The default mappings were being ignored on the second add.
* Fixed potential crash when hardware inputPlugin device poses were polled from the JavaScript thread
  by taking the UserInputManager lock during pluginUpdate.
* Renamed Controller.Hardware.Vive.LB & RB to LeftGrip and RightGrip, to better match Oculus touch.
* Updated resource/controller/vive.json to reflect this new mapping.
* Exposed touch pad capacitive touch events to JavaScript as
  Controller.Hardware.Vive.LSTouch and RSTouch.
* Added viveTouchpadTest.js script to test LSTouch and RSTouch events.
2016-05-10 19:32:08 -07:00
Howard Stearns
773770a7fc All but origin-correction. 2016-05-03 07:01:23 -07:00
Brad Davis
4c78c0b330 Fix broken xbox controllers 2016-04-07 13:17:49 -07:00
Brad Davis
d8310cc6b1 Reduce controller log spam 2016-04-07 10:41:55 -07:00
Brad Davis
85019b2b5e Fixing logging errors on initial load of controller routes 2016-04-07 10:41:54 -07:00
Zach Pomerantz
062760ff3b Log failed routes 2016-04-05 14:59:48 -07:00
Brad Davis
d056c41e25 Update to latest Oculus SDK, add input device support 2016-03-30 10:40:28 -07:00
Brad Davis
f97e61e305 Make scripting interface members thread safe 2016-03-10 08:46:09 -08:00
Brad Hefta-Gaub
5828c32041 add toggleOverlays menu item and action 2016-02-25 08:31:11 -08:00
Brad Hefta-Gaub
a25581c656 clean up reticle scripting to be exposed through Reticle object (implemented int ApplicationCompositor) 2016-02-16 12:11:58 -08:00
Brad Davis
b5cba79f0c Merge pull request #7095 from ZappoMan/hmdHacking
Various bug fixes in related to HMD overlay support
2016-02-12 17:50:42 -08:00
Brad Hefta-Gaub
1c2096bc30 remove some unrelated whitespace changes 2016-02-12 16:09:51 -08:00
Brad Hefta-Gaub
1160ecb335 improvements in HMD UI behavior 2016-02-12 10:51:33 -08:00
Anthony J. Thibault
111ed65bf8 Controller Pose values are relative to Avatar.
Pass a InputCalibrationData to each inputPlugin and inputDevice.
This contains the most up sensorToWorldMatrix, avatarMat and hmdSensorMatrix.
Each input plugin can use this data to transform it's poses into Avatar space
before sending it up the chain.

This fixes a bug in the handControllerGrab.js script that relied on the hand controller
rotation/positions being in the avatar frame.
2016-02-11 17:18:01 -08:00
Brad Davis
000130617e Allow input devices to break up their mappings into multiple files 2015-12-30 22:28:10 -08:00
Brad Davis
c77b66f88c Make navigation directions into axes 2015-12-30 22:28:08 -08:00
Brad Davis
3eddf8d4a4 Allow and conditionals to be initialized from simple pairs 2015-12-30 22:24:34 -08:00
Brad Davis
4c26627622 Add navigation actions and wire them up in the standard controller 2015-12-30 17:14:40 -08:00
Anthony Thibault
878fe80040 Merge branch 'master' into tony/neuron-plugin 2015-12-25 10:24:55 -08:00
Anthony Thibault
84260192fb Set up controller poses to match hifi standard skeleton
Neuron plugin in fills in the gap (thumb1) with identity.
Updated neuronAvatar script to work with new controller pose names.
2015-12-25 09:57:50 -08:00
Anthony J. Thibault
c44f69b370 WIP checkpoint
Changed euler angle compisition based on experiments in maya.
Also, the neuronAvatar.js attempts to transform the neuron input quaternions into
a pose relative to the avatar's default pose, but doesn't it doesn't work.
2015-12-23 17:13:52 -08:00
Anthony J. Thibault
6afe3bae5e Copy Neuron joints into controller poses
This makes the accessible for controller mapping and to JavaScript.

Added 'neuronAvatar.js' as an example of reading joints from the neuron and setting them
on the avatar.  NOTE: the rotations are currently in the wrong coordinate frame.
2015-12-22 17:21:33 -08:00
Brad Hefta-Gaub
4075f355a3 more work on hand movement 2015-12-18 15:44:01 -08:00
Brad Hefta-Gaub
5701ad2e8c update to new angular velocity 2015-12-18 12:38:50 -08:00
Brad Hefta-Gaub
fff567d854 Merge branch 'master' of https://github.com/highfidelity/hifi into rightClickMenu 2015-12-18 12:31:24 -08:00
Andrew Meadows
d6541e9ee7 angular velocity is a vector, not a quaternion 2015-12-18 11:06:58 -08:00
Brad Hefta-Gaub
d344ef6e2a fix warning in my PR 2015-12-17 18:10:41 -08:00
Brad Hefta-Gaub
762aefbbca add hand driven reticle 2015-12-17 17:38:20 -08:00
Brad Hefta-Gaub
0b9bd858a7 implement support for pose ScriptEndpoints 2015-12-16 21:28:27 -08:00
Brad Hefta-Gaub
6420a43858 fix type 2015-12-15 15:35:17 -08:00
Brad Hefta-Gaub
3dcdfbc0f1 first cut at simulating mouse/reticle behavior with input contorllers 2015-12-15 13:59:22 -08:00
Atlante45
cb758ca6b4 Fix override warnings on XCode 7 2015-12-04 08:55:43 -08:00
Atlante45
e630f3072e Bit of cleanup 2015-11-06 11:14:10 -08:00
Brad Davis
20d1035821 Fixing step yaw to move by consistent amounts, be 'tappable' 2015-11-04 15:54:50 -08:00
Brad Davis
18d2b184dc Fix ability to enable mappings parsed from JSON in JS 2015-11-04 11:39:34 -08:00
James B. Pollack
192e4c8185 Merge pull request #6274 from ZappoMan/rightClickMenu
add example of overriding default rightClick behavior
2015-11-02 18:58:12 -08:00