Mario Zechner
51410a526e
[c] Direct setListener on track entry and animation state
2025-08-29 15:10:56 +02:00
Mario Zechner
8118d7ff55
[glfw] renderer_draw_lite -> renderer_draw_c
2025-08-27 13:00:45 +02:00
Mario Zechner
500c30319a
[cpp] Remove spine-cpp-lite, superceeded by spine-c
2025-08-26 17:35:31 +02:00
Harald Csaszar
53fb4bcce4
More URLs in license files updated from http to https.
2025-08-01 17:30:01 +02:00
Mario Zechner
106c39d0af
[workflows] Add diff artifact to dart format check for debugging
2025-07-31 21:32:13 +02:00
Mario Zechner
86f888b1fc
[workflows] Fix dart format check workflow - use && instead of &
2025-07-31 21:28:31 +02:00
Mario Zechner
a2c752d855
[cpp][c] Fix warnings on Clang
2025-07-31 00:50:41 +02:00
Mario Zechner
f9fefee0c8
[cpp] Docker build for GCC testing, minor GCC fixes
2025-07-30 12:10:02 +02:00
Mario Zechner
f6fbbabd6b
[cpp] pEvents -> events
2025-07-30 09:41:42 +02:00
Mario Zechner
65f01fefb9
[cpp] Skeleton::getBounds() without scratch buffers
2025-07-30 00:42:27 +02:00
Mario Zechner
fe5e25c3a0
[cpp] Added TrackEntry::getAnimationState(), wired up when TrackEntry is obtained from pool in AnimatinState::newTrackEntry
2025-07-29 23:15:38 +02:00
Mario Zechner
fd939f4401
[c][cpp] SpineExtension::strdup convenience method, better spine_skin_entries api in spine-c extensions
2025-07-29 22:18:42 +02:00
Mario Zechner
3e67c82a22
[cpp] Fix UB in attachment timeline binary parsing
2025-07-26 02:17:18 +02:00
Mario Zechner
022f7b6113
[cpp] And back to new bendDirection IK behaviour
2025-07-26 01:31:46 +02:00
Mario Zechner
cfcca956fa
[cpp] Support sanitizers again
2025-07-26 01:26:39 +02:00
Mario Zechner
9b778bc508
[cpp] Fix SkeletonBinary::readLong() UB, revert bendDirection fix again ...
2025-07-26 01:18:47 +02:00
Mario Zechner
17e843bc95
[cpp] Reverse IK bend positive logic.
...
This matches SkeletonJson for 1-bone IK. Requires 4.3.39-beta+.
2025-07-26 00:19:55 +02:00
Mario Zechner
a0bcb01a2a
[cpp] Fix inconsistens getters/setters wrt nullability
2025-07-25 22:20:02 +02:00
Mario Zechner
854b6f9a2a
[cpp] Constructor nullability.
2025-07-25 22:00:52 +02:00
Mario Zechner
861eac1c1b
[c] References for non-nullable arguments and return types, pointers for nullable args and return types
2025-07-25 20:21:39 +02:00
Mario Zechner
6ad01acc6a
[flutter] Use new loading infra from spine-c
2025-07-25 02:19:53 +02:00
Mario Zechner
ce12249682
[cpp] Use stl unordered_map if STL is available in Debug.h (faster)
2025-07-25 01:20:53 +02:00
Mario Zechner
31e0566b7d
[cpp] Remove CurveTimeline2, replace with BoneTimeline2.
2025-07-24 22:25:23 +02:00
Mario Zechner
a018a3d7e9
[cpp] Fix _boneIndex initialization in constructors
2025-07-24 14:40:36 +02:00
Mario Zechner
d25c75d86b
[cpp] BoneTimeline is pure now
2025-07-24 14:25:49 +02:00
Mario Zechner
af05f0681d
[cpp] Refactored type hierarchy to be single inheritance, multiple interfaces
2025-07-24 14:16:19 +02:00
Mario Zechner
60cc9f0e20
[cpp] Make Constraint and Posed pure
2025-07-24 12:48:34 +02:00
Mario Zechner
94e5e74e8a
[cpp] AtlasRegion::getName returns const String & instead of String.
2025-07-24 12:23:16 +02:00
Mario Zechner
c7af1a3438
[cpp] Fix C++ clipping triangle skipping and control flow bugs
...
- Remove erroneous i+=3 increment in SkeletonClipping.cpp that caused triangle skipping
- Add missing continue statement to match Java reference implementation behavior
- Portal animation now renders correctly with proper triangular clipping
2025-07-22 02:09:01 +02:00
Mario Zechner
235aa7b928
[tests] No explicit skeleton.setupPose() call.
2025-07-22 02:09:01 +02:00
Mario Zechner
ddf4c50954
[cpp] Call setupPose() in PosedGeneric constructor, to mirror what we do in Java.
2025-07-22 02:09:01 +02:00
Mario Zechner
ed5bb5b566
[cpp] Fix RTTI of BonePose
2025-07-22 02:09:01 +02:00
Mario Zechner
6f81d43faa
[cpp] Enhance circular reference display with deterministic object identifiers
...
Replace "<circular>" with meaningful reference strings using a hybrid approach:
- Objects with names: <EventData-walk>, <BoneData-head>, <Animation-run>
- Objects without names: <TrackEntry-1>, <Bone-2>, <SliderTimeline-3>
Each serialized object now includes "refString" as its first field, enabling
easy navigation from circular references to full object definitions.
2025-07-22 02:09:01 +02:00
Mario Zechner
fb821ec443
Formatting
2025-07-21 03:37:09 +02:00
Mario Zechner
7fdb5906e4
[cpp] Fix hash construction in SkeletonBinary
2025-07-21 02:38:47 +02:00
Mario Zechner
45c60efd6a
[cpp] Fix rotated region handling, EventData::volume default value.
2025-07-21 02:35:36 +02:00
Mario Zechner
d0d77b68ae
[cpp] Fix BoundingBoxAttachment default color
2025-07-21 01:41:54 +02:00
Mario Zechner
ab469cbefd
[tests] headless-test-runner.ts with language specific fixes (e.g. icon: null (Java) > icon: "" (C++), C++ JSON will have null as well)
2025-07-21 00:58:43 +02:00
Mario Zechner
1a10d185a3
[cpp] Smoke tests
2025-07-20 22:42:16 +02:00
Mario Zechner
f2fced8bf8
Fix logging in various Bash scripts
2025-07-20 21:35:19 +02:00
Mario Zechner
d409ff23ff
Fix format-xx.sh files wrt logging, add proper Swift formatting configuration.
2025-07-20 21:31:07 +02:00
Mario Zechner
0dd86dfdc1
Consistent logging in all Bash scripts via formatters/logging/logging.sh
2025-07-20 20:45:54 +02:00
Mario Zechner
2036aa3e76
[cpp] Fix double free crash in SkeletonBinary::readSkeletonDataFile, add terminal logging utilities and style guide, add nostdcpp
2025-07-20 20:19:07 +02:00
Mario Zechner
aaca02ad81
[cpp] nostdlib build to be used with WASM and other environments that do not want stdlibc++ linked in.
2025-07-20 14:20:40 +02:00
Mario Zechner
b544dd99ed
[formatters] C/C++ formatting
2025-07-15 22:56:12 +02:00
Mario Zechner
0c74907da2
[tests] Improve snapshot testing infrastructure
...
- test.sh which given a language builds the headless test executable and runs the test with the given inputs
- generate-serializers.sh to (re-)generate all language specific serializers
- Improved README.md
- Removed headless-test-runner.ts, now fully expressed in more concise test.sh
2025-07-15 15:13:45 +02:00
Mario Zechner
acbcfeb44d
[cpp] Still compute RegionAttachment offsets when the region is null, see #2887
...
- Includes a massive refactor of the TextureRegion/AtlasRegion hierarchy to be in line with Java implementation
- Exact line by line port of RegionAttachment#updateRegion and MeshAttachment#updateRegion using new region implementations
2025-07-15 14:22:19 +02:00
Mario Zechner
9de99309f4
[c][cpp] Improved README.md
2025-07-15 11:49:15 +02:00
Mario Zechner
84a541b098
[c][cpp] Use CMake presets and Ninja as the default generator
2025-07-15 11:34:11 +02:00
Mario Zechner
557465ed01
[cpp] Rename RegionAttachment::_vertexOffset -> ::_offset
2025-07-15 11:25:05 +02:00