Commit graph

604 commits

Author SHA1 Message Date
Howard Stearns
5314e0c744 Remove unused. 2015-09-11 13:20:56 -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
8e504e63b0 Removed unused variable, changed glm::vec3(0) to glm::vec3() 2015-09-11 10:43:49 -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
9a9838fd0d Clean up of AnimNodeLoader after merge from master. 2015-09-10 11:47:41 -07:00
Anthony J. Thibault
663e37da66 Merge branch 'master' into tony/ik-and-controllers 2015-09-10 11:37:47 -07:00
Anthony Thibault
e8ede3ad00 Merge pull request #5731 from ChristophHaag/master
build fixes
2015-09-10 11:36:45 -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
09b2d8e4a4 Seed AnimGraph with hand controller position and orientation. 2015-09-09 18:16:57 -07:00
Anthony J. Thibault
ad49d0dd59 AnimInverseKinematics: update _maxTargetIndex correctly. 2015-09-09 16:09:38 -07:00
Anthony J. Thibault
756eb54a0a AnimNodeLoader support for InverseKinematics node. 2015-09-09 15:28:21 -07:00
Anthony J. Thibault
c1d7287652 AnimController node now takes absolute rotation vars, instead of relative. 2015-09-09 12:24:32 -07:00
Howard Stearns
f818ac2b74 Merge pull request #5744 from hyperlogic/tony/enable-lean-flag
Added a flag to enable and disable lean.
2015-09-09 10:18:12 -07:00
Anthony J. Thibault
146836452f Merge remote-tracking branch 'andrew/europium' into tony/ik-and-controllers 2015-09-09 09:40:55 -07:00
Howard Stearns
74c92af8e0 Merge pull request #5741 from AndrewMeadows/brokenCapsules
fix for bad bounding capsules for avatars
2015-09-09 09:33:57 -07:00
Anthony J. Thibault
39aef6edc9 AnimController fix for crash if underPoses vector was empty. 2015-09-08 21:42:42 -07:00
Anthony J. Thibault
75ecf0020d WIP commit, added AnimController node. 2015-09-08 20:34:21 -07:00
Andrew Meadows
e86e760118 remove debug stuff and nerfed constriants 2015-09-08 19:14:31 -07:00
Andrew Meadows
381828dac3 remove hackery for bad length units in AnimSkeleton 2015-09-08 19:02:16 -07:00
Andrew Meadows
ee265aba4a add AnimInverseKinematics class 2015-09-08 18:20:22 -07:00
Andrew Meadows
3d661095dc fix some bugs in RotationConstraints 2015-09-08 18:20:03 -07:00
Andrew Meadows
b6cef3d1a9 fix Qt includes 2015-09-08 18:19:33 -07:00
Andrew Meadows
00c446d1b0 sort includes 2015-09-08 18:19:18 -07:00
Andrew Meadows
c3e16d33c1 add InverseKinematics type 2015-09-08 18:18:50 -07:00
Seth Alves
e06461ea15 Merge pull request #5724 from hyperlogic/tony/anim-debug-draw-improvements
AnimDebugDraw Improvements
2015-09-08 17:07:51 -07:00
Anthony J. Thibault
387d50c217 Added a flag to enable and disable lean.
This should help improve our idle and walk animations, because
animation on the "lean" joint was being lost, even when we did
not require procedural leaning.
2015-09-08 16:35:06 -07:00
Stephen Birarda
c670c9a0d5 fix for AnimNodeLoader use of Resource loaded 2015-09-08 15:31:37 -07:00
Andrew Meadows
4a40781e2f remove some commented out cruft 2015-09-08 15:11:19 -07:00
Andrew Meadows
281e4f21fc fix avatar bounding capsule calculations 2015-09-08 15:03:12 -07:00
Andrew Meadows
90fe54e6d6 remove cruft and minor cleanup 2015-09-08 15:03:12 -07:00
Anthony J. Thibault
6d5927c0c9 Now with less copies.
* AnimSkeleton now returns AnimPoses by const ref.
* AnimDebugDraw: uses references to Poses on the stack instead of copies
  within inner loops.
* AnimDebugDraw: Removed unnecessary universal refs in range based for loops.
2015-09-08 10:51:23 -07:00
Christoph Haag
ddcee763ca extend macros to take return value if necessary 2015-09-08 19:10:15 +02:00
Stephen Birarda
25aeda2e18 Merge branch 'master' of https://github.com/highfidelity/hifi into protocol 2015-09-08 08:40:51 -07:00
Christoph Haag
fa221fa7e3 In gcc5 nullptr can't be directly used as bool
See https://gcc.gnu.org/gcc-5/porting_to.html
"Converting std::nullptr_t to bool"
2015-09-08 10:07:06 +02:00
Anthony J. Thibault
bb5d061d78 linux and mac compile fixes.
Removed "friend MyAvatar" from Rig and JointState.
This was only there for debugging, but I accidentally committed it.
2015-09-04 16:17:35 -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
086afc47b1 Avatar animations on by default. (Using the now old animation machinery.)
Default robot avatar consistent with the animations.
Don't require all the bones to be present.
2015-09-04 14:24:37 -07:00
Stephen Birarda
ed19987b7d resolve conflicts on merge with upstream/master 2015-09-04 12:31:46 -06:00
Anthony J. Thibault
3f258c89b4 Fix transition from AG+Rig to AG only. 2015-09-04 11:03:59 -07:00
Anthony J. Thibault
dcecd7b73a Added hysteresis to the state machine for turning and moving states.
This should help a bit with the jerkiness, as state transitions
occur less often due to noise or the user straddling the boundary
between two states.
2015-09-03 19:13:39 -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
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
471400e595 Fix for jerky behavior when positionDelta is zero.
This can occur with vsync disabled.  Possibly due to two avatar updates occurring
within a single physics time-step.
2015-09-02 19:59:05 -07:00
Anthony J. Thibault
de31b92fd5 Merge branch 'master' into ajt/new-anim-system 2015-09-02 17:53:56 -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
Howard Stearns
389e752b6e Merge pull request #5695 from AndrewMeadows/dysprosium
avoid bad joints when computing avatar bounding capsule
2015-09-02 15:58:42 -07:00
Anthony J. Thibault
99586f259c Renamed bindTransformIsValid to bindTransformFoundInCluster 2015-09-02 13:44:34 -07:00
Anthony J. Thibault
91fbbf7d4e Updated copyright boiler plate. 2015-09-02 13:35:26 -07:00
Anthony J. Thibault
df26f18222 Fix for compilation errors on linux 2015-09-02 13:29:29 -07:00
Anthony J. Thibault
fea030b9a0 Compile and warning fixes for MacOSX. 2015-09-02 12:18:17 -07:00
Anthony J. Thibault
1ae22268ac Added comment to AnimStateMachine header. 2015-09-02 11:04:52 -07:00
Seth Alves
3e11852845 Merge pull request #5685 from howard-stearns/standing-hmd-animations
Standing hmd animations
2015-09-02 10:57:45 -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
Andrew Meadows
4a7a384c65 avoid bad joints when computing bounding capsule 2015-09-01 14:12:14 -07:00
Stephen Birarda
33f6933544 Merge branch 'master' of https://github.com/highfidelity/hifi into protocol 2015-09-01 14:36:16 -06:00
Andrew Meadows
7410baedf0 merge highfidelity/master into andrew/copernicium
Conflicts:
	interface/src/avatar/SkeletonModel.cpp
	libraries/animation/src/Rig.cpp
	libraries/animation/src/Rig.h
2015-09-01 11:08:01 -07:00
Anthony J. Thibault
2401e6cc4b Merge branch 'master' into ajt/new-anim-system 2015-09-01 10:58:38 -07:00
Andrew Meadows
47c18fa18a reduced gravity effect in IK 2015-09-01 09:51:14 -07:00
Andrew Meadows
0e5b357362 revert unintended change to "gravity" term in IK 2015-09-01 09:51:14 -07:00
Andrew Meadows
bdcc68ce36 fix bug: allow IK to iterate more than once
also changed name of parentTransform to be rootTransform
for more correctness
2015-09-01 09:51:14 -07:00
Andrew Meadows
bb63267e30 fix hand IK rotations or all models 2015-09-01 09:45:14 -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
Howard Stearns
2dbfa5ce9f Be more uniform in deciding animation movement, and incorporate HMD standing mode (which sets position, but not velocity). 2015-08-31 11:10:05 -07:00
Howard Stearns
a907c5757b Do not reset animation frame when restarting while we're fading out.
Keeps it smooth if we're oscillating on some theshold between running and not.)
2015-08-31 11:09:28 -07:00
Anthony J. Thibault
77b857031b Take timeScale into account during interps & setCurrentFrame() 2015-08-31 11:01:15 -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
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
Andrew Meadows
d3f06af892 remove PhysicsEntity class 2015-08-27 18:22:12 -07:00
Stephen Birarda
80cf7b6c76 resolve conflicts on merge with upstream/master 2015-08-27 14:50:04 -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
637e3b0a15 Added triggers to AnimVariantMap. 2015-08-27 10:41:01 -07:00
Anthony J. Thibault
b7a9b54628 Better AnimDebugDraw rendering 2015-08-26 16:42:08 -07:00
Ryan Huffman
aa7d8678e1 Merge branch 'protocol' of github.com:birarda/hifi into atp-server 2015-08-26 12:26:11 -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
Anthony J. Thibault
62f86e6a46 Added AnimVariant, renamed AnimClipTests to AnimTests.
* Added test for AnimVariant.
2015-08-25 11:33:57 -07:00
Anthony J. Thibault
4bdb00bbc5 Added setCurrentFrame interface to AnimClip.
This will recurse the tree and call setCurrentFrameInternal on each node.
This method can be overriden, currently the only meaningful implementation is AnimClip.
2015-08-25 09:58:36 -07:00
Anthony J. Thibault
7a2ca047cb Added network resource download support to AnimNodeLoader. 2015-08-24 19:00:12 -07:00
Anthony J. Thibault
5a73aef1f8 AnimSkeleton more accurate bind pose generation. 2015-08-24 16:19:16 -07:00
Anthony J. Thibault
fa5256eefd Merge branch 'master' into ajt/new-anim-system 2015-08-24 14:32:28 -07:00
Anthony J. Thibault
80d3ae68c2 Removed redundant ends with ‘fbx’ check. 2015-08-21 22:11:53 -07:00
Anthony J. Thibault
b7009b4631 Fix for animation resources
The problem was that the invokeMethod between the AnimationReader thread
and the main thread was failing, because FBXGeometry* wasn't a registered meta type.

So, I ended up normalizing the AnimationReader class to be more like GeometryReader,
in that it uses singles and slots to communicate success and failure, rather then
invokeMethod.
2015-08-21 16:09:06 -07:00
Anthony J. Thibault
1b3d7fabc8 ResourceCache, NetworkGeometry and Model refactoring and optimizations.
* Removed validation logic from Resource class, Qt does this internally and is more
  standards compliant.  This should result in more accurate caching and faster resource
  fetching when cache is stale and validation fails.
* Added loaded and failed slots to Resource class, so it does not have to be polled.

* NetworkGeometry now uses multiple Resource objects to download
  the fst/mapping file and the fbx/obj models.
* NetworkGeometry is no longer a subclass of Resource
* NetworkGeometry now has signals for success and failure, you no longer
  have to poll it to determine when loading is complete (except for textures *sigh*)

Some functionality was removed

* NetworkGeometry no longer has a fallback
* NetworkGeometry no longer loads LODs or has lod logic.
* The number of FBXGeometry copies is greatly reduced.

* Model::setURL no supports fallback URL, delayLoad or retainCurrent option.
  This can result in a pop when switching avatars, and there's no longer a default
  if avatar loading fails.
2015-08-20 18:59:51 -07:00
Ryan Huffman
5884fcb17b Merge branch 'ordered-sending' into atp-server 2015-08-19 12:23:31 -07:00
Ryan Huffman
51d4cf84da Fix AnimationReader to work with new ResourceCache updates 2015-08-19 12:10:47 -07:00
Philip Rosedale
01108bdf6b Merge pull request #5573 from howard-stearns/sync-eyes-and-vectors
Synchronize eye joint and debugging vectors
2015-08-17 16:56:01 -07:00
Howard Stearns
d28c555a79 Synchronize eye joint and debugging vectors when the other avatar is looking at me. 2015-08-14 16:47:34 -07:00
Andrew Meadows
488f6aa7d8 fix bug in ElbowConstraint::apply() 2015-08-12 13:34:23 -07:00
Howard Stearns
295d655eec Merge pull request #5545 from AndrewMeadows/chlorine
rotation constraints in preparation for inverse kinematics
2015-08-11 09:19:16 -07:00
Andrew Meadows
8e82e48f76 remove more std::max/min favor of glm utilities 2015-08-11 08:17:54 -07:00
Andrew Meadows
a38c1c82d1 use glm::clamp() instead if std::max() and min() 2015-08-10 23:08:36 -07:00
Andrew Meadows
80b36f9f12 fix typo 2015-08-10 15:11:00 -07:00
Seth Alves
b26d6d2b9c Merge pull request #5542 from ZappoMan/RenderableModelEntityItemOptimization
Renderable model entity item optimizations
2015-08-10 15:10:12 -07:00
Andrew Meadows
43bf4a85d2 add RotationConstraint and friends 2015-08-10 14:48:22 -07:00
Howard Stearns
964d04d24f Restore correct space for eye joint rotations.
Also, do not correct for camera position on my avatar. (That will be done by zero or one receivers.)
2015-08-10 12:34:01 -07:00
ZappoMan
ae958dd42d Merge branch 'master' of https://github.com/highfidelity/hifi into RenderableModelEntityItemOptimization 2015-08-10 09:59:45 -07:00
ZappoMan
668778cfd9 optimize JointState::setRotationInConstrainedFrameInternal() to short cut cases where targetRotation matches previous targetRotation 2015-08-09 16:55:43 -07:00
Brad Davis
64fcd2da96 Merge pull request #5530 from ZappoMan/RenderableModelEntityItemOptimization
optimizations to RenderableModelEntityItem::render()
2015-08-07 15:32:07 -07:00
Seth Alves
b1e69537f3 Merge pull request #5524 from howard-stearns/cleanup-jointstate
Clean Up JointState
2015-08-07 13:50:02 -07:00
ZappoMan
cec0f8ed1d optimize ModelEntityItem::getAnimationFrame() 2015-08-07 13:43:57 -07:00
Howard Stearns
145b730f80 Clean up instantiation. 2015-08-07 12:27:26 -07:00
Howard Stearns
a840a17106 Change name originalRotation defaultRotation. 2015-08-06 19:45:58 -07:00
Howard Stearns
42cc34cd64 JointState has our own copy of any ivars we want from FBXJoint, instead of keeping a reference to the fbx. 2015-08-06 16:54:09 -07:00
Howard Stearns
02f57286e4 Don't let individual startAnimation get messed up by blend/fade. 2015-08-06 11:30:18 -07:00
Anthony J. Thibault
c3fc37df18 Added true boneSets to AnimOverlay. 2015-08-05 18:07:56 -07:00
Anthony J. Thibault
1f8c8adbd6 Added AnimOverlay node, moved blend sub-routine into AnimUtil. 2015-08-05 17:05:53 -07:00
Anthony J. Thibault
2d0315978e Fix for compilation on linux. 2015-08-05 12:32:15 -07:00
Anthony J. Thibault
2154f76202 Added some comments to AnimNode, AnimClip & AnimBlendLinear. 2015-08-05 12:03:20 -07:00
Howard Stearns
bb974edf7f Add assert on mix range. 2015-08-05 11:09:04 -07:00
Howard Stearns
f51b5be167 Simplify fade normalization, eliminating a loop. 2015-08-05 11:00:40 -07:00
Howard Stearns
653e46fdd3 const methods. 2015-08-05 10:51:26 -07:00
Howard Stearns
2f2b59b6b6 Merge branch 'master' of https://github.com/highfidelity/hifi into smooth-faded-animations 2015-08-05 10:05:05 -07:00
Howard Stearns
a1f86cc7b8 Make MSVC happy. 2015-08-04 19:49:12 -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
d8a20340a0 Found and fix source of memory corruption.
std::vector.reserve() and raw access do not mix.
raw access will only work if you push_back elements onto the vector
first.  However this worked fine on MacOSX, probably due to differences
in STL implementations.

Some code clean up and some commented out debugging lines.

Debug rendering of animaions of fight club model is not working.
Not sure what frame these transformations are in.
2015-08-04 18:14:49 -07:00
Anthony J. Thibault
55da34f713 Better debug rendering of animations.
* added mat4 cast and mat4 ctors to AnimPose.
2015-08-04 18:14:48 -07:00
Anthony J. Thibault
df79463750 WIP, animNode rendering 2015-08-04 18:14:48 -07:00
Anthony J. Thibault
d1fdbe32d2 optimizations for debug rendering of AnimSkeleton 2015-08-04 18:14:47 -07:00
Anthony J. Thibault
b8bae7cc3f Debug rendering of MyAvatar’s skeletonModel skeleton 2015-08-04 18:14:47 -07:00
Anthony J. Thibault
f5dee717a1 Added fbx loading via animation cache.
* added AnimPose::copyFromNetworkAnim() which
  should, re-map bone ids to match the current
  skeleton, and fill in missing bones with bind
  pose frames.
* added ability to set a skeleton on a node.
  I might need to add a recursive version of this.
* it compiles!
* tests run!
2015-08-04 18:14:46 -07:00
Anthony J. Thibault
da809efcd6 WIP commit, DOES NOT BUILD.
* Added AnimSkeleton class
* Attempt to copy animation frames when _networkAnimation has
  finished loading.  Fill in the holes with bind pose.
2015-08-04 18:14:46 -07:00
Anthony J. Thibault
343b2ccf9d Added AnimNodeLoader which loads AnimClip nodes from json
* added tests and sample json file
2015-08-04 18:14:45 -07:00
Anthony J. Thibault
35196a0059 bare-bones AnimClip implementation with tests!
It accumulates time and handles looping, and should handle
onDone and onLoop events in the future.
2015-08-04 18:14:45 -07:00
Anthony J. Thibault
836cdeb103 Baby steps toward new animation system
* AnimNode pure virtual base class for all animation nodes.
* AnimClip playback of a single FBX animation.
2015-08-04 18:14:44 -07:00
Howard Stearns
731bcba956 Merge branch 'master' of https://github.com/highfidelity/hifi into smooth-faded-animations 2015-08-04 17:27:23 -07:00
Howard Stearns
61198a658c Smooth fading of animations in and out.
Also, turn on the secret rig animations from Javascript with MyAvatar.setEnableRigAnimations(true). (persists)
2015-08-04 17:04:15 -07:00
Seth Alves
9171033f21 Merge branch 'master' of github.com:highfidelity/hifi into rig 2015-08-04 16:06:38 -07:00
Eric Levin
f506e58687 Merge pull request #5490 from howard-stearns/restart-animations-at-specified-parameters
restart animations at specified parameters
2015-08-04 15:09:11 -07:00
Howard Stearns
61afc362e7 For startAnimation (but not startAnimationByRole), use the specified parameters even if the animation
was already playing.  This fixes the behavior exercised by the squeezeHands.js script.
Fixes https://app.asana.com/0/32622044445063/44025709513292
2015-08-03 17:00:39 -07:00
Ryan Huffman
027adf73bb Merge branch 'master' of github.com:highfidelity/hifi into asset-server 2015-08-03 16:41:24 -07:00
Ryan Huffman
2d938f2d0a Update AnimationCache to use new ResourceCache 2015-08-03 16:27:48 -07:00
Howard Stearns
2e5142e9bb Fix end of idle. 2015-08-03 16:09:48 -07:00
Howard Stearns
cdb697760f Remove some debug. 2015-08-03 15:51:07 -07:00
Howard Stearns
4c1d1a65d5 Provide initial fight club animations and use them in rig.
Still only active when you do Settings.setValue('enableRig', true) and restart.
(Will be more exposed after fadein/fadeout is implemented.)
2015-08-03 15:41:15 -07:00
Seth Alves
241e767ab6 move setHandPosition from SkeletonModel to AvatarRig. Tell Rig::initJointStates joint-indexes for hands and elbows and shoulders 2015-07-30 18:44:09 -07:00
Seth Alves
c80516a051 Merge branch 'rig' of github.com:howard-stearns/hifi into rig 2015-07-30 18:39:09 -07:00
Seth Alves
c1f777e18f move setHandPosition from SkeletonModel to AvatarRig. Tell Rig::initJointStates joint-indexes for hands and elbows and shoulders 2015-07-30 18:39:01 -07:00
Howard Stearns
78a900c866 Prototype blend. Just equal weighting for now. 2015-07-30 17:01:48 -07:00
Anthony J. Thibault
7a10b31dd9 Clear translation on root joint.
Also, delete/rename all instances of updateJointState except for the one in Rig
and derived classes.
2015-07-30 15:04:27 -07:00
Howard Stearns
06aa107762 Merge branch 'master' of https://github.com/highfidelity/hifi into rig 2015-07-30 09:57:02 -07:00
Anthony J. Thibault
4bb415fd0d Fix for torso twist.
Off by one error, 0 is a valid parent bone index.
2015-07-30 09:31:23 -07:00
Brad Hefta-Gaub
b95e4e1e93 Merge pull request #5323 from MarcelEdward/20605
Removed the  line where the directory is stripped off the RelativeFile
2015-07-30 07:30:01 -07:00
Howard Stearns
dc34c025bd whitespace 2015-07-29 18:54:05 -07:00
Anthony J. Thibault
c2934bdb5d Fix avatar head, eye and torso twist.
* Updated SkeletionModel::updateRig to explicitly pass a set of HeadParameters
  to the rig to do procedural animation.
* Moved torso lean procedural animation from SkeletonModel into Rig.
* Moved eye tracking procedural animation from HeadModel into Rig.
* Moved neck procedural animation from HeadModel into Rig.
2015-07-29 17:35:29 -07:00
Howard Stearns
a9f76324b5 Merge branch 'rig' of https://github.com/sethalves/hifi into sethalves-rig2 2015-07-29 10:49:27 -07:00
Anthony J. Thibault
b06485c266 Remove cauterize code from Rig and move it back into Model.
* cauterize code is used as at render time and is not dependent on
  the jointStates.
* MyAvatar now initialize the bone set used for cauterization and
  makes the decision to perform cauterization or not in preRender.
2015-07-28 17:45:33 -07:00
Howard Stearns
4754615159 Fix NPC animations. 2015-07-28 12:34:10 -07:00
Seth Alves
6e5aca6da4 merge from upstream 2015-07-27 16:52:36 -07:00
Howard Stearns
1bb734aec0 Kill warnings. 2015-07-27 15:26:03 -07:00
Howard Stearns
146ddd2240 Cleanup false starts. 2015-07-27 13:42:18 -07:00
Howard Stearns
990f0d6d07 Pass correct position/velocity/orientation to Rig simulation. 2015-07-27 12:57:39 -07:00
Seth Alves
a3c6a4b9bc merge from upstream 2015-07-27 09:29:18 -07:00
Howard Stearns
dac6667ee6 Start of state. 2015-07-27 09:21:24 -07:00
Howard Stearns
8b5f24e4df Keep list of animations in Rig, not MyAvatar. 2015-07-24 22:02:39 -07:00
Howard Stearns
05dda1220e Add logging. 2015-07-24 22:01:55 -07:00
Howard Stearns
4e298d815d Add the joint mapping necessary for playing animations in the rig. 2015-07-24 14:07:32 -07:00
Seth Alves
d5400e2b9d Merge branch 'rig' of github.com:howard-stearns/hifi into rig 2015-07-23 15:14:23 -07:00
Seth Alves
33c97a1833 get rid of _firstPersonSkeletonModel in MyAvatar. add flag in Rig for joints being dirty so Model knows when to recompute meshes 2015-07-23 15:14:10 -07:00
Howard Stearns
9593668110 Bring animation file headers up to date. 2015-07-23 15:08:22 -07:00
Seth Alves
4566d16402 move Model's AnimationHandles to Rig. Move a bunch of Model methods from public to protected 2015-07-23 13:03:38 -07:00
Howard Stearns
a1a10ad08e Merge branch 'rig' of https://github.com/sethalves/hifi into sethalves-rig 2015-07-22 21:08:57 -07:00
Howard Stearns
5a0c1a9402 Checkpoint testing stuff. 2015-07-22 21:03:48 -07:00
Seth Alves
ee334ff826 JointStates are owned by Rig objects. Model, FaceModel, SkeletonModel call into their Rig pointer to access JointStates. 2015-07-22 18:43:10 -07:00
Seth Alves
47965bc39c merge from upstream 2015-07-22 13:48:19 -07:00
Seth Alves
7c8d52cbd1 back out some changes to Model.cpp, change how rig pointer is delivered to model initilizer 2015-07-22 13:41:31 -07:00
Marcel Verhagen
8f0893ba21 Added fileOnUrl to check if a texture exist at the location. It return the correct filename of where the texture lives.
Added the url of the fix file to extractFBXGeometry and readFBX and updated the calls to readFBX to include the url of the fix file.

So it now does not break existing content.

Found a second place in the FBXReader.cpp where the RelativeFileName stripped out the dir location.
2015-07-22 22:34:45 +02:00
Howard Stearns
a161f527c4 Comments documenting direction and questions. 2015-07-22 11:41:24 -07:00
Seth Alves
abfe60aa20 whenever Model class uses _jointState, use the Rig version if there is a Rig. 2015-07-20 18:31:42 -07:00
Howard Stearns
ed815a0573 Reflect dependencies in unit test setup. 2015-07-17 16:53:41 -07:00
Seth Alves
bcd6b30ec3 move AnimationHandle from render-utils to animation. give Rig some jointstates and animation lists 2015-07-17 13:31:48 -07:00
Howard Stearns
6ca458b624 Instantiated in MyAvatar 2015-07-15 15:59:24 -07:00
Howard Stearns
5312993e56 Hmm, last was missing some emptiness. 2015-07-15 15:30:34 -07:00
Howard Stearns
bbb5f832a2 Empty Rig. 2015-07-15 15:11:16 -07:00
Atlante45
22f0dbdefb CR 2015-07-14 15:16:00 -07:00
Atlante45
c11864acf3 Merge branch 'master' of https://github.com/highfidelity/hifi into clear_cache_and_restart 2015-07-10 15:57:40 -07:00
ZappoMan
1dd40af162 fix AnimationLoop::setRunning() to not constantly reset the frame when the running state doesn't actually change 2015-07-10 12:43:35 -07:00
Atlante45
6c591131ba Made Animations safe for resource reload 2015-07-10 12:01:51 -07:00
Atlante45
f77fab2fe0 Merge branch 'master' of https://github.com/highfidelity/hifi into applications_diet_cpp11 2015-01-13 20:38:52 -08:00
Atlante45
38729c5790 Made dependencies inherit from Dependency 2015-01-13 20:38:01 -08:00
Atlante45
2a82ff9768 Merge branch 'master' of https://github.com/highfidelity/hifi into applications_diet_cpp11
Conflicts:
	assignment-client/src/voxels/VoxelServer.cpp
	interface/src/Application.cpp
	interface/src/Audio.cpp
	interface/src/DatagramProcessor.cpp
	interface/src/Menu.cpp
	interface/src/Util.cpp
	interface/src/avatar/MyAvatar.cpp
	interface/src/ui/ApplicationOverlay.cpp
	interface/src/ui/PreferencesDialog.cpp
	libraries/networking/src/NodeList.cpp
	libraries/shared/src/DependencyManager.h
2015-01-13 11:03:14 -08:00
Atlante45
8415098fc2 Set different caches size depending on cache type 2015-01-12 15:36:36 -08:00
ZappoMan
a0ec2ddfe9 clamp frame index between 0 and 100,000 2014-12-29 21:07:04 -08:00
Atlante45
296c0025de Switched to auto and changed macro 2014-12-18 15:42:38 -08:00
Atlante45
ce7f72d2cd Update macro 2014-12-17 15:26:47 -08:00
Atlante45
b2dac6f53f DM users update 2014-12-16 15:32:11 -08:00
ZappoMan
660bf2720e convert AnimationCache to DependencyManager 2014-12-15 19:48:15 -08:00
ZappoMan
5c2cc20313 fixes the stutter in animation when observer moves 2014-11-28 17:36:55 -08:00
ZappoMan
ef17659ea2 cleanup 2014-11-12 16:57:42 -08:00
ZappoMan
dd22683672 fixing up animation loop issues 2014-11-12 16:53:16 -08:00
ZappoMan
ba79f40007 add some debug 2014-11-12 16:12:34 -08:00
ZappoMan
6ff8abcbdd sepearate looping logic from AnimationHandle 2014-11-12 14:47:10 -08:00
ZappoMan
68bd6c23d9 sepearate looping logic from AnimationHandle 2014-11-12 14:47:02 -08:00
ZappoMan
8755e2d42e CR feedback 2014-07-03 13:38:52 -07:00
ZappoMan
a53d007c33 add support for getting current animation details for running avatar animations 2014-07-03 11:59:18 -07:00
ZappoMan
106c8bffd8 first cut at animations in models 2014-05-09 16:08:06 -07:00