Commit graph

1243 commits

Author SHA1 Message Date
Brad Davis
f3e5306f90 Working on an automated performance test 2016-04-17 10:20:00 -07:00
Anthony J. Thibault
93a5bdd79a Prevent avatar rotation due to HMD head turning in third-person camera.
Also, fix one frame glitch during snap turning, by updating the sensorToWorld matrix
after the MyAvatar::updateOrientation rotates the avatar, but before we perform IK.
2016-04-08 15:27:43 -07:00
Seth Alves
537c6fa3c6 fix indentation 2016-03-29 15:39:42 -07:00
Seth Alves
9d8e01f2a5 lock entity-tree before moving entity-children of avatars 2016-03-29 15:01:23 -07:00
Zach Pomerantz
c5e5195db1 Merge branch 'master' of github.com:highfidelity/hifi into feat/geocaching 2016-03-25 12:07:00 -07:00
Anthony J. Thibault
6a5a443eff Avatar: Eye-tracking works again
This replaces the calculation of the Head left and right eye positions used for eye tracking.
Which was inadvertently removed in this commit 7483b8546b
2016-03-24 18:07:46 -07:00
Zach Pomerantz
3e9e083df5 Update users of NetworkGeometry 2016-03-24 11:35:41 -07:00
Anthony J. Thibault
df187499ff MyAvatar: fix jitter in hands when moving
Store hand controller positions within the avatar in sensor space, not world space.
Before IK the sensorToWorld matrix is updated to reflect the world space motion of the
character controller during physics.  This ensures the IK hand targets move properly with the character.
2016-03-22 19:19:52 -07:00
Anthony J. Thibault
7cab8f63fb Merge branch 'master' of github.com:highfidelity/hifi into tony/no-locks-no-problem 2016-03-21 16:03:33 -07:00
Anthony J. Thibault
ce47f83288 Prevent deadlock if idle is called during rendering
This extraordinary event can occur if a MessageBox is popped up by the opengl driver.

* removed AvatarData::avatarLock
* removed AvatarUpdate

This code was left over from an earlier avatar threading experiment.

Removed AvatarData avatarLock and AvatarUpdate class
2016-03-21 15:11:15 -07:00
Andrew Meadows
0a00436700 Merge pull request #7411 from ZappoMan/fixBlenderCrashRedux
Fix blender crash redux
2016-03-21 15:04:22 -07:00
Brad Hefta-Gaub
492e71345a Revert "Revert "Fix ModelBlender crash""
This reverts commit f274cdcc7f.
2016-03-21 11:42:25 -07:00
Brad Hefta-Gaub
f274cdcc7f Revert "Fix ModelBlender crash" 2016-03-21 10:47:31 -07:00
Anthony J. Thibault
d218ca4960 openvr: fix for crash on exit
Before this fix, a script could call into HMD.getHUDLookAtPosition2D() while the app was shutting down, which in turn would call
getHeadPose() on the currently active display plugin.  This call could cause a crash within the openvr plugin, because the SDK was either shutdown, or in the process of shutting down on the main thread.

This fixes this by spliting the previous DisplayPlugin::getHeadPose(int) into two parts:

* updateHeadPose(int) which is only called once a frame and only by the main thread.
* getHeadPose() which is thread-safe and will return a cached copy of the hmd pose sampled by the last updateHeadPose.
2016-03-18 12:26:11 -07:00
Brad Hefta-Gaub
917c4644a5 make SkeletonModel be shared_ptr friendly as well 2016-03-17 18:03:49 -07:00
Brad Hefta-Gaub
7483b8546b remove FaceModel, make Model support shared_from_this() so we can ave shared and weak pointers to it 2016-03-17 17:05:35 -07:00
Brad Hefta-Gaub
11e88f965d Merge pull request #7347 from hyperlogic/tony/prevent-roll-in-goto-location
MyAvatar: prevent roll and pitch in avatar via snapshot url.
2016-03-14 18:58:49 -07:00
Anthony Thibault
1e94d9bdf5 interface/src/avatar: cppcheck fixes 2016-03-13 18:56:15 -07:00
Anthony Thibault
b921ac7757 MyAvatar: prevent roll and pitch in avatar via snapshot url. 2016-03-13 11:32:48 -07:00
Anthony Thibault
ab390f7d2e Merge branch 'master' into tony/smooth-hands 2016-03-11 10:06:31 -08:00
Anthony J. Thibault
5eeb4ca594 Fix one frame lag controller lag/jitter
Move userInputMapper->update() after inputPlugin->pluginUpdate().
2016-03-11 09:28:25 -08:00
Anthony J. Thibault
ab19d3e5a2 Moved animation after physics, hand poses are in world frame.
There are still some debug hacks enabled so I can test in the vive room.
2016-03-10 20:44:35 -08:00
Anthony J. Thibault
807d31743c Removed Hand, HandData & PalmData
Instead, we just store two controller::Poses in MyAvatar.
Existing behavior and scripting APIs have been preserved.

The hand controller debug drawing is slightly different, but still works.
2016-03-10 19:33:31 -08:00
Anthony J. Thibault
886457939d Merge branch 'master' into tony/wrong-way-overlay 2016-03-09 16:50:18 -08:00
Anthony Thibault
5df616be37 OpenVR: More usable UI Sphere overlay location
Also, added a debug option to display SensorToWorld matrix in Developer > Avatar menu.
2016-03-09 16:24:08 -08:00
Anthony J. Thibault
0d62b10a8f Added Mat4 support to script
Also, hooked up MyAvatar.sensorToWorldMatrix access to script.
2016-03-07 16:16:14 -08:00
Philip Rosedale
7c765f3d5a Merge pull request #7258 from hyperlogic/tony/better-lean-detection
MyAvatar: use a box instead of a sphere for horizontal re-centering
2016-03-07 15:05:10 -08:00
Chris Collins
7850ca3576 Merge pull request #7227 from hyperlogic/tony/eye-look-at-fixes
Avatar eye look at fixes for HMD and desktop
2016-03-07 11:50:16 -08:00
Anthony Thibault
2cbb41fd38 MyAvatar: bug fix for forward/backward lean detection 2016-03-07 10:11:22 -08:00
Anthony J. Thibault
aefeff2493 MyAvatar: Use a box instead of a sphere for horizontal re-centering 2016-03-07 09:50:38 -08:00
Anthony Thibault
0de19d13c4 MyAvatar: open up horizontal leaning threshold 2016-03-04 15:28:38 -08:00
Anthony Thibault
37ba0ecd9f MyAvatar: prevent face from being visible when crouching
Overall, this should fix many of the issues with the head being visible when it shouldn't.
2016-03-04 11:48:55 -08:00
Anthony J. Thibault
dc456cbdbe MyAvatar: dropped vertical recenter limit. 2016-03-04 11:15:11 -08:00
Anthony J. Thibault
6e80665107 MyAvatar: reduced rotation re-center threshold to 30 degrees
Also, warning fix for Linux.
2016-03-01 17:45:16 -08:00
Anthony J. Thibault
2dfc517d14 MyAvatar: re-center vertically, on x & z drive keys 2016-03-01 16:45:36 -08:00
Anthony J. Thibault
be446f4e96 MyAvatar: separate rotation, horizontal and vertical HMD follow 2016-03-01 15:38:02 -08:00
Anthony J. Thibault
506e46faee MyAvatar: fix for missing include 2016-03-01 11:21:14 -08:00
Anthony J. Thibault
babf48ac57 MyAvatar: take IPD scale into account when computing corrected eye lookAt 2016-03-01 11:17:03 -08:00
Anthony J. Thibault
3cde972174 Rig: issue warnings for missing joints
Also, Removed Rig::computeEyesInRigFrame, it was causing warnings because it was looking up
Eye and Head joints for all models, not just avatars.
2016-03-01 11:07:22 -08:00
Anthony J. Thibault
99bd0f3d13 MyAvatar: fixes for eye look at
Users in desktop mode should now see the eyes change focus between the left eye, right eye and the mouth.
Users in mirror mode, or third person camera, should more accurately determine which avatar to look at.
2016-02-29 16:49:35 -08:00
howard-stearns
d8fe55ddc5 Proper default for snapTurn preference (and new name so as to update old
users).
2016-02-25 13:06:34 -08:00
Zach Pomerantz
3c4ab077be Init validOrientation for myAvatar calc 2016-02-24 13:16:45 -08:00
Brad Hefta-Gaub
2a18127a01 Merge pull request #7171 from jherico/avatar_qml_location
Allow avatar positioning from QML
2016-02-24 11:37:12 -08:00
Anthony J. Thibault
8f27424de7 MyAvatar: bug fix for avatar leaning 2016-02-23 14:30:51 -08:00
Brad Davis
2258a9cad9 Allow avatar positioning from QML 2016-02-23 12:16:41 -08:00
howard-stearns
20406a5a14 Remove comfortMode menu item, but add a Settings for snapTurn within MyAvatar. 2016-02-15 13:26:40 -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
Seth Alves
43592fd699 Merge pull request #7048 from hyperlogic/tony/avatar-on-moving-platform
Better avatar animation when attached to a moving entity
2016-02-09 14:30:02 -08:00
Anthony J. Thibault
2b10fea006 SpatiallyNestable: warn on failure. 2016-02-09 14:03:39 -08:00
Anthony J. Thibault
072172b1a2 SpatiallyNestable: now with velocity support!
Moved velocity and angularVelocity into the SpatiallyNestable base class.

Entity velocity and angularVelocity properties are now relative to their parent, similar to the way position and orientation work for entities.

MyAvatar rig animations now use SpatiallyNestable to convert velocity into local frame to drive the animation state machine.
2016-02-08 19:43:23 -08:00