Commit graph

553 commits

Author SHA1 Message Date
Anthony J. Thibault
89ae3b3d6e Revert "Merge pull request #8691 from highfidelity/out-of-body-experience"
This reverts commit efe9571ab8, reversing
changes made to 333e9ec7f4.
2016-12-05 15:18:03 -08:00
Ryan Huffman
996d3f5875 Merge pull request #9135 from druiz17/nearGrab
Fixed pressing the grip button causes a near grabbed object to drop
2016-12-05 11:07:15 -08:00
Dante Ruiz
08301d488d clean up 2016-12-05 18:10:54 +00:00
Dante Ruiz
09d5dc382f better solution 2016-12-05 18:08:36 +00:00
Seth Alves
24e54f25bf Merge pull request #9108 from PhilipRosedale/drifting
Grab.js weaker at a distance
2016-12-01 12:59:28 -08:00
Philip Rosedale
c60b0c7ef5 Fix indents 2016-12-01 12:54:38 -08:00
Seth Alves
efe9571ab8 Merge pull request #8691 from highfidelity/out-of-body-experience
Room Scale HMD comfort features.
2016-12-01 11:09:39 -08:00
Dante Ruiz
1b24d373d2 fixed near grab issue 2016-12-01 10:18:34 -08:00
Dante Ruiz
dc7bb5b083 grip button fix 2016-12-01 10:17:54 -08:00
Chris Collins
19b5e7cd86 Merge pull request #9054 from howard-stearns/third-person-lasers
make hand-controller ui work in third person
2016-12-01 10:11:12 -08:00
Anthony J. Thibault
7f840d3a08 Can use 'xboxLaser' in third person camera 2016-11-30 10:01:11 -08:00
Ryan Huffman
aa1e813d72 Fix 'releaseGrab' not being called when using grip buttons 2016-11-29 15:04:14 -08:00
Philip Rosedale
664b54c004 remove whitespace 2016-11-22 10:27:27 -08:00
Philip Rosedale
c1e044364f Added distance attentuation of linear and angular rate 2016-11-22 10:24:02 -08:00
Anthony J. Thibault
270adfe692 removed debug prints 2016-11-17 11:40:05 -08:00
Anthony J. Thibault
38ac6fff03 Hand Controller rendering is camera relative
Basically, when using the third person camera in HMD mode.  If the controllers are shown.
They should be shown in front of the users camera, not in front of the users avatar.

To accomplish this, two new faux joint indices are introduced.
CAMERA_RELATIVE_CONTROLLER_RIGHTHAND_INDEX and CAMERA_RELATIVE_CONTROLLER_LEFTHAND_INDEX.

These joint indices can be used for Overlay parenting. (But not for entity parenting because they are not transmitted over the network).
They can also be queried for by using the MyAvatar.getAbsoluteJointRotationInObjectFrame() call.

These new indices are now used by the controllerDisplay.js for the hand controller rendering.
They are also used by system/libraries/controllers.js as the origin for hand controller grabbing and interaction lasers.
2016-11-17 11:33:12 -08:00
Andrew Meadows
6bb3dd6830 Merge hifi/master into hifi/out-of-body-experience 2016-11-14 15:08:04 -08:00
Philip Rosedale
981f505a9c Merge branch 'master' of git://github.com/highfidelity/hifi into drifting 2016-11-14 14:26:45 -08:00
howard-stearns
e2fded846f make hand-controller ui work in third person 2016-11-11 11:10:42 -08:00
Philip Rosedale
c0b1392685 Merge branch 'master' of git://github.com/highfidelity/hifi into drifting 2016-11-10 13:41:13 -08:00
Dante Ruiz
e22c36b4b7 fixed menu pop up delay 2016-11-07 17:16:24 +00:00
Andrew Meadows
ccdf383151 Merge hifi/master into hifi/out-of-body-experience 2016-11-07 08:24:26 -08:00
Dante Ruiz
1a83cc2c3e fixed deleted comment 2016-11-02 00:12:23 +01:00
Dante Ruiz
d29b1c34b1 fixed coding standard conflicts 2016-11-02 00:07:58 +01:00
Dante Ruiz
e9d10b609d removed bad commit 2016-11-02 00:05:38 +01:00
Dante Ruiz
86abd9120e Fixed menu out of view with HMD and Xbox controller 2016-11-01 14:30:48 -07:00
Ryan Huffman
d933155c71 Fix trigger highlight configuration 2016-10-27 20:16:34 -07:00
Ryan Huffman
69e7dababc Collapse multiline dict to one line in controllerDisplay 2016-10-27 15:16:38 -07:00
Ryan Huffman
c0e372c380 Remove annotation API from controller display 2016-10-27 14:58:20 -07:00
Ryan Huffman
1f25ba8f1f Update controller tips and trigger highlight in tutorial 2016-10-27 14:58:20 -07:00
Ryan Huffman
e9099b77a5 Add more debug to tutorial, new firecrackers, and adjust fuse 2016-10-27 14:58:20 -07:00
Andrew Meadows
38e4ac0ae9 Merge master into out-of-body-experience 2016-10-26 16:59:31 -07:00
Ryan Downe Karpf
7a4302057a Merge pull request #8900 from huffman/fix/disable-controller-hide-on-equip
Update vive controller display to not hide on equip
2016-10-25 13:16:31 -07:00
Ryan Huffman
af749605ea Update vive controller display to not hide on equip 2016-10-25 08:27:20 -07:00
Brad Hefta-Gaub
ed4279783d CR feedback 2016-10-24 20:38:49 -07:00
Brad Hefta-Gaub
76ca3aa546 fix residual head laser 2016-10-24 15:25:06 -07:00
Brad Hefta-Gaub
779f326452 cleanup 2016-10-24 15:03:41 -07:00
Brad Hefta-Gaub
a25d50387e gak 2016-10-24 14:47:10 -07:00
Andrew Meadows
ccc6f8eee2 fix teleport.js to work for out-of-body 2016-10-24 08:36:51 -07:00
Andrew Meadows
51a9a99381 Merge hifi/master into hifi/out-of-body-experience 2016-10-24 08:13:42 -07:00
Brad Hefta-Gaub
0f8967970a Merge branch 'master' of https://github.com/highfidelity/hifi into xboxLasers 2016-10-24 08:11:31 -07:00
Brad Hefta-Gaub
a282d83546 more work on extra lasers 2016-10-24 07:46:04 -07:00
Anthony J. Thibault
ae301602e7 Fix for incorrect tip texture URLs. 2016-10-21 14:49:46 -07:00
Anthony J. Thibault
60f728585a away.js now shows hand controllers in away mode.
* controllerDisplayManager is now part of default scripts.
* Also tutorial and away.js communicate with controllerDisplayManager via HMD.requestShowHandControllers, HMD.requestHideHandControllers
  and sendLocalMessage.
* removed previous version of controllerDisplayManger from tutorial.
2016-10-21 10:40:39 -07:00
Anthony J. Thibault
2193c5faad Integrated controller display from tutorial scripts + assets 2016-10-20 18:24:58 -07:00
Brad Hefta-Gaub
1a28732b64 Merge branch 'master' of https://github.com/highfidelity/hifi into xboxLasers
Conflicts:
	libraries/display-plugins/src/display-plugins/hmd/HmdDisplayPlugin.cpp
	libraries/display-plugins/src/display-plugins/hmd/HmdDisplayPlugin.h
2016-10-20 09:38:03 -07:00
Brad Hefta-Gaub
9008de72e0 Merge pull request #8864 from hyperlogic/feature/grab-sphere-adjustments
Adjustment to position and visibility of grab sphere.
2016-10-19 21:51:02 -07:00
Anthony J. Thibault
55c062098a Adjustment to position and visibility of grab sphere.
* The grab sphere used to detect near grabbing is now 10cm in radius instead of 4cm.
* The visual representation of this grab sphere is always hidden, by default.
* This representation can be enabled in via the "Developer > Show Grab Sphere" menu item.
2016-10-19 17:33:05 -07:00
Anthony J. Thibault
bcd31e3d99 Adjust size and offset of grab balls to better align with hand controllers.
(cherry picked from commit d97a8c2e7eace2494d3142e8187022a33aedc060)
2016-10-19 15:59:26 -07:00
Seth Alves
7e4964db3e Merge pull request #8684 from Menithal/controller-grab-unequip
Fixed HandcontrollerGrab distance unequip
2016-10-19 09:53:04 -07:00
Brad Hefta-Gaub
c082c74cc0 use head pose for controller in case there are no hand controllers available 2016-10-18 10:01:00 -07:00
Ryan Huffman
5f5dedaa40 Fix equip sphere not showing up 2016-10-17 10:53:02 -07:00
howard-stearns
140caf84d8 never interact with hud elements while holding something 2016-10-14 18:30:52 -07:00
Howard Stearns
fc8bbde60a Merge pull request #8810 from ZappoMan/handControlsWhileLoading
make laser pointers work even while content is loading
2016-10-14 10:01:46 -07:00
Brad Hefta-Gaub
ef3c9ba78a better handling of the teleport target overlays to prevent flashing and thrashing 2016-10-13 18:24:38 -07:00
Brad Hefta-Gaub
ddce0ef74a make laser pointers work even while content is loading 2016-10-13 17:50:20 -07:00
Anthony J. Thibault
81db8f7e08 Merge branch 'master' into out-of-body-experience 2016-10-13 17:27:15 -07:00
Andrew Meadows
d54c07ed14 Merge 'master' into 'out-of-body-experience' 2016-10-12 13:35:27 -07:00
howard-stearns
0099a4e549 allow hand controller operations when Interface doesn't have focus, but
ONLY when in hmd.
2016-10-12 11:23:06 -07:00
Seth Alves
16af14d1f6 Merge pull request #8758 from hyperlogic/bug-fix/allow-ignoreik-false
allow equipped object to follow hand and not controller
2016-10-12 09:52:57 -07:00
Brad Hefta-Gaub
e1a3bc7d55 hide/show grab point sphere only when in a grabbable entity 2016-10-11 16:22:42 -07:00
Brad Hefta-Gaub
93d9cf7917 adjust grab indicators 2016-10-11 12:42:26 -07:00
Brad Hefta-Gaub
4ec9299930 fix reticle depth when not moving mouse, but moving head relative to HUD 2016-10-08 14:31:30 -07:00
Menithal
4bed3ee036 Adjusted theoretical Unequip time to 250 ms 2016-10-08 01:36:57 +03:00
Andrew Meadows
55c90e7bca Merge branch 'master' into out-of-body-experience 2016-10-07 15:18:08 -07:00
Anthony J. Thibault
7c7a9055d1 Allow grabbed objects to override the ignoreIK = true default.
They can do this by adding the following to their userData.

    grabbableKey: {
        ignoreIK: false
    }

When this is present and false, the object will follow the hand joint, otherwise it will follow the hand controller.
2016-10-07 14:50:00 -07:00
Anthony J. Thibault
0c2ebc27cb Fix for exception in handControllerGrab.js
Specifically this:
    [UncaughtException] TypeError: Result of expression 'this.handToController' [undefined] is not a function. in file:///C:/msys64/home/anthony/code/hifi/build/interface/Release/scripts/defaultScripts.js:1388
2016-10-07 14:48:55 -07:00
Ryan Huffman
a5e3fa45c3 Fix advanced movement being disabled 2016-10-07 10:30:18 -07:00
Ryan Huffman
c74df965ba Fix misnamed function and duplicate onFinish in tutorial 2016-10-07 10:30:18 -07:00
Ryan Huffman
fec8049226 Add proper disabling to advanced movement script 2016-10-07 10:30:18 -07:00
Ryan Huffman
827506e929 Disable 180 spin in tutorial 2016-10-07 10:30:18 -07:00
Ryan Huffman
a4ffa7b23f Add disabling of right click menu with vive 2016-10-07 10:30:18 -07:00
Ryan Huffman
14323a06b3 Add interface to disable hand controller grab functionality 2016-10-07 10:30:18 -07:00
Ryan Downe Karpf
ed2571704f Merge pull request #8735 from huffman/feat/teleport-improvements
Update teleport.js to ignore invisible or collisionless objects and disallow teleporting to  certain surfaces
2016-10-07 09:56:30 -07:00
Ryan Huffman
d50689b795 Remove disabling of teleport in hand grab 2016-10-04 20:25:46 -07:00
Ryan Huffman
d0ba53a069 Change name of isTooCloseToTeleport to be more descriptive 2016-10-04 20:22:22 -07:00
Ryan Huffman
1e6aba1928 Fix teleport not removing overlay on teleport 2016-10-04 20:21:32 -07:00
Ryan Huffman
2ef7c9a57a Disable smooth movement in teleport.js 2016-10-04 20:21:32 -07:00
Ryan Huffman
53623f7583 Make teleport.js normal rejection more lenient 2016-10-04 20:21:30 -07:00
Ryan Huffman
813ed59f00 Update teleport to not collide with non collidable entities 2016-10-04 20:19:54 -07:00
Ryan Huffman
75265cff6e Update teleport to not let you teleport into walls 2016-10-04 20:19:54 -07:00
Ryan Huffman
b0c7e91737 Disable ray picking against invisible objects in far grab and teleport 2016-10-04 20:19:51 -07:00
Ryan Huffman
17c63eb722 Add the ability to ignore invisible entities in findRayIntersection 2016-10-04 20:19:32 -07:00
Ryan Huffman
8343cfd687 Add grip to unequip 2016-10-04 16:34:18 -07:00
Ryan Huffman
289cd6ba2b Adjust hand controller unequip rotation threshold 2016-10-04 16:34:18 -07:00
Menithal
a6040197eb Fixed HandcontrollerGrab unequip.
Will now use deltaTime and a second instead of instantly disconnecting on
if more than 0.1 off. This is to avoid accidental disconnection due to
acceleration and latency
2016-09-29 22:24:07 +03:00
Anthony J. Thibault
98ffea2fb9 Merge branch 'master' into out-of-body-experience 2016-09-22 18:08:23 -07:00
Brad Hefta-Gaub
2b01c60a55 Merge pull request #8615 from davidkelly/dk/1264
Make the equip sphere emissive
2016-09-19 16:33:55 -07:00
Anthony J. Thibault
aefe224215 Fix for jittery far-grab at low update rates
Clamp the blendFactor used to smooth out the motion of the far-grabbed object.
This prevents the newTargetPosition from over shooting it's goal.
2016-09-19 10:51:46 -07:00
David Kelly
22d80914e2 whitespace 2016-09-16 14:17:44 -07:00
David Kelly
ade17e6456 PR feedback 2016-09-16 14:15:14 -07:00
David Kelly
2ddd46f30b Switch to the cool looking model instead 2016-09-16 10:56:59 -07:00
David Kelly
1acfe017e1 Make the equip sphere emissive
maybe this will make it visible in low ambient light situations?
2016-09-15 17:12:35 -07:00
Seth Alves
e5e9bb0052 Merge branch 'master' of github.com:highfidelity/hifi into grab-point-adjustments 2016-09-14 11:28:10 -07:00
Andrew Meadows
09c4720665 fix typo in teleport.js 2016-09-12 16:35:52 -07:00
Andrew Meadows
9728cf6904 fix typos in teleport.js 2016-09-12 16:24:08 -07:00
Andrew Meadows
0d300c3a47 teleport.js drags avatar along 2016-09-12 16:24:08 -07:00
Anthony J. Thibault
86351ca21c Teleport bugs
* made HMD.setPosition thread safe
* changed script to use HMD.position = foo;
2016-09-09 17:32:02 -07:00
Andrew Meadows
82522fbbb1 fix C++ism typo in JS script 2016-09-09 16:40:07 -07:00
Andrew Meadows
6b9cdb440b update teleport.js to teleport HMD before avatar
(in theory, not tested)
2016-09-09 16:33:13 -07:00
Seth Alves
ecb0669972 try to keep far grab from getting stuck if the entity is brought very near to the grab-point 2016-09-08 17:02:29 -07:00
Seth Alves
0f98c51d89 distance-grabbed things collide with static entities 2016-09-08 16:13:22 -07:00
Seth Alves
9c96ffc9cb don't show grab-point spheres if controller poses aren't valid 2016-09-07 16:31:02 -07:00
Seth Alves
746d0cd91c get various hand lasers to all line up with grab-point sphere 2016-09-07 16:10:37 -07:00
Seth Alves
b45181ea92 don't back up pick-ray from hand 2016-09-07 13:32:26 -07:00
Anthony J. Thibault
dc0d0c2d5c Merge branch 'master' into feature/tablet-ui-foundation 2016-09-07 09:49:55 -07:00
Seth Alves
616b094111 experimenting with position of grab sphere 2016-09-06 16:16:09 -07:00
Seth Alves
34e4b4ae19 move haptic-pulse for when grab-point enters a grabbable entity to the right section of code 2016-09-06 15:37:37 -07:00
Seth Alves
215fd4ddfd fix grab-point sphere for right hand 2016-09-06 15:15:46 -07:00
Seth Alves
43c98b3f1e attempt to avoid a very-still far-grab leaving something non-dynamic in bullet upon release. adjust position of grab-point sphere 2016-09-06 14:42:53 -07:00
Seth Alves
b8b1127d55 merge from upstream 2016-09-02 15:11:21 -07:00
Anthony J. Thibault
0128d7c61b Merge branch 'master' into feature/tablet-ui-foundation 2016-09-02 12:16:25 -07:00
Anthony J. Thibault
3d5e8fc213 First pass of keyboard raising and lowering 2016-09-02 12:15:30 -07:00
Brad Hefta-Gaub
cf242eca9f Merge pull request #8537 from hyperlogic/feature/larger-marketplace-tablet
Marketplace tablet is a bit larger and lower DPI.
2016-09-02 08:45:29 -07:00
Seth Alves
9ef03b1205 avoid having auto-unequip code trigger during a teleport 2016-09-01 19:13:08 -07:00
Seth Alves
8505d1eeed avoid a bootstrap 2016-09-01 17:51:02 -07:00
Seth Alves
da35281941 don't assume collides-with-dynamic during a multi-grab 2016-09-01 16:57:23 -07:00
Seth Alves
b1eb4c361d if a hand is disabled while holding something, release it 2016-09-01 15:02:41 -07:00
Seth Alves
dd7e25441c include which hand in grab messages 2016-09-01 14:58:37 -07:00
Seth Alves
045042a9c6 don't disable grabbing when teleporting 2016-09-01 14:15:49 -07:00
Seth Alves
a35e527128 try to fix far-trigger 2016-09-01 11:46:08 -07:00
Seth Alves
53ba190ca6 don't do auto-release test unless the hand is equipping 2016-09-01 09:57:46 -07:00
Anthony J. Thibault
823420ae0a Working web entity keyboard
* Missing many keys
* Does not dynamically appear and disappear
2016-08-31 17:57:13 -07:00
Seth Alves
47259ee053 find equip-points with controller position rather than hand 2016-08-31 16:52:46 -07:00
Seth Alves
78f54a7f33 get rid of some jitter in equipped items. do a better job of deciding when something equipped has been torn-away 2016-08-30 14:39:11 -07:00
Seth Alves
617880479a Merge branch 'master' of github.com:highfidelity/hifi into arrow-actions 2016-08-30 11:19:40 -07:00
Seth Alves
3a5f92d7a2 ignoreIK for equipping. change how auto-unequip searches 2016-08-30 11:16:13 -07:00
Brad Davis
eb0a8db0af Merge pull request #8539 from hyperlogic/bug-fix/snappy-search-beam
When trigger is pulled, snap search beam to correct length instead of animating
2016-08-30 11:13:58 -07:00
Seth Alves
f4eee8d480 Merge branch 'master' of github.com:highfidelity/hifi into joints-for-controllers 2016-08-30 09:12:53 -07:00
Anthony J. Thibault
e34aecde49 Bug fix for click events received by entity scripts
PointerEvent.isLeftButton should be true even on left button release events.
in a previous PR this behavior was changed. isLeftButton was used as a flag indicating the button state, which would be false on left button release events.
Because we have scripts that rely on the old behavior, I've changed it back to the original and introduced isPrimaryHeld properties instead.
2016-08-29 16:21:39 -07:00
Anthony J. Thibault
3ed11d2e5f When trigger is pulled, snap search beam to correct length instead of animating.
This improves interaction on web browser tablets. Instead of the beam shooting
through the tablet and animating back to the surface, it starts at the correct length.
2016-08-29 13:22:57 -07:00
Anthony J. Thibault
dcd91d4398 removed debug flag 2016-08-29 12:04:48 -07:00
Anthony J. Thibault
0f42943bfb Marketplace tablet is a bit larger and lower DPI.
Bug fix for grabbing/equipping large objects, they no longer will drop immediately
if your grab point is too far away from the grabbed entity position.
2016-08-29 11:55:04 -07:00
Seth Alves
be1332532f disable debugging prints 2016-08-29 03:39:52 -07:00
Seth Alves
5daf334a0e avoid extra grab-point spheres when resetting scripts 2016-08-27 20:42:03 -07:00
Seth Alves
d69e712bef keep near-grab radius small but still allow large equip hotspots 2016-08-27 20:23:19 -07:00
Seth Alves
2a5d686a76 don't show grab-point sphere when near grabbing or equipping 2016-08-27 20:11:16 -07:00
Seth Alves
3355097bd0 handle another type of abandoned grab 2016-08-27 19:46:15 -07:00
Seth Alves
7dad303ce7 don't leave stray blue search sphere when near-grabbing 2016-08-27 19:25:05 -07:00
Seth Alves
765cd72e0e fix code that prints relative offsets of an equipped entity after it's been adjusted by the other hand 2016-08-27 19:13:32 -07:00
Seth Alves
cfca32e0b4 fix code that notices and fixes an abandoned grab 2016-08-27 16:00:27 -07:00
Seth Alves
e4b2b7158f hotspots with large radius work correctly, again 2016-08-27 09:30:26 -07:00
Seth Alves
acb04a0bc9 don't add children of controller joints until we know our avatar ID 2016-08-25 19:09:10 -07:00
Seth Alves
7c5b8cb75d send faux joints to the avatar-mixer 2016-08-25 15:21:29 -07:00
Seth Alves
948b4b7a15 in search, consider distance from grab-point rather than from avatar-hand when selecting the closest entity 2016-08-25 13:46:52 -07:00
Seth Alves
0783629cde grab-point sphere is a child of controller joint, so it doesn't jitter 2016-08-25 13:31:07 -07:00
Seth Alves
cab30651d0 cleanups 2016-08-25 09:47:14 -07:00
Andrew Meadows
fefe5e30ec don't use globals and remove double definitions 2016-08-25 08:57:06 -07:00
Andrew Meadows
6f6a7bcc44 wrap default scripts with local scope 2016-08-25 08:57:06 -07:00
Anthony J. Thibault
c2af948e25 Merge branch 'master' into feature/handheld-marketplace 2016-08-24 16:07:04 -07:00