Commit graph

515 commits

Author SHA1 Message Date
Brad Hefta-Gaub
eebf6f8883 Merge pull request #7021 from hyperlogic/tony/animation-mirror-support
AnimClip: Animation mirror support
2016-02-05 19:25:01 -08:00
Anthony J. Thibault
bfeace78f7 AnimInverseKinematics: warning fixes 2016-02-04 18:51:48 -08:00
Anthony J. Thibault
51189cfc50 AnimInverseKinematics: opened up UpLeg and Leg constraints
This improves the quality of the jump animations, while IK is enabled.
2016-02-04 17:56:41 -08:00
Anthony J. Thibault
8ca8550f26 MyAvatar: Standing Takeoff and In-Air Animations
Now there are two sets of of jump takeoff and in-air animations.
* Run - Used when the character jumps or falls with a small forward velocity.
* Standing - Used when the character jumps or falls in-place or backward.

CharacterController
* increased takeoff duration to 250 ms
* increased takeoff to fly duration to 1100 ms
* added standing jump and in-air animations
* added 250 milisecond delay between ground and hover, to prevent going into hover when walking over cracks.
* take-off to in-air transitions now use the new snapshotPrev interp type for a smoother tweening.
2016-02-04 17:56:07 -08:00
Anthony J. Thibault
a8e092272c AnimStateMachine: added new State parameter interpType
interpType defines how the interpolation between two states is performed.

   * SnapshotBoth: Stores two snapshots, the previous animation before interpolation begins and the target state at the
     interTarget frame.  Then during the interpolation period the two snapshots are interpolated to produce smooth motion between them.
   * SnapshotPrev: Stores a snapshot of the previous animation before interpolation begins.  However the target state is
     evaluated dynamically.  During the interpolation period the previous snapshot is interpolated with the target pose
     to produce smooth motion between them.  This mode is useful for interping into a blended animation where the actual
     blend factor is not known at the start of the interp or is might change dramatically during the interp.
2016-02-04 10:32:58 -08:00
Andrew Meadows
861082964e Merge pull request #7017 from hyperlogic/tony/fly
MyAvatar: Improved Jump / InAir / Fly behavior
2016-02-03 12:22:30 -08:00
Stephen Birarda
93530fca72 fix the last of the current override warnings for OS X 2016-02-03 11:08:41 -08:00
Anthony J. Thibault
03d5bc885b AnimClip: added mirrorFlag anim var 2016-02-02 17:10:15 -08:00
Anthony J. Thibault
e6abc026c8 AnimClip: mirror animation support 2016-02-02 17:02:29 -08:00
Anthony J. Thibault
656608e2ff Fixes for away.js 2016-02-02 12:08:52 -08:00
Anthony J. Thibault
47f3ce3786 CharacterController jump is more reliable. 2016-02-02 11:26:16 -08:00
Anthony J. Thibault
2936811484 Added takeoff animation, WIP
Character controller still has some jump/in-air bugs.
2016-02-02 11:26:15 -08:00
Anthony J. Thibault
61c55ebf6c Updated character controller with a state enumeration
Also, adjusted checkForSupport logic such that very slanted walls are not considered support.
2016-02-02 11:26:15 -08:00
Anthony J. Thibault
e9fd439ffd Added inAir animations 2016-02-02 11:23:46 -08:00
Andrew Meadows
71664dffae change string comparisons to be CaseSensitive 2016-02-01 09:50:01 -08:00
Andrew Meadows
de54a0ac4b remove cruft 2016-01-29 14:51:24 -08:00
Andrew Meadows
14ec1b6295 reduce hand IK coupling to hip position 2016-01-29 14:28:56 -08:00
Andrew Meadows
a98459dfa8 minor IK optimization: changed accumulators only 2016-01-29 14:28:56 -08:00
Andrew Meadows
449d566d2a properly track lowestMovedIndex 2016-01-29 14:28:56 -08:00
Andrew Meadows
48f6a9c05f fix IK looping error after minor refactor 2016-01-29 14:28:56 -08:00
Andrew Meadows
7b3f688a17 pull CCD IK solution pass into protected method 2016-01-29 14:28:56 -08:00
Andrew Meadows
1b45f5cc0c tweaks to neck and spine constraints 2016-01-27 14:45:09 -08:00
Andrew Meadows
f67a20ee68 apply _hipsOffset in hips local-frame 2016-01-27 14:45:08 -08:00
Andrew Meadows
00715f1906 apply "hips offset" to root of state graph
(Somemtimes the hips are not the root.
I'm looking at YOU blender!)
2016-01-27 14:45:06 -08:00
Anthony Thibault
3cdd88e06c Merge pull request #6951 from ZappoMan/fixAnimationRestart
fix for animations stopping after domain restart
2016-01-27 14:31:27 -08:00
Howard Stearns
0d257b82fa Merge pull request #6934 from hyperlogic/tony/anim-pre-post-rot-support
Avatar Developer Menu: added animation debug options
2016-01-27 10:39:25 -08:00
Brad Hefta-Gaub
f178fc789c fix for animations stopping after domain restart 2016-01-26 18:44:34 -08:00
Anthony J. Thibault
33993b8c44 AnimClip: removed unused static member. 2016-01-26 13:34:21 -08:00
Anthony J. Thibault
69d833a6c0 AnimClip: consistent application of translations
Apply animation translation the same way regardless of state of usePreAndPostPoseFromAnimation.
2016-01-26 10:53:21 -08:00
U-GAPOS\andrew
2728290ffb fix bug in IK and tune head/neck constraints 2016-01-26 09:37:33 -08:00
Anthony J. Thibault
3b062b7a31 AnimClip: special case the translation on the eyes 2016-01-25 18:52:14 -08:00
Anthony J. Thibault
3cee3cbb5a Avatar Developer Menu: added animation debug options
This options are for for developers only and might help debug animation related issues.

* Enable Inverse Kinematics: this can be toggled to disable IK for the avatar.
* Enable Anim Pre and Post Rotations: this option can be used to use FBX pre-rotations from source avatar animations, instead of the current default, which is to use them from the source model.
  This only effects FBX files loaded by the animation system, it does not affect changing model orientations via JavaScript.
2016-01-25 18:52:13 -08:00
Anthony J. Thibault
1bdeeeceeb AnimSkeleton: Added getPre and Post rotation accessors 2016-01-25 18:52:12 -08:00
Anthony J. Thibault
7af20e90c8 Hooked up fly animation to json and Rig 2016-01-22 13:47:09 -08:00
Anthony J. Thibault
cac19b8579 grab animation work
Hand animations now have 5 states:

* idle
* open
* grasp
* point
* farGrasp

The handControllerGrab.js script now chooses one of these five animations, based on the state of the HandController object.

Also, removed hand trigger AnimVar setting from C++ Rig class.
2016-01-07 19:36:57 -08:00
Anthony J. Thibault
3e6ff0eb68 Moved hand animation control into grab script. 2016-01-05 19:56:56 -08:00
Brad Hefta-Gaub
02835fc960 Merge pull request #6702 from hyperlogic/tony/soft-attachments
Soft Attachment Support
2016-01-03 08:46:16 -10:00
Brad Davis
76eba89f7d Merge pull request #6745 from hyperlogic/tony/neuron-plugin
Support for Perception Neuron
2015-12-30 11:39:32 -05:00
Andrew Meadows
ec27c75332 Merge pull request #6660 from hyperlogic/tony/anim-expressions
AnimExpression: boolean expression parser and evaluator
2015-12-30 08:36:44 -08:00
Anthony J. Thibault
c2dd00375d Merge branch 'master' into tony/soft-attachments 2015-12-29 13:21:37 -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
Andrew Meadows
aa3d1c6e4c Merge pull request #6680 from hyperlogic/tony/windmill-anim-fix
ModelEntityItem: Fix for incorrect animations with preTranslations
2015-12-18 14:16:35 -08:00
Anthony J. Thibault
6b5b272cd7 Added SoftAttachmentModel class.
Is a subclass of Model, it overrides the updateClusterMatrices so it will pull
the actual joint matrices from a different rig override.

For the avatar soft attachment system, this override will be the Avatar::_skeletonModel rig.
This will give us the ability for an avatar to "wear" non-rigid attachments, such as clothing.
2015-12-18 09:52:11 -08:00
Anthony J. Thibault
3b1ba67a88 ModelEntityItem: Fix for incorrect animations with preTranslations
ModelEntities that were playing animations on models with local pivot offsets were not working correctly.
Specifically, the windmill animation in the demo domain.

We now compose a matrix containing all of the FBX's preTranslation, preRotation and postTranformations.
2015-12-16 17:08:22 -08:00
Anthony J. Thibault
30480f126b Improved idle to walk forward transition
Hooked up a transition animation from idle to walk in the animation json.
Also fixed a bug in the AnimBlendLinearMove which was preventing the interpolation
into idle from being correct.
2015-12-15 17:26:17 -08:00
Anthony J. Thibault
ab85e2967a AnimExpression: support for unary not. 2015-12-15 13:18:30 -08:00
Anthony J. Thibault
22756d168b Changed grammar to support boolean and and or. 2015-12-15 10:35:35 -08:00
Anthony J. Thibault
2b0ed55077 Merge branch 'master' into tony/anim-expressions 2015-12-15 10:35:19 -08:00
Anthony J. Thibault
3f0cdb3c02 Merge branch 'master' into tony/js-avatar-default-pose 2015-12-14 11:19:24 -08:00
Atlante45
d3224bfde3 More warning fixes 2015-12-11 16:03:44 -08:00