Anthony J. Thibault
868cf83b48
Fix for attachments and MyAvatar::getDefaultEyePosition()
2015-11-25 10:07:29 -08:00
Anthony Thibault
527199bc69
Merge pull request #1 from AndrewMeadows/fix-avatar-capsule
...
compute bounding capsule of avatars
2015-11-25 09:39:18 -08:00
Andrew Meadows
2cc1dfe819
getRootAbsoluteBindPoseByChildName() is deprecated
2015-11-24 20:39:26 -08:00
Andrew Meadows
3ae082f09c
compute bounding capsule of avatars
2015-11-24 20:28:39 -08:00
Anthony J. Thibault
76034d62d5
Eye tracking fixes
2015-11-24 16:57:26 -08:00
Anthony J. Thibault
f120e10ff4
Merge branch 'master' into tony/remove-joint-states
2015-11-24 15:00:05 -08:00
Anthony J. Thibault
e07e1c5c92
Fix for avatar eye tracking
...
When computing a full eye to world matrix, the translations need to be the geometry coordinate frame, not scaled into meters.
2015-11-24 14:01:01 -08:00
Anthony J. Thibault
14189ac909
Move Y_180 flip rotation out of Rig
...
This Y_180 flip is defined in skeletonModel not in the rig.
This is important if we wish to use the Rig for both Avatars (180 flip) and Entity models (no 180 flip).
We can hide this 180 flip from script, if we wish, by including it in all the accessors to and from
MyAvatar -> skeletalModel -> Rig.
Added Quaternions::Y_180 to GLMHelpers.
2015-11-23 19:31:27 -08:00
Anthony J. Thibault
fe683edb66
Avatar Debug Draw Default Pose now works
2015-11-21 10:53:24 -08:00
Anthony J. Thibault
6cfd831a5a
Menu: Added Developer > Avatar > Debug Draw Position
...
Also renamed "Debug Draw Bind Pose" to "Debug Draw Default Pose"
2015-11-21 09:50:56 -08:00
Anthony J. Thibault
995958a8f0
Rig: normalized index bounds checking.
2015-11-20 18:45:53 -08:00
Anthony J. Thibault
54408a9c87
AnimVars are now in avatar/rig space
...
This makes it much simpler for code out side of the rig to manipulate AnimVars
* Removed mat4 type from AnimVars
* AnimVariantMap now has a _rigToGeometryTransform matrix
used to transform positions and rotations into the correct coordinate frame.
* Moved AnimPose code to extract a quat from a scaled matrix into GLMHelpers
2015-11-20 18:29:17 -08:00
Anthony J. Thibault
4f8cd6930d
Rig: Fixes for initializing _absolutePoses during initJointStates
2015-11-20 15:13:16 -08:00
Anthony J. Thibault
2f37335d77
Warning fixes
2015-11-20 14:50:42 -08:00
Anthony J. Thibault
30087ef0bd
Removed dead code
2015-11-20 14:37:53 -08:00
Anthony J. Thibault
cb89f09635
Removed EntityRig and AvatarRig. One Rig to rule them all.
2015-11-20 14:27:01 -08:00
Anthony J. Thibault
a77ea8da43
Removed JointStates! You won't be missed.
2015-11-20 14:15:37 -08:00
Anthony J. Thibault
a4116e633a
Removed last consumer of JointState class
...
Removed option to render IK constraints used by old animation system
2015-11-20 11:26:54 -08:00
Anthony J. Thibault
df7ca3bc38
Rig: getJointRotation and getJointTranslation use _relativePoses
2015-11-20 10:36:40 -08:00
Anthony J. Thibault
923d60e452
Rig: Bug fix for copyJointsIntoJointData
2015-11-20 10:30:12 -08:00
Anthony J. Thibault
ad4b8e0001
Avatar transmission fixes, moved JointData into shared
...
* Moved JointData into shared library
* added methods to the rig to copy into and out of JointData
* JointData translations must be in meters this is so the
fixed point compression wont overflow, also, it's a
consistent wire format.
2015-11-20 10:24:24 -08:00
Anthony J. Thibault
27685e0425
Bug fixes for other Avatar root translation
2015-11-20 09:33:57 -08:00
Anthony J. Thibault
c2ae6f0c8e
Fix for remote Avatar
...
Make sure to copy the correct data to and from AvatarData::JointData
2015-11-20 09:20:41 -08:00
Anthony J. Thibault
302b6f7e26
Mac and Debug build fixes
2015-11-19 18:28:15 -08:00
Anthony J. Thibault
9e36a79155
Rig: hooked up script overridePoses
2015-11-19 18:14:04 -08:00
Anthony J. Thibault
46d23a9f38
head IK and controller IK work again!
2015-11-19 17:30:56 -08:00
Anthony J. Thibault
982e2c06a9
Rig: Switched over to use AnimPoses instead of JointStates
...
* fixed debug rendering
* improved jointState/animPose diff detection code.
2015-11-19 12:14:04 -08:00
Anthony J. Thibault
721da29432
WIP checkpoint
...
* No longer normalizing scale in AnimSkeleton and AnimClip
This means graph is animating in 'geometry' coordinates
before unit scale is even applied. This is necessary to
properly work with both Avatar based models and ModelEntity
based models
Many things are broken.
* debug rendering (translations are x100)
* IK hand targets
* follow cam
* I did not even dare to try HMD mode
2015-11-18 18:47:33 -08:00
Anthony J. Thibault
b054ef1488
Rig: fixes for rigs used for ModelEntities.
2015-11-18 16:04:34 -08:00
Anthony J. Thibault
b481d7c73d
Merge branch 'master' into tony/remove-joint-states
2015-11-18 09:38:21 -08:00
Anthony J. Thibault
9a39da9050
new absolutePoses work for avatars, but not for model entities.
2015-11-17 18:53:38 -08:00
Anthony J. Thibault
e93b5c5838
Bug fixes for avatars with no eyes
...
Changed default eye position to 1.9 meters because
the hifi_team avatars are 2.0 meters tall.
Also, prevent array access with negative indices when eye bones are missing.
ಠ_ಠ
2015-11-17 14:02:27 -08:00
Anthony J. Thibault
80eb247b9c
WIP checkin
...
* AnimManipulator: added absolute and relative position and translation support
* Rig: added _overrideFlags and _overridePoses for script overrides.
2015-11-16 18:49:47 -08:00
U-GAPOS\andrew
6733767d8b
use animation state to compute bodyInSensorFrame
2015-11-13 16:39:40 -08:00
Anthony J. Thibault
e698d3c1e8
Isolate JointStates within the Rig class
...
Except for SkeletalModel::computeBounds() JointStates are now completly
encapsulated by the Rig. Now we can start using AnimPoses instead and
in parallel with the JointState implementation. Then we can assert that
they are identical, before removing JointStates.
This check in has many comments with the AJT tag.
Each one of these cases will need to be revisitied and fixed.
In particular // AJT: LEGACY will be used to enclose all code
in the Rig which manipulates the _jointState QVector.
2015-11-11 18:23:58 -08:00
Anthony J. Thibault
11440f92f4
Removed rig animations
...
* Deleted AnimationHandle class
* Removed enableAnimGraph and anableRigAnimations from Menu.
* Removed *some* references to old IK system.
But it is still used when computing collision bounding volumes
2015-11-11 15:32:57 -08:00
Anthony J. Thibault
e1d0a97807
Implemented MyAvatar.prefetchAnimation() JS method
2015-11-10 16:51:48 -08:00
Anthony J. Thibault
936c55a94e
New MyAvatar animation JS interface
...
JavaScript changes:
* removed MyAvatar.playAnimation
* removed MyAvatar.stopAnimation
* removed MyAVatar.getGetAnimationDetails
* removed MyAvatar.startAnimationByRole
* removed MyAvatar.stopAnimationByRole
* removed MyAVatar.getGetAnimationDetailsByRole
* removed MyAVatar.clearJointPriorities
* added MyAvatar.overrideAnimation(url, fps, loop, firstFrame, lastFrame)
* added MyAvatar.restoreAnimation()
* added MyAvatar.getAnimationRoles()
* added MyAvatar.overrideRoleAnimation(role, url, fps, loop, firstFrame, lastFrame)
* added MyAvatar.restoreRoleAnimation(role)
* added MyAvatar.prefetchAnimation(url)
* update kneel.js with new api.
* added theBird.js to test role override api.
C++ changes:
* Added getParent() and replaceChild() to AnimNode
* Added findByName() and traverse() to AnimNode
* Changed AnimStateMachine to hold nodes by childIndex instead of smart pointer.
This allows script to replace nodes dynamically via overrideRoleAnimation
2015-11-10 16:34:38 -08:00
Anthony J. Thibault
eacc2cae0c
WIP checkpoint
2015-11-09 18:36:23 -08:00
Anthony J. Thibault
af2b3bb9d5
MyAvatar: removed priority, hold and maskedJoints from playAnimation js call
2015-11-09 16:56:49 -08:00
Anthony J. Thibault
a0f21228f6
AnimGraph support for start and stop animation from JavaScript
...
Follows the same model as the existing startAnimation and stopAnimation calls.
See kneel.js for an example.
2015-11-09 12:19:01 -08:00
Howard Stearns
314c11e8d4
Make life easier for Sam.
2015-11-06 16:59:46 -08:00
Anthony J. Thibault
e3e759248f
Merge branch 'master' into tony/anim-sync-blend
2015-11-02 08:37:10 -08:00
Howard Stearns
f7d558a252
comment
2015-10-29 19:26:54 -07:00
Howard Stearns
dcc173c93a
comment.
2015-10-29 19:21:24 -07:00
Anthony J. Thibault
f7b6fab0c3
Merge branch 'master' into tony/anim-sync-blend
2015-10-29 11:35:48 -07:00
Howard Stearns
4083c5c71b
Handle wrapping of very long-lived sessions.
2015-10-29 10:31:36 -07:00
Howard Stearns
d79d0bc5c5
Merge branch 'master' of https://github.com/highfidelity/hifi into expose-anim-vars
2015-10-29 08:25:41 -07:00
Anthony J. Thibault
5e73af9272
Rig: Removed dt from updateFromEyeParameters()
2015-10-28 18:10:41 -07:00
Anthony J. Thibault
b3734b5ddb
Rig: removed redundant method updateEyeJoints()
...
Instead we call updateEyeJoint() twice, once for each eye.
2015-10-28 10:46:09 -07:00