NathanSweet
f6a6af0643
Fixed path constraint bone sorting.
2016-10-07 14:19:11 +02:00
NathanSweet
2ea42d4cae
noRotation transformMode experimentation.
2016-10-07 14:19:11 +02:00
NathanSweet
367cf651cf
Added FPS for 3.5.00-beta.
2016-09-17 09:24:34 +02:00
NathanSweet
cd982be60b
Fixed NaN when entire path or individual curve lengths are zero, eg when scaled to zero.
2016-09-15 13:16:31 +02:00
NathanSweet
dfe8e3b826
Refactoring bone transforms.
2016-09-15 13:16:26 +02:00
NathanSweet
56797953c2
Another try at disable inherit scale.
...
Still inherits shear and it flips with negative scale.
2016-09-07 10:59:17 +02:00
NathanSweet
0ecef9b2c5
Multiple mixingFrom animations.
2016-09-03 22:47:05 +02:00
NathanSweet
263b47c376
Proper rotation mixing.
...
#621
2016-08-29 19:45:08 +02:00
NathanSweet
b6660fa41c
Don't add skeleton position to bone worldX/Y.
2016-08-29 19:44:40 +02:00
NathanSweet
6bb3e49627
Remember all settings.
2016-08-29 19:44:26 +02:00
NathanSweet
7292b7d720
Lines for skeleton origin.
2016-08-29 14:21:14 +02:00
NathanSweet
ae7ca98b8e
Allow attachment loader to return null.
2016-08-27 14:53:02 +02:00
NathanSweet
bae19bdf32
Only compute timelinesLast for tracks that need it.
2016-08-25 16:03:07 +02:00
NathanSweet
81d7c1daeb
Never prefer empty animation when interrupting a mix.
2016-08-24 22:27:02 +02:00
NathanSweet
a840f4f959
Added timelinesLast to determine when to fade out. Clean up, fixes.
2016-08-24 21:04:25 +02:00
NathanSweet
5edcd916cc
Changed skeleton x,y to be propagated using the root bone world x,y.
...
Can't remember any good reason not to do this.
2016-08-24 21:02:55 +02:00
NathanSweet
5c9b41a748
Clean up.
2016-08-23 22:36:32 +02:00
NathanSweet
d9a1d76471
Moved interrupt to before start.
2016-08-23 21:28:16 +02:00
NathanSweet
014f229af9
Clean up, javadoc.
2016-08-23 18:25:01 +02:00
NathanSweet
c9fdfdf501
Added mixDuration resetTrack, added set/addEmptyAnimation methods.
2016-08-23 18:08:49 +02:00
NathanSweet
fd81d31278
Fixed resetTrack when a default mix time is used.
2016-08-23 17:38:37 +02:00
NathanSweet
bc05861a0c
Added resetTrack.
2016-08-23 17:09:59 +02:00
NathanSweet
3c57c03952
Searching for sanity.
2016-08-23 16:39:16 +02:00
NathanSweet
0a90565ba1
AnimationState#apply has no side effects.
2016-08-23 09:55:06 +02:00
NathanSweet
285aead074
Draw order timeline.
2016-08-22 22:54:58 +02:00
NathanSweet
4c2d2b0c0a
Moved track changes to update, so AnimationState can be applied to multiple skeletons without side effects.
...
Also:
- Moved queue drains outside of update loop.
- Better naming.
- Dirty flag after animations have been changed to avoid computing timelinesFirst more times than needed.
- Don't use timelinesFirst when mix == 1.
2016-08-22 21:39:42 +02:00
NathanSweet
ef2a440655
Always mix, even when mix duration is 0, to give the old animation a chance to reset its changes.
2016-08-22 19:39:48 +02:00
NathanSweet
42e3b95e33
Better timelines.
2016-08-22 16:51:45 +02:00
NathanSweet
280024a685
Added mixingOut parameter to Timeline#apply so timelines know which direction mixing is happening.
...
See ScaleTimeline which uses this to know which scale sign to use.
2016-08-22 14:43:33 +02:00
NathanSweet
b4924b0a49
Experimental WIP for mixing unkeyed bones to setup pose.
...
#621
2016-08-21 20:58:40 +02:00
NathanSweet
c59a58ae5b
Comment
2016-08-21 08:23:55 +02:00
NathanSweet
8f4ad90a17
AnimationState, allow delay to postpone the current track entry.
...
#621
2016-08-20 18:52:13 +02:00
NathanSweet
23f16c016c
AnimationState, don't mix from an animation that was never applied.
2016-08-20 17:59:55 +02:00
NathanSweet
a39c970a6a
AnimationState, javadoc, cleanup, tests.
...
#621
2016-08-20 15:47:13 +02:00
NathanSweet
0a8896a3e2
More AnimationState refactoring.
...
- Added `animationStart` so a portion of an animation can be looped.
- Changed timing fields to: trackTime, trackLast, trackEnd, animationStart, animationEnd, animationLast
- Removed default *Threshold fields. People can just set it on the track entry if they don't like the defaults.
- Removed `loopCount` from complete event. People can calculate it based on track time.
#621
closes #535
closes #593
2016-08-20 11:51:56 +02:00
NathanSweet
966c03e68f
AnimationState refactoring.
...
- Renamed `previous` to `mixingFrom` for clarity.
- Added `trackEntry` method to fully initialize TrackEntry.
- Moved `mixDuration` initialization to happen when TrackEntry is initialized. This allows mix times to be specified (or changed) through the TrackEntry, without using AnimationStateData.
- Made EventQueue static to ease porting.
- Javadocs.
#621
2016-08-19 19:14:17 +02:00
NathanSweet
4912ea8975
Fixed start event not being triggered when addAnimation is used on an empty track.
...
closes #634
2016-08-19 11:32:29 +02:00
NathanSweet
6aca4bd141
Updated AnimationState tests.
2016-08-19 11:21:56 +02:00
NathanSweet
b454d69b45
Fixed lastTime being > time for non-looping animations.
2016-08-19 11:21:44 +02:00
NathanSweet
5191cf4f5f
Wait until end of current loop when queuing an animation.
...
closes #626
2016-08-19 11:20:32 +02:00
NathanSweet
296d019bac
Formatting.
2016-08-19 08:47:43 +02:00
NathanSweet
e4e312626b
Better scale sign computation.
2016-08-18 21:59:30 +02:00
NathanSweet
5edeeb6035
When mixing scale, the sign of the last applied scale is used to avoid mixing across zero.
...
#621
2016-08-18 16:51:50 +02:00
NathanSweet
127c0fbbf5
AnimationState, added draw order threshold.
2016-08-18 15:17:13 +02:00
NathanSweet
c278cf77fb
Added event toasts to Skeleton Viewer.
2016-08-18 15:16:59 +02:00
NathanSweet
cc4f19da98
AnimationState, added attachment threshold. Defaults changed to NOT apply attachment timelines or fire events for an animation being mixed out.
...
#621
2016-08-18 14:46:15 +02:00
NathanSweet
b020bc0d44
Added event threshold setting to AnimationState.
...
#621
2016-08-18 14:05:24 +02:00
NathanSweet
6cc91d579c
Fixed world scale.
2016-08-18 11:01:57 +02:00
NathanSweet
c5d3d84f71
Better disable inherit rotation.
...
But not good, flips with negative scale.
2016-08-15 16:19:33 +02:00
NathanSweet
3160077207
Fixed Skeleton copy constructor.
...
It wasn't copying each bone's children.
2016-08-14 08:09:58 +02:00