Commit graph

1334 commits

Author SHA1 Message Date
DouglasWilcox
b8e85aedc7 Merge branch 'master' into improve_seated_rotation 2019-11-13 13:11:30 -08:00
sabrina-shanman
516debdcb2 Fix code style / remove cruft 2019-11-13 12:50:13 -08:00
DouglasWilcox
a3de25618a Handle HMD in input vars and remove/fix json transitions in/out of HMD strafe states.
(cherry picked from commit f9f28fc286)
2019-11-13 09:52:56 -08:00
DouglasWilcox
f9f28fc286 Handle HMD in input vars and remove/fix json transitions in/out of HMD strafe states. 2019-11-12 14:15:19 -08:00
DouglasWilcox
995f5f92cd Do not use turningSpeed when setting seatedTurn vars, and iterate acceleration formula 2019-11-12 11:11:19 -08:00
Sabrina Shanman
769a332d22
Merge pull request #16485 from highfidelity/master
Merge master into instancing
2019-11-12 10:07:28 -08:00
DouglasWilcox
64634f51b1 Merge branch 'master' into improve_seated_rotation 2019-11-11 11:31:56 -08:00
DouglasWilcox
c36c4a17b1 first pass hookup of seated rotation with acceleration and animation response 2019-11-11 11:31:34 -08:00
dooglifeSF
055d5cdf9b Simplify boolean statements, revise several settle anims 2019-11-08 13:46:38 -08:00
Sabrina Shanman
eebb9ad51f
Merge pull request #16475 from highfidelity/master
Merge master into instancing
2019-11-08 10:10:50 -08:00
dooglifeSF
8e11d91c03 Merge branch 'master' into rand_settles_and_by_momentum 2019-11-07 15:09:10 -08:00
dooglifeSF
73202b9caf Different settle transition depending on momentum 2019-11-07 09:52:26 -08:00
Anthony J. Thibault
6e7f222608 Fix for assert in AnimBlendDirectional on startup
Specifically, std::vector subscript out of range.
2019-11-05 14:16:10 -08:00
Sabrina Shanman
05ac16536e
Merge pull request #16436 from highfidelity/master
Merge master into instancing
2019-10-31 17:39:15 -07:00
Oren Hurvitz
70c3bb2748 Emit an event when failing to load an avatar.
Previously, MyAvatar only emitted an event (onLoadComplete) if the load succeeded.
Now it also emits an event (onLoadFailed) if the load failed.
2019-10-27 10:55:31 +02:00
sabrina-shanman
4e0db5d641 Fix build warnings 2019-10-24 15:49:03 -07:00
Sabrina Shanman
6db993fe05
Merge pull request #16397 from sabrina-shanman/instancing_skinning
(DEV-561) First pass at skinning for GLTF
2019-10-23 15:41:12 -07:00
sabrina-shanman
ca164375f1 New skinning for GLTF 2019-10-23 10:41:36 -07:00
Sam Gateau
a95a4b5aa2 Address warnings and comments from review 2019-10-18 11:43:25 -07:00
Sam Gateau
695b9cdba6 Clening up left over comments and typos, simplify the code to update Matrices in the model classes and removed renderITemsIdMap because not needed, chasing the problem of the physics objects transform 2019-10-18 03:31:06 -07:00
Sam Gateau
e9e9d1cdfe Merge branch 'instancing' of github.com:highfidelity/hifi into instancing 2019-10-16 13:15:40 -07:00
Shannon Romano
71ef645781
Merge pull request #16351 from dooglifeSF/transition-locomotion-to-idle-based-on-input-and-speed
Fix sliding when stopping from run.
2019-10-16 09:03:00 -07:00
Sam Gateau
eecaeb1155 FOund the issue why the skinning was incorrect, removed unecessary data structures in the newly added objects and renamed Deformer to SkinCluster and DYnamicTransform to SkinDeformer 2019-10-16 04:02:05 -07:00
dooglifeSF
0510215240 Move magic number to constant for SLOW_SPEED_THRESHOLD. 2019-10-15 17:48:06 -07:00
Anthony J. Thibault
14e5962675 Bugfix for legacy sit scripts
Don't return additive clip nodes as valid "roles" for users to override.
2019-10-15 15:29:24 -07:00
dooglifeSF
a043f0a17e Create isNotInputSlow var for stategraph switch when no input and speed less than 1.5 m/s 2019-10-15 14:51:42 -07:00
Sam Gateau
05ac9aefa8 the clusterMatrices should be working, but n skin index and weights are assigned yet 2019-10-14 02:21:01 -07:00
dooglifeSF
85b681e70e switch abs() to fabsf() 2019-10-09 11:07:14 -07:00
dooglifeSF
2a1258968a Change macro to const float, use floats in control flow. 2019-10-09 10:10:45 -07:00
dooglifeSF
8a262a3d1a Merge branch 'master' into drivekey_anim_triggers 2019-10-09 07:37:38 -07:00
dooglifeSF
cfa7df7d1a Refactor the if-logic to remove complexity 2019-10-08 16:14:21 -07:00
dooglifeSF
2626f85f49 Handle multiple inputs, bias towards inputZ instead of inputX, and add a deadzone that matches xbox controller analog deadzone 2019-10-08 15:44:06 -07:00
David Rowe
1106d8fdfa Doc review 2019-10-08 21:15:16 +13:00
David Rowe
f224832d27 Merge branch 'master' into DOC-111 2019-10-08 20:44:13 +13:00
dooglifeSF
387f0a3f10 add isInput* and isNotInput vars for use in json, and edit json to use them 2019-10-04 15:28:35 -07:00
Anthony J. Thibault
1068637d39 Fix for avatars that are stuck in idle pose for observers
The problem can occur because the default constructor for the NetworkAnimState does not initialize the blendTime member.
This can cause the avatar to remain stuck in an idle pose for observers when blendTime happens to be randomly initialzied to a large negative floating point value.
To fix this we explicitly initialize it to FLT_MAX.

Additionally, a debug print has been added to help diagnose this issue if it occurs again.
2019-10-01 14:28:10 -07:00
David Rowe
605d272392 Merge branch 'master' into DOC-111 2019-09-20 10:25:21 +12:00
luiscuenca
279e25ca70
Merge master 2019-09-19 13:21:49 -07:00
David Rowe
d5e08d19e3 Fix JSDoc for miscellaneous white space issues 2019-09-20 08:17:24 +12:00
luiscuenca
6d98537a20
Clean up code and refactor avatar-animation.json 2019-09-19 10:45:20 -07:00
Shannon Romano
a5fdf5bb40
Merge pull request #16214 from hyperlogic/bug-fix/additive-blend-scale-fix
Fix additive blending on avatars with non identity scale.
2019-09-19 09:04:28 -07:00
Anthony J. Thibault
41978aa4a4 Fix additive blending on avatars with non identity scale.
Some avatars that have non 1.0 scale values were incorrectly being scaled during additive blends, this fixes that.
2019-09-18 14:42:57 -07:00
Seth Alves
7fa24efca0 add a way to query Rig to see if a joint has been overridden by a script 2019-09-17 09:43:20 -07:00
David Rowe
dff37a71eb Fix JSDoc markup HTML issues 2019-09-17 16:26:09 +12:00
luiscuenca
3c043309be
Detect HMD mode properly from rig, in order to enable head IK 2019-09-12 14:03:17 -07:00
luiscuenca
7c7c3cd223
merge master 2019-09-11 14:07:19 -07:00
Shannon Romano
e1dac580b6
Merge pull request #16121 from luiscuenca/audioPosesSyncFix
BUGZ-1234: Mitigate the effect of audio noise on talking animations
2019-09-09 10:37:07 -07:00
luiscuenca
0e4e09acb5
Add blending 2019-09-06 14:30:10 -07:00
Anthony J. Thibault
aa848df227 warning fixes 2019-09-05 17:43:07 -07:00
Anthony J. Thibault
c35640f739 Warning fixes and small bug fix to anim stats 2019-09-05 14:54:19 -07:00
Anthony J. Thibault
29de8a8d9f remove ajt comment 2019-09-05 11:11:10 -07:00
Anthony J. Thibault
b6f28a6732 Switch additive animation deltas from a pre multiply to a post multiply. 2019-09-05 11:09:03 -07:00
Anthony J. Thibault
92df5cccdc AnimBlendDirectional node 2019-09-05 11:09:02 -07:00
Anthony J. Thibault
6274ab4aa7 3x3 blend wip 2019-09-05 11:09:00 -07:00
Shannon Romano
96f6793a87
Merge pull request #16118 from hyperlogic/feature/aim-offset-blend
Additive animation support
2019-09-04 16:55:50 -07:00
Anthony J. Thibault
c814176d6a Fix initialization order of members warning 2019-08-29 16:16:19 -07:00
luiscuenca
265b6f57a1
Try to mitigate the effect of background mic noise when simulating talking 2019-08-29 15:19:17 -07:00
Anthony J. Thibault
52ed0bcb71 additive blending work 2019-08-29 10:17:51 -07:00
Anthony J. Thibault
16a20a5ead AddAbsolute now works! added blendType to AnimClip 2019-08-28 18:19:35 -07:00
Anthony J. Thibault
adda7774d3 WIP checkpoint addAbsolute still broken 2019-08-28 14:08:21 -07:00
Seth Alves
f331b76c51 apply fake eye saccades if eye joints aren't overridden (rather than if HasProceduralEyeFaceMovement is true) 2019-08-27 16:59:31 -07:00
Seth Alves
1979e1dbc7 apply fake eye saccades if eye joints aren't overridden (rather than if HasProceduralEyeFaceMovement is true) 2019-08-27 16:47:01 -07:00
luiscuenca
55b54b02a0
Restate evaluation count on AnimContext 2019-08-27 10:59:03 -07:00
luiscuenca
acbeb326a7
Set activation when switching random states 2019-08-27 10:57:22 -07:00
luiscuenca
7f1f6dba31
Implement activation on nodes and use it to trigger random states 2019-08-27 10:25:35 -07:00
Anthony J. Thibault
ed3ba876a8 AddRelative blending support (Absolute is still not working) 2019-08-26 17:02:15 -07:00
Anthony J. Thibault
f1afc9e873 Bug fix & rename isRelative to relativeFlag 2019-08-23 08:46:14 -07:00
Anthony Thibault
001e4bc952 AnimClip now supports relative animations.
Relative animations are animations that are rotation deltas from some base reference pose.
They are calculated by multiplying each frame of each joint the inverse of that joints in the base reference pose.
It is intended for use with additive blending.

Added the following fields to AnimClip node.

* isRelative (boolean)
* baseURL (string)
* baseFrame (int)
2019-08-21 16:11:10 -07:00
Anthony J. Thibault
381f7c6bc4 Avatar sitting bug fixes
* Added seatedToIdle transition, to make transition quicker to better match the capsule physics.
* Made switching into and out of instantly set animVar for the animation graph, previously it was delayed by 100 ms.
* Created "isNotSeated" anim var for exiting the seated state.
* MyAvatar::beginSit & MyAvatar::endSit no longer calls goToPosition, instead MyAvatar::slamPosition is called.
* MyAvatar::slamPosition will cause the AvatarTransit class to NOT play the teleport anticipation/reaction animation.
  Note: This does not prevent other clients from interpolating the position when entering the seat, but it prevents the teleport reaction animation from playing.
* Disable leg IK in HMD mode while seated.
2019-08-16 10:57:03 -07:00
Anthony Thibault
1b225a777a
Merge pull request #16048 from luiscuenca/rotationOnlyInterpolationFix
DEV-332: Ramp on and off Head IK to make reactions smoother
2019-08-09 16:18:12 -07:00
luiscuenca
73b3419c75
store rotations when interpolating 2019-08-09 11:02:20 -07:00
luiscuenca
e3ec87a8f8
Add in/out interpolation between RotationOnly and Unknown types 2019-08-09 10:46:48 -07:00
Anthony J. Thibault
f1c47db53c set idleOverlayAlpha animVar for backward compatibility with older graphs 2019-08-08 11:12:42 -07:00
Anthony J. Thibault
5d405cac3b Merge branch 'master' into feature/reaction-intro-loop-outro 2019-08-08 09:56:45 -07:00
luiscuenca
597cff335a
Reserve vector size 2019-08-08 08:40:00 -07:00
luiscuenca
3a22db0a13
Last state for all node types 2019-08-08 06:25:04 -07:00
luiscuenca
473af995d6
Fix warnings 2019-08-07 16:53:08 -07:00
luiscuenca
74eacf2346
Make sure random switch does not repeat previous state 2019-08-07 15:08:44 -07:00
Anthony J. Thibault
b306ed69d6 Bugfix for evaluateBoth interpType.
It wouldn't pick the correct starting frame of the state being switched to.
Also, interping out of a evaluateBoth interp uses a snapshot.
2019-08-06 17:40:28 -07:00
Anthony J. Thibault
640c058591 Code review feedback 2019-08-05 12:52:42 -07:00
Anthony J. Thibault
a8d7f06862 warning fixes 2019-08-04 11:03:21 -07:00
Anthony J. Thibault
c8e4536bba Hooked up variations of seated while talking and stubs for reactions while seated. 2019-08-02 10:11:38 -07:00
Anthony J. Thibault
aad6958b68 Don't evaluate overPoses if alpha is 0.0. 2019-08-02 09:36:20 -07:00
Anthony J. Thibault
a2e37b7275 talking/reactions while seated, work in progress check in 2019-08-01 13:05:15 -07:00
Anthony J. Thibault
727c04791c Added linear to stringToEasingType() 2019-07-31 15:18:59 -07:00
Anthony J. Thibault
ec08139a46 Support for EvaluteBoth interpType and easing 2019-07-31 15:00:38 -07:00
Anthony J. Thibault
2f949a4d4d Disable head ik while reacting
Also, split getReactions() API into two calls

* getTriggerReactions() - lists all reactions that can be triggered with MyAvatar.triggerReaction().
* getBeginReactions() - lists all reactions that can be used with MyAvatar.beginReaction() and MyAvatar.endReaction().
2019-07-26 15:26:43 -07:00
luiscuenca
e7e864121f
Merge branch 'master' into avatarSitAPI 2019-07-23 14:22:42 -07:00
luiscuenca
9cec979552
Add sit API to MyAvatar 2019-07-23 14:20:54 -07:00
Anthony Thibault
ecae92724e Added reaction api 2019-07-17 14:28:39 -07:00
Anthony Thibault
6425c68836 fix for self assignment warning 2019-07-16 10:48:51 -07:00
dooglifeSF
9f8d1dd51d Merge branch 'master' into idles_talks_locomotion_improvements 2019-06-26 09:31:23 -07:00
Anthony J. Thibault
3a6d8dc383 Disable handTouch.js to prevent finger twitching
This PR disables handTouch.js.
handTouch.js allows the fingers to animate on the surface of an object.
However, it can sometimes detect collisions with walls or tables when the avatar is standing next to them.
We will more properly fix handTouch.js in a future PR, but for now we will disable the functionality.

Also, a small bug fix was made to the Rig to prevent the idleOverlayAlpha from exceeding the 0.0 to 1.0 range.
This can cause the fingers to bend incorrectly for a moment.

Also, three new items were added to the Developer > Show Animation Stats panel.

* Joint Override Count: displays the current count of joints that are overriden by MyAvatar.setJointRotation() JS API calls.
* Flow: displays if flow is active of disabled.
* Network Graph: displays if the network anim graph, used for teleportation, is enabled or disabled.

https://highfidelity.atlassian.net/browse/BUGZ-154
2019-06-20 15:52:36 -07:00
dooglifeSF
4be42a4b9b Merge branch 'master' into idles_talks_locomotion_improvements 2019-06-19 09:57:04 -07:00
dooglifeSF
55524ec815 Set debug text lit time to 20 (again) and move 2 break statements out of comment to fix exception in debug 2019-06-18 09:39:06 -07:00
Anthony J. Thibault
c75dc29c03 more assert macro trickery 2019-06-17 16:11:19 -07:00
Anthony J. Thibault
e6e40e7b48 added include<assert.h> 2019-06-17 16:09:24 -07:00
Anthony J. Thibault
d57ea8ac4a Fix for signed/unsigned compare warning 2019-06-17 15:42:20 -07:00
Anthony J. Thibault
4b5d5062b1 Improvement to Developer > Avatar > Draw Animation
This feature was added to help diagnose the root cause of a rarely occurring finger twitching bug.

Also, some asserts were added to AnimClip to also help catch a rarely occurring crash.
2019-06-17 14:50:19 -07:00
Seth Alves
d1824c4d6d remove spammy log 2019-06-04 13:00:26 -07:00