734 Commits

Author SHA1 Message Date
Mario Zechner
275e702bc8 [cpp] Port cf45806b, 409bf9d6, 0e16ef9c from libgdx 2026-03-16 18:38:36 +01:00
Mario Zechner
e665976598 [cpp] Fix SPINE_USE_STD_FUNCTION listeners
Closes #2918
2026-03-16 11:22:42 +01:00
Mario Zechner
9749e52c05 [cpp] Port latest libgdx timeline and sequence follow-up fixes 2026-03-14 15:35:48 +01:00
Mario Zechner
6e582e724f [cpp][c] Port parser and sequence attachment changes from libgdx 2026-03-14 15:10:57 +01:00
Mario Zechner
29e2eac56e [cpp] Port additive timeline and color flicker fixes from spine-libgdx
- Revised which timelines support additive blending: IK and path
  constraint mix timelines no longer support add blend (treat as
  replace). Physics constraint timelines only support add for wind
  and gravity. Ports spine-libgdx commit b92058975.

- Fixed alpha and RGB timeline flicker when blend is setup and alpha
  is not 1: interpolate from setup value instead of set-then-add.
  Clamp color output to 0-1. Ports spine-libgdx commit 8943c84d8.
2026-03-14 15:10:57 +01:00
Mario Zechner
8eb8c5565f [cpp] Fix test expected output to include refString fields
Updates test.sh expected output to match current SkeletonSerializer format.
Adds test infrastructure documentation to AGENTS.md.
2026-03-10 15:38:42 +01:00
Mario Zechner
5d6ae75082 [cpp] Port binary reader fixes from spine-libgdx.
- Fix path constraint flag decoding for 4.3 binary layout (positionMode mask)
- Read bone count for weighted vertices to enable exact allocation

Ported from:
- d5535aa279
- 03fabb37b1
2026-03-10 14:27:31 +01:00
Mario Zechner
fa0f92958c [cpp] Fix findConstraint template. 2025-09-29 19:08:13 +02:00
Mario Zechner
335308a7ef [c][cpp][flutter][ios] Port of 64ed135e4939d9672f1ab48bdcec645ee50c37ef 2025-09-29 16:16:39 +02:00
Mario Zechner
c6495719ca [c][cpp][flutter][ios] Make attachment in Skin.setAttachment optional 2025-09-23 17:07:03 +02:00
Mario Zechner
522101f569 [c] Codegen outputs ported comments 2025-09-15 15:14:50 +02:00
Mario Zechner
355f557153 [cpp] Port of commit 48355c2, abb4362: PhysicsConstraint fixes. 2025-09-15 14:55:28 +02:00
Mario Zechner
fa4d43bda5 [cpp] Unshadow apply in BoneTimeline and others by prefixing the protected method with _apply() 2025-09-10 21:38:35 +02:00
badlogic
b64da9b637 [cpp] Introduce base classes for constraints without SP_API, from which concrete clsases derrive
MSVC issue. SP_API can't be used on classes with methods inherited from templated classes like ConstraintGeneric::getData(). we need an intermediate class that gets the method instantiation, and derrive from that instead.
2025-09-10 15:01:29 +02:00
Mario Zechner
e884b02f6d Revert "[cpp] Remove dll.h and SP_API"
This reverts commit 8bde2aeb543c7f51fd0224cd69ede246c719e6ea.
2025-09-10 13:58:03 +02:00
Mario Zechner
97909c3acc [cpp] More MSVC fixes 2025-09-10 13:55:54 +02:00
Mario Zechner
8bde2aeb54 [cpp] Remove dll.h and SP_API 2025-09-10 13:53:34 +02:00
Mario Zechner
18a244386e [cpp] Remove SP_API from templated classes 2025-09-10 13:32:14 +02:00
badlogic
9dea30a91b [cpp] More MSVC fixes, see https://forums.unrealengine.com/t/member-of-dll-interface-class-may-not-be-declared-what-does-it-mean/297770
Ridiculous
2025-09-10 13:25:20 +02:00
Mario Zechner
5297391a44 [cpp] More MSVC fixes 2025-09-10 13:14:03 +02:00
badlogic
ef57000eab [cpp] MSVC fixes 2025-09-10 13:08:08 +02:00
Mario Zechner
b5d6f1e427 [cpp] Fix ambiguities with Carbon on macOS 2025-09-10 12:43:38 +02:00
Mario Zechner
b37ee6fb6f [cpp] Remove no-cpprt.cpp and corresponding build targets 2025-09-10 12:34:51 +02:00
Mario Zechner
998fd7d17e [c][ios][flutter] Add render object getter setter to TextureRegion and AtlasRegion 2025-08-29 15:59:50 +02:00
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