Commit graph

1031 commits

Author SHA1 Message Date
Brad Hefta-Gaub
d14820d3ef Merge pull request #5880 from thoys/20668
Worklist job #20668 - JS: Add option to listen audio from camera
2015-09-23 20:40:32 -07:00
Anthony J. Thibault
0d7eae2d64 Fix slight translation error when rendering debug animation skeleton. 2015-09-23 11:42:55 -07:00
Anthony J. Thibault
d04f4d4b2b Added shared DebugDraw singleton. 2015-09-22 19:57:23 -07:00
Howard Stearns
c8960e23ec Merge branch 'master' of https://github.com/highfidelity/hifi into apostrophe 2015-09-22 10:55:26 -07:00
Thijs Wenker
dfb9034b4e - delete new AudioListenerMode menu on script ending
- style fix (function naming)
2015-09-22 15:45:57 +02:00
Thijs Wenker
81932fe1d7 - added MyAvatar.audioListenerModeChanged signal , for registering changes.
- updated the developerMenuItems.js script to include AudioListenerMode menu options under Developer > Audio
2015-09-22 15:38:53 +02:00
Thijs Wenker
617f048883 Added JS interface to change audio listening position / orientation in Interface
- MyAvatar.audioListenerMode  change using:   MyAvatar.FROM_HEAD    , MyAvatar.FROM_CAMERA , MyAvatar.CUSTOM
- MyAvatar.customListenPosition   and  MyAvatar.customListenOrientation are for manual listening positions
2015-09-22 13:40:33 +02:00
Howard Stearns
71b7f9ee38 Apostrophe key resets animation state. 2015-09-21 19:14:24 -07:00
Howard Stearns
4dd95be8c4 Forgot to actually persist. 2015-09-21 15:06:11 -07:00
Howard Stearns
8b701b8a5b Provide a place in the advanced avatar section of preferences in which users can specify a different animation graph spec.
Takes effect when you save (if you have enabled the anim graph under developer->avatar).
An empty string gives you the default behavior.
2015-09-21 10:26:04 -07:00
Anthony J. Thibault
eadf212418 Updated avatar.json with talking idle animation. 2015-09-18 18:31:53 -07:00
Anthony J. Thibault
5aeebba90e Renamed AnimController to AnimManipulator, Removed offsets on IK targets 2015-09-16 15:49:47 -07:00
Anthony J. Thibault
70f5835278 Updated left hand point and grab State Machine and animations 2015-09-15 18:00:13 -07:00
Anthony J. Thibault
1948829ca8 Improved state machine for right hand.
The hand state machine has the following features

* There's a idle to point animation, followed by a looping point hold state.
* There's a point to idle animation.
* The grab state is composed of a linear blend between an open and closed pose.

Additionally the C++ code will ramp on the left and right hand overlays,
This allows the fingers to be animated normally when the user is not actively
pointing or grabbing.
2015-09-15 15:09:08 -07:00
Anthony J. Thibault
90f46ba2c8 Added hand state machines to AnimGraph.
* Application: Forward trigger values to the MyAvatar's PalmData
* SkeletonModel: Pass PalmData to Rig via updateRigFromHandData() this is more explicit then
  the Rig::inverseKinematics methods.
* AnimNodeLoader & AnimOverlay: add support for LeftHand and RightHand bone sets
* Rig::updateRigFromHandData() read the triggers and set stateMachine trigger vars
* avatar.json - udpated with new hand state machine with temporary animations
2015-09-14 18:54:12 -07:00
Howard Stearns
4ffe2d0747 Merge pull request #5786 from AndrewMeadows/ik-with-constraints
inverse kinematics works with rotation constraints
2015-09-11 17:34:50 -07:00
Andrew Meadows
9c6060160a Merge pull request #5784 from howard-stearns/rationalize-rig-settings
Rationalize rig settings
2015-09-11 16:56:44 -07:00
Brad Davis
e458eb7ae9 Merge pull request #5734 from sethalves/octree-shared-pointers
octree uses shared pointers
2015-09-11 16:00:04 -07:00
Andrew Meadows
c589f0e58e fix logic around rendering of hand targets 2015-09-11 13:42:17 -07:00
Andrew Meadows
8d5106b072 improved debug render of hand coordinates
also cleaned up includes in Hand.h
2015-09-11 13:22:11 -07:00
Howard Stearns
02fba12a48 Merge branch 'master' of https://github.com/highfidelity/hifi into rationalize-rig-settings 2015-09-11 11:53:19 -07:00
Howard Stearns
67ce0966d1 Rationalize the rig state setters. 2015-09-11 11:52:20 -07:00
Anthony J. Thibault
7996a02bd8 Added head target to AnimGraph IK node.
* In HMD mode head orientation and position is set.
* When not in HMD only orientation is set, position should
  default to the underlying pose position.
2015-09-11 09:48:48 -07:00
Anthony J. Thibault
3149baeefc Merge branch 'master' into tony/ik-and-controllers 2015-09-10 11:04:31 -07:00
Anthony J. Thibault
68076ccf45 updated anim graph url to use ik-avatar.json 2015-09-10 10:57:30 -07:00
Howard Stearns
da6444a776 Start anim graph in the right saved state on startup. 2015-09-09 17:02:55 -07:00
Howard Stearns
bcf16e52af Merge branch 'master' of https://github.com/highfidelity/hifi into animGraph-cleanup 2015-09-09 16:04:15 -07:00
Howard Stearns
c1d68e058e Reduce interconnection between AnimGraph and SkeletonModel by removing init and having MyAvatar:initAnimGraph go directly to rig (just like destroyAnimGraph does). 2015-09-09 15:02:11 -07:00
Howard Stearns
73a5714d66 Merge branch 'master' of https://github.com/highfidelity/hifi into decouple-avatar-updates 2015-09-09 10:37:11 -07:00
Anthony J. Thibault
75ecf0020d WIP commit, added AnimController node. 2015-09-08 20:34:21 -07:00
Seth Alves
9c4fdfd653 merge from upstream 2015-09-08 18:01:07 -07:00
Howard Stearns
2c856e4b08 Work around animation cache misbehavior wrt threads. 2015-09-08 16:22:06 -07:00
Seth Alves
31fcd55d47 octree uses shared pointers 2015-09-08 11:59:48 -07:00
Howard Stearns
efeaf21305 Checkpoint smoother. 2015-09-07 16:32:51 -07:00
Howard Stearns
0065c64b31 Snapshot of no-judder, before cleanup. 2015-09-07 09:57:05 -07:00
Anthony J. Thibault
69e463bbfd AnimDebugDraw Improvements
* Now always works, regardless of whether or not Rig or AnimGraph animations
  are enabled.
* Changed joint radius to 1 cm.
* Changed xyz axis length to 4 cm.
2015-09-04 16:01:05 -07:00
Howard Stearns
d3106de7c1 Merge branch 'master' of https://github.com/highfidelity/hifi into decouple-avatar-updates 2015-09-04 14:32:58 -07:00
Anthony J. Thibault
df28c7bf1a Merge branch 'master' into ajt/new-anim-system 2015-09-04 09:27:02 -07:00
Brad Hefta-Gaub
2eb3d90ac2 Merge pull request #5708 from howard-stearns/new-default-avatar-collision-sound
Change default avatar collision sound
2015-09-04 08:48:30 -07:00
Anthony J. Thibault
3716d5612b Merge branch 'master' into ajt/new-anim-system 2015-09-03 19:20:06 -07:00
Anthony J. Thibault
85cb503152 Made Enable Anim Graph menu option dynamic.
It will load the anim graph when enabled and destroy
the anim graph when disabled.
2015-09-03 14:46:44 -07:00
Seth Alves
36ca789d92 fix differential avatar-joint sending to work if more than 2 avatars are in the domain 2015-09-03 14:08:04 -07:00
Howard Stearns
d53c1d0fba Change default avatar collision sound.
Note that this only used when Interface.ini does not already have a setting, and the empty string is a valid setting.
To reset to default, either delete Interface.ini or the line in it that begins with collisionSoundURL=, or just set
Interface|Edit->Preferences->Avatar collision sound URL to
https://hifi-public.s3.amazonaws.com/sounds/Collisions-otherorganic/Body_Hits_Impact.wav
2015-09-03 13:22:04 -07:00
Anthony J. Thibault
30264e9c3d Added animation debug draw items to menu.
* Debug Draw Bind Pose - used to display the current avatar's bind pose
* Debug Draw Animation - used to display the current avatar's AnimGraph animation.
  Currently does not work with old animation so it's only valid when Enable Anim Graph is true.
* Draw Mesh - used to hide or display the avatar mesh.
2015-09-02 21:04:29 -07:00
Anthony J. Thibault
46b3a7fd23 Improved default avatar.json state machine.
Now triggers 7 states.
Idle, WalkFwd, WalkBwd, StrafeLeft, StrafeRight, TurnLeft & TurnRight.
As well as variable speed walking to match current velocity.
2015-09-02 17:28:06 -07:00
Anthony J. Thibault
4a749a0403 Updated MyAvatar to use animGraph from gist instead of local host. 2015-09-02 10:41:04 -07:00
Anthony J. Thibault
d151474446 Merge branch 'master' into ajt/new-anim-system 2015-09-02 10:00:36 -07:00
Anthony J. Thibault
7b4cb8655c First pass integration of new anim system into rig. 2015-09-01 17:57:01 -07:00
Howard Stearns
8cf71f285d Merge branch 'master' of https://github.com/highfidelity/hifi into decouple-avatar-updates 2015-09-01 16:03:40 -07:00
Seth Alves
76923583ee Interface only sends joint data to avatar-mixer if they have changed enough since the last send 2015-09-01 13:31:34 -07:00
Anthony J. Thibault
0d98ab3365 Normalize scale on AnimSkeleton bind pose. 2015-08-31 17:27:23 -07:00
Anthony J. Thibault
9786954585 Added support for onDone and onLoop triggers. 2015-08-31 12:13:05 -07:00
Anthony J. Thibault
54aa0677f6 Merge branch 'master' into ajt/new-anim-system 2015-08-31 10:47:50 -07:00
Anthony J. Thibault
9d983e0614 Bug fix to AnimNode::setSkeletonModel and AnimNodeLoader.
Also updated avatar.json to test nested graphs under a SM.
2015-08-28 17:16:32 -07:00
Brad Davis
b7dd47efcb Merge pull request #5674 from birarda/master
cleanup of some warnings
2015-08-27 23:34:43 -07:00
Anthony J. Thibault
19e91bb392 Added basic interpolation support to AnimStateMachine 2015-08-27 21:26:31 -07:00
Anthony J. Thibault
3286a32afc Initial version of AnimStateMachine.
No interpolation support, but basic avatar.json is working
with two states and two transitions between them.
2015-08-27 20:41:53 -07:00
Stephen Birarda
1d6f43e0d0 cleaned up some warnings 2015-08-27 18:26:55 -07:00
Howard Stearns
96c74ebbd5 Enable Rig Animations is now a developer menu item (rather than requiring javascript to set). Also turning it off resets you to bind pose and deliberately throws away old animations.
Default animations are the new ones for our standard T-pose. (Had been for the double-A pose fightbot.)
Rig state machine now does "backup", and doesn't apply strafe while turning.
2015-08-27 12:25:40 -07:00
Anthony J. Thibault
b7a9b54628 Better AnimDebugDraw rendering 2015-08-26 16:42:08 -07:00
Howard Stearns
0e18395fd0 Merge branch 'master' of https://github.com/highfidelity/hifi into decouple-avatar-updates 2015-08-26 12:04:28 -07:00
Anthony J. Thibault
46c1e008bc Merge branch 'master' into ajt/new-anim-system 2015-08-26 10:37:39 -07:00
Anthony J. Thibault
0c02a338f2 Added support for setting Variants in the json file.
For example: the avatar.json file was updated to use the "sine" Variant
to drive the Overlay alpha parameter.
2015-08-25 20:57:01 -07:00
Anthony J. Thibault
4abf0cbd63 AnimVariantMap is used in eval, MyAvatar loads avatar.json via url 2015-08-25 20:28:17 -07:00
Brad Davis
d311e4f2ea Fixing problems reported by static analysis tool 2015-08-25 19:18:55 -07:00
Anthony J. Thibault
496c706bba Added AnimVariantMap argument to evaluate. 2015-08-25 11:59:24 -07:00
Howard Stearns
828509e8eb Merge branch 'master' of https://github.com/highfidelity/hifi into decouple-avatar-updates 2015-08-24 15:01:46 -07:00
Anthony J. Thibault
9457794d9e fix whitespace offset due to merge conflict 2015-08-24 14:50:02 -07:00
Anthony J. Thibault
fa5256eefd Merge branch 'master' into ajt/new-anim-system 2015-08-24 14:32:28 -07:00
Howard Stearns
b579b996c3 There was a hidden (and inappropriate) dependency on face model loading. 2015-08-21 15:07:39 -07:00
Howard Stearns
ae3e052e72 Merge branch 'master' of https://github.com/highfidelity/hifi into decouple-avatar-updates 2015-08-21 08:13:44 -07:00
Howard Stearns
642e569033 Uncomment code that was commented out to simplify debugging. 2015-08-20 17:38:49 -07:00
Howard Stearns
ea02583875 Cleanup. 2015-08-20 17:33:10 -07:00
Howard Stearns
05f4145acb Checkpoint. Working? 2015-08-20 16:28:40 -07:00
Howard Stearns
f26849c7e1 Proper HMD scaling. 2015-08-20 12:34:50 -07:00
Howard Stearns
dc75b238a8 Merge branch 'master' of https://github.com/highfidelity/hifi into decouple-avatar-updates
And update with current code.
2015-08-18 15:35:37 -07:00
Howard Stearns
0f6c0a3117 Merge branch 'master' of https://github.com/highfidelity/hifi into recapitate 2015-08-13 15:56:13 -07:00
Howard Stearns
2756a00638 Get default avatar url from resources. 2015-08-13 14:23:34 -07:00
Howard Stearns
4dae01a69c Provide a consistent avatar default for the empty string. 2015-08-13 12:54:16 -07:00
Howard Stearns
62941c0914 Remove dead code. 2015-08-13 12:39:30 -07:00
David Rowe
6a0a08eafb Consolidate identical code paths 2015-08-12 15:25:34 -07:00
David Rowe
8f376247f0 Fix calculation of corrected look-at position in HMD view 2015-08-11 20:25:02 -07:00
David Rowe
0f56285283 Fix HMD look-at positions and lines 2015-08-11 18:54:55 -07:00
David Rowe
3e8d0ad712 Fix to use new HMD methods 2015-08-11 13:40:08 -07:00
David Rowe
e6473fc8b9 Merge branch 'master' into 20639
Conflicts:
	interface/CMakeLists.txt
	interface/src/Application.cpp
	interface/src/Menu.h
	tests/ui/src/main.cpp
2015-08-11 12:34:28 -07:00
David Rowe
b54c2526c1 Fix rendering own look-at vectors in HMD mode
Vectors now originate at user's physical eyeballs rather than at user
avatar's eye separation.
2015-08-07 16:13:25 -07:00
David Rowe
b70c1a4960 Merge branch 'master' into 20639 2015-08-07 12:33:13 -07:00
David Rowe
e37fd956ed Fix look-at target position getting stuck when avatar moves out of range 2015-08-06 22:51:25 -07:00
David Rowe
551c00dc23 Fix look-at position calculation when in HMD display
Calculate look-at target from camera position and orientation.
Render own look-at vectors from camera eye positions.
Draw other avatar's look-at vectors from their eyeballs.
With and without eye trackers.
2015-08-06 16:41:06 -07:00
Sam Gondelman
54f64b62eb Merge remote-tracking branch 'upstream/plugins' into sam/input-plugins 2015-08-06 14:45:26 -07:00
Bradley Austin Davis
7e60aee1bf Merge branch 'master' into plugins
Conflicts:
	interface/src/Application.cpp
	interface/src/Application.h
	interface/src/avatar/Head.cpp
	interface/src/avatar/MyAvatar.cpp
	interface/src/avatar/MyAvatar.h
	interface/src/avatar/SkeletonModel.cpp
	interface/src/avatar/SkeletonModel.h
	interface/src/devices/3DConnexionClient.cpp
	interface/src/ui/overlays/Overlays.cpp
2015-08-06 11:03:37 -07:00
Anthony J. Thibault
c3fc37df18 Added true boneSets to AnimOverlay. 2015-08-05 18:07:56 -07:00
David Rowe
d7b42e264e Merge branch 'master' into 20639
Conflicts:
	interface/CMakeLists.txt
2015-08-05 16:49:06 -07:00
Atlante45
3dc8bd47ae Fix warning and remove unused headers 2015-08-05 16:46:44 -07:00
David Rowe
e8eac7db34 Render look-at vectors and target in first person view 2015-08-05 13:40:57 -07:00
Sam Gondelman
113c4ea28b exposing palm velocity and angular velocity to js 2015-08-05 12:17:15 -07:00
Anthony J. Thibault
2154f76202 Added some comments to AnimNode, AnimClip & AnimBlendLinear. 2015-08-05 12:03:20 -07:00
Anthony J. Thibault
5d83976e2a Added AnimBlendLinear + tests.
MyAvatar now does a sine wave blend between a walk
and a walk animation.
2015-08-04 18:14:50 -07:00
Anthony J. Thibault
559367db4a Got to the bottom of the bind pose question.
When TRUST_BIND_TRANSFORM is defined in AnimSkeleton, the bind pose is taken
from the FBXJoint::bindTransform field, which is correct for all joints
bound to actual geometry.  Basically it's not trust worthy for bones NOT bound to anything.

When TRUST_BIND_TRANSFORM is not defined, the bind pose is taken from the other
FBXJoint fields.  Unfortunatly these poses are NOT the bind pose, but instead
are taken from the FBX files 'resting' pose. i.e. frame 0.
2015-08-04 18:14:49 -07:00
Anthony J. Thibault
69cc270802 removed scale for fight club model 2015-08-04 18:14:48 -07:00