NathanSweet
d94ebeae7a
[libgdx] One bone IK clean up.
2019-12-18 18:16:05 +01:00
NathanSweet
203a648ae9
[libgdx] Fixed one bone IK with disable inherit rotation/scale/reflection.
2019-12-18 18:04:21 +01:00
NathanSweet
068a554cc9
Avoid iterators for hot paths.
2019-12-06 22:22:18 +01:00
NathanSweet
65752c6d39
A little more minor skin clean up.
2019-12-06 22:22:18 +01:00
NathanSweet
26aaed331f
Minor skin clean up.
2019-11-29 21:07:30 +01:00
NathanSweet
d1d108952b
Avoid creating a new color object just to set a color.
2019-11-25 14:25:32 +01:00
NathanSweet
fdc73cae67
Javadoc improvements.
2019-11-25 14:19:36 +01:00
NathanSweet
952a34bc08
Restructured timelines to have a curve per value.
...
EsotericSoftware/spine-editor#118
2019-11-22 22:09:12 +01:00
badlogic
aebe8d3fb6
[libgdx] Switch Java version back to 1.7.
2019-11-22 14:39:30 +01:00
badlogic
7763a8839b
[libgdx] Depending on libGDX snapshot builds for now.
2019-11-22 14:35:10 +01:00
NathanSweet
be8f622638
Added support for AnimationState to play backward.
2019-11-22 11:25:11 +01:00
NathanSweet
34ad58febe
Use linear search to find keys.
...
Linear consistently outperforms binary using a wide sampling of real world data.
2019-11-16 18:08:33 +01:00
NathanSweet
faf22ce3cc
Removed clamping.
...
It wasn't used in all code paths anyway.
2019-11-05 21:51:48 +01:00
NathanSweet
4762954446
Fixed bug with interpolation of first Bezier segment.
2019-11-05 19:02:19 +01:00
NathanSweet
c23eb470e6
Minor cleanup, javadoc.
2019-11-05 18:40:08 +01:00
NathanSweet
d72add1370
Timeline cleanup.
...
* More code moved into getCurveValue/Percent.
* Avoid doing work where possible, eg few comparisons, don't access `frames` when the value is not needed.
* Binary searches return lower index rather than greater and return the frame index without multiplying by the number of entries.
2019-10-31 23:17:03 +01:00
NathanSweet
72f6943970
Timeline binary search for stride 2.
2019-10-29 21:54:46 +01:00
NathanSweet
07bd8451f4
Timeline and JSON/binary improvements.
...
* Path constraint position and spacing timelines are now value timelines.
* Better code reuse in timelines and loaders.
* Loader changes for using time for Bezier segments.
* Binary knows the number of timelines ahead of time, for allocation.
2019-10-29 18:39:52 +01:00
NathanSweet
f165ffeb1c
Use time for Bezier segments rather than percent.
...
Saves calculating the percent between frames for the Bezier path.
2019-10-29 18:39:52 +01:00
NathanSweet
40e0f7c88c
Combined properties for rgb channels.
2019-10-26 17:18:01 +02:00
NathanSweet
93ca505864
Value space timelines, multiple property IDs per timeline, rotation not limited -180/180, clean up.
...
* Timeline is an abstract base class rather than an interface.
* Timelines have a list of String property IDs rather than a single int ID.
* CurveTimeline is separated into percent and value timelines and the API is cleaned up.
* CurveTimeline stores Bezier curves more efficiently. Linear/stepped keys used to take up memory they didn't use (18 floats/key).
* Binary format knows how many keys are Bezier up front for more efficient loading.
* RotateTimeline is no longer limited to -180/180.
* ScaleTimeline and ShearTimeline no longer extend TranslateTimeline.
* PathConstraintSpacingTimeline no longer extends PathConstraintPositionTimeline.
2019-10-26 15:00:58 +02:00
NathanSweet
0ee034b2db
[libgdx] Store timeline ids inside set in Animation for O(1) lookup, added Animation#setTimelines.
...
See #1462 .
2019-10-17 17:49:54 +02:00
NathanSweet
4812bac88d
[libgdx] Store timeline ids inside set in Animation for O(1) lookup, added Animation#setTimelines.
...
See #1462 .
2019-10-17 17:49:05 +02:00
NathanSweet
30a460d504
[libgdx] Allow listeners to be removed from event callbacks.
...
closes #464
2019-10-14 14:01:42 +02:00
badlogic
ecd1d67c25
[libgdx] Store timeline ids inside set in Animation for O(1) lookup. See #1462 .
2019-09-26 15:04:57 +02:00
badlogic
679a012cc3
[libgdx] SkinEntry equals and hashCode do not take the attachment field into account. When setting a new SkinEntry for an existing slot + name combination, the old key with the old attachment stays in the keys table of the OrderedMap. Upon a call to getAttachments() that keys table is returned, which means the old attachment is returned instead of the newly set attachment. This commit fixes this buggy behaviour by storing SkinEntries as values, giving us access to the re-used key on which we can then update the attachment field. I'm sorry. Closes #1485 .
2019-09-26 14:29:43 +02:00
badlogic
0ad6eb1b8d
[libgdx] SkinEntry equals and hashCode do not take the attachment field into account. When setting a new SkinEntry for an existing slot + name combination, the old key with the old attachment stays in the keys table of the OrderedMap. Upon a call to getAttachments() that keys table is returned, which means the old attachment is returned instead of the newly set attachment. This commit fixes this buggy behaviour by storing SkinEntries as values, giving us access to the re-used key on which we can then update the attachment field. I'm sorry. Closes #1485 .
2019-09-26 14:29:01 +02:00
badlogic
a7d68b7cd5
Merge branch '3.8' into 3.9-beta
2019-09-26 11:38:47 +02:00
badlogic
826771c2b6
[libgdx] Apply left over time additively to track time of delayed TrackEntry. See #1504 .
2019-09-26 11:30:38 +02:00
badlogic
db166b1b7b
Merge branch '3.8' into 3.9-beta
2019-09-11 16:20:00 +02:00
NathanSweet
f6dcf94115
[libgdx] Removed extra spaces in shader.
2019-08-29 19:18:59 +02:00
NathanSweet
2fa85fc1c6
[all] AnimationState, fixed an attachment timeline from changing the mix blend for other timelines.
...
closes #1461
2019-08-27 13:20:24 +02:00
NathanSweet
88ece3181e
[libgdx] Made method package private for editor.
2019-08-26 20:29:05 +02:00
NathanSweet
2af6f4c925
[libgdx] Set default size (may fix VM bug in Chinese Android devices).
2019-08-25 17:32:01 +02:00
NathanSweet
c4fc616a9f
Added a SkeletonData asset loader.
...
#266
#826
2019-08-20 13:32:12 +02:00
badlogic
e940f72d91
Merge branch '3.8' into 3.9-beta
2019-08-07 11:43:45 +02:00
NathanSweet
f60f026f09
[libgdx] Minor SkeletonBinary improvement.
2019-08-06 16:40:06 +02:00
NathanSweet
bb8cba13e1
[libgdx] SkeletonBinary should only set a default skin if it has attachments.
2019-08-06 16:38:29 +02:00
badlogic
ed44edfaed
[libgdx] Updated pom version.
2019-08-05 15:17:03 +02:00
badlogic
3f1214923c
[maven-release-plugin] prepare for next development iteration
2019-08-05 15:04:01 +02:00
badlogic
76a6f7302f
[maven-release-plugin] prepare release spine-libgdx-3.8.55.1
2019-08-05 15:03:54 +02:00
badlogic
d5689f01b0
[libgdx] Snapshot version.
2019-08-05 15:03:25 +02:00
badlogic
581fcfb315
[libgdx] Updated to gdx 1.9.10.
2019-08-05 15:01:44 +02:00
NathanSweet
eac42ae50a
[libgdx] Disallow creating a timeline with 0 frames.
2019-07-14 13:33:23 +02:00
NathanSweet
e915776665
[libgdx] Javadoc.
2019-07-05 19:21:46 +02:00
NathanSweet
64695a2c80
[libgdx] Apply loader scale to IK constraint softness.
2019-06-19 23:07:15 +02:00
NathanSweet
e3bc0822e1
[libgdx] IK constraint improvements.
...
* Fixed softness when the parent bone is scaled.
* Scale softness using the parent and child bone `scaleX`.
* Fixed NaNs when the child bone is at `0,0` parent coordinates (or the parent is scaled to zero).
2019-06-19 02:26:03 +02:00
NathanSweet
15b4c54888
[libgdx] Added IK softness.
2019-06-17 19:06:22 +02:00
NathanSweet
ccc5b2f38b
[libgdx] Fixed root bone transform for skeleton scale to use world axes.
...
#1373
2019-06-13 14:57:29 +02:00
NathanSweet
ad6ed0911c
[libgdx] Wrap System.arraycopy for exceptions with more context.
2019-06-11 11:17:34 +02:00