88 Commits

Author SHA1 Message Date
badlogic
d0cc44bfdb Fixed URLs in READMEs, replaced most with relative links, so URLs point to correct branch. 2017-10-04 15:08:22 +02:00
badlogic
84fe30a2bf [runtimes] Fixed handling of zero length bones in PathConstraint if spacing is length based. Closes #957 2017-07-31 11:29:03 +02:00
badlogic
dfb8861de4 Updated supported versions in README.md 2017-07-12 11:25:54 +02:00
badlogic
3be988e12f Updated READMEs to point to correct zips 2017-07-12 11:20:55 +02:00
badlogic
fdee465333 [lua][love][corona] Added vertex effect support. See #898 2017-06-27 15:46:44 +02:00
badlogic
add46aeda6 [corona] Another fix for color handling in renderer. 2017-06-19 18:23:13 +02:00
badlogic
14bd5ecbfe [corona] Fixed color handling in renderer. 2017-06-19 18:08:22 +02:00
badlogic
9bd1153518 Updated examples and runtime demo code 2017-06-19 16:47:28 +02:00
badlogic
8123422f33 [lua] Fixed SkeletonClipping. [corona] Refactored rendering, should be a bit faster as it avoids a bunch of copies. Fixed RegionAttachment to be in alignement with reference implementation 2017-05-04 13:17:54 +02:00
badlogic
1fafbd0cb7 [corona] Added coin sample, added clipping attachment loading, fixed bug in Corona renderer. 2017-05-03 14:45:25 +02:00
badlogic
abc5ff272d [lua] Added convex decomposition 2017-05-03 14:16:32 +02:00
badlogic
d218cf1544 [lua] Added triangulator. 2017-05-03 13:44:34 +02:00
badlogic
848f3d382c [runtimes] Updated remaining samples/runtimes 2017-04-11 13:14:53 +02:00
badlogic
8920840ecf [starling] Fixed renderer, ignores path attachments. Fixed samples, click on sprites to advance to next sample. Updated assets 2017-04-11 13:11:02 +02:00
badlogic
0b40dd7a9f Updated exports 2017-03-27 10:19:51 +02:00
badlogic
9cd5f25cdb [ts] Moved conversion to typed array to minimize allocations 2017-02-23 13:33:40 +01:00
badlogic
0a2ca732cd [lua][corona] Ported 3.6 changes except TransformConstraint update 2017-02-22 14:40:55 +01:00
badlogic
fe8eae4b8e [c] Ported 3.6 changes, two color timeline, changed updateWorldVertices to computeWorldVertices, point attachment, transform constraint local and relative mode. Does not actually render two color tinted slots yet. Also updated example exports 2017-01-30 16:31:16 +01:00
badlogic
aca4060fad [lua] Ported AnimationState changes 2016-11-24 13:00:46 +01:00
NathanSweet
d52d2e72ee Updated READMEs, supported version is 3.5.xx. 2016-11-15 23:29:27 +01:00
NathanSweet
36000e3c55 Updated to v3.5 (merge dev branch).
# Conflicts:
#	spine-c/src/spine/AnimationState.c
2016-11-15 23:10:23 +01:00
NathanSweet
c0fdc454a2 Fixed inconsistent newlines.
License header was followed by \n\n and files ended with \n. Changed to \r\n.
2016-10-15 23:45:16 +02:00
NathanSweet
7a18f0818c Every space in its place! (tm)
(whitespace clean up)
2016-10-15 23:15:41 +02:00
NathanSweet
6cdcdbdb40 Renamed TextureAtlasAttachmentLoader to AtlasAttachmentLoader, matching the other runtimes. 2016-10-15 10:27:38 +02:00
NathanSweet
f63561085a List explicit Spine editor version that is supported. 2016-10-13 22:55:04 +02:00
badlogic
ef50131431 [runtimes] Updated all LICENSE files and README.mds 2016-10-13 15:21:05 +02:00
badlogic
5aa27771c3 [runtimes] Updated ALL sources to use latest Spine Runtimes License v2.5. Manually checked all the things... 2016-10-13 15:12:05 +02:00
Mario Zechner
5b1814cff3 spine-lua, spine-love, spine-corona update to 3.4.02 (#722)
The spine-lua API has been updated to be compatible with Spine version 3.4.02 (latest stable). The spine-lua API now supports path constraints, transform constraints, uses the new way we encode meshes etc. There are no API breaking changes, only API additions, such as PathConstraints and TransformConstraints as well as additional methods to Skeleton and similar classes. The internals of the spine-lua API have also been updated to follow Lua best performance practices by localizing heavily and using meta tables for "class methods". The spine-lua API now also loads texture atlases as exported by Spine. All that is required for a consumer is to supply an image loading function for their specific engine/framework. We provide implementations for spine-love and spine-corona.

The spine-love API can now render all Spine attachment types, including meshes and linked meshes. The API has changed. Where previously a "class" Skeleton existed with a draw function, the new spine-love API introduces a new SkeletonRenderer. See the example on API usage.

The spine-corona API can now also render all Spine attachment types. The API has not changed.
2016-10-11 16:33:25 +02:00
Vlad Shcherban
559fcbfcb9 * [Lua] Adding Spine atlas parser
* [Corona] Adding ability to load atlas files
* [Corona] Added example of using atlas

# Documentation:

## Lua runtime: `spine.Atlas.parse`

`Atlas.lua` introduces `spine.Atlas.parse(atlasPath, baseDir)` funciton. This function can be use across Lua runtimes to implement their their own image sheet bindings. It will return Array of `Page`s or `nil` if error.

### `Page` properties:
* `name` - filename of the page (`"raptor.png"`)
* `size` - dimmensions of original image (`[1022,1022]`)
* `format` - texture format (`"RGBA8888"`)
* `filter` - filter for texture scalin up and down (`["Linear","Linear"]`)
* `wrap` - wrap modes (`"none"`)
* `regions` - Array of `Region`s on this page

### `Region` properties:
* `name` - region name (`"torso"`)
* `rotate` - is image rotated in texture (`true`)
* `xy` - image frame position on texture (`[610,647]`)
* `size` - image frame size on texture (`[54,91]`)
* `splits` - (optional)
* `pad` - (optional)
* `orig` - original image size (`[54,91]`)
* `offset` - offset if image was trimmed (`[0,0]`)
* `index` - `-1`

## Corona runtime: `spine.GetAtlasSprites`

`spine.lua` introduces `spine.GetAtlasSprites(atlasName, baseDir)`, which returns `Sprites` table. This funciton would parse atlas, locate atlas textures, load them to Corona's image sheets and create convinience bindings and functions. User can use convenience functions, or write own wrappers.

### `Sprites` table
#### Convenience functions:
* `ATLAS_HELPER_createImage` - can be assigned to `skeleton.createImage`
* `ATLAS_HELPER_createMesh` - can be assigned to `skeleton.createMesh`
* `ATLAS_HELPER_setupSkeleton` - use this on skeleton to assing both creation functions (`sprites.setupSkeleton(skeleton)`)

### Region name bindings:
All other elements of `Sprites` table would contain binding `sprites["region_name"] = sheetReference`, where each `sheetReference` contains following elements:

* `frame` - number of frame in image sheet (`42`)
* `region` - reference to `Region` table
* `page` -  reference to `Page` table. `Page` table would also get new property - `sheet`, reference to Corona's image sheet where sprites can be accessed.

As result, to create image for `attachment` code would look something like `display.newImage( sprites[attachment.name].page.sheet, sprites[attachment.name].frame )`. For more rubust example see `ATLAS_HELPER_createImage` in `spine-corona/spine.lua`.

# Known Issues:

* Corona would not work with padded/cropped atlases.
* Possible (but unprobable) name collision with region names and `ATLAS_HELPER_*` functions.
2016-06-23 11:07:12 -04:00
NathanSweet
e834982b49 Updated READMEs for v3.3 support. 2016-06-20 19:26:05 +02:00
Svoka
1ea57900c5 Fixing bugs in Lua runtime; adding support for meshes in Corona runtime; adding spineboy-mesh demo (#600)
Bugs:

* ffd animation was ignoring last frame. Lua has 1-based arrays, so last frame is `frames[#frames]`, not `frames[#frames - 1]`
* nil exception when accessing array lenght after it's confirmed nil. First we check if `not vertices` and in next statement we're trying to check for it's length, which causes exception. This code is logically equivalent to code before but avoids checking potentially nil array for length.
2016-06-04 16:12:43 +02:00
NathanSweet
8d7f761311 spine-libgdx updated to 3.2.00.
* Added transform constraint rotate, scale, and shear offsets and mixes.
* Added TransformConstraintTimeline.
* Added bone shearing.
* Added ShearTimeline.
* Changed Skeleton#updateCache.
* Changed JSON and binary formats. Some binary format fields and enums were rearranged for consistency -- sorry, but it's better for the long term. Docs for both are up to date.
http://esotericsoftware.com/spine-json-format
http://esotericsoftware.com/spine-binary-format
2016-04-26 22:51:04 +02:00
NathanSweet
d0d7e64b43 Docs: added a note to runtimes that don't yet support the binary format. 2016-04-07 22:50:00 +02:00
NathanSweet
4f3ccc2c51 List the supported editor version on each runtime README.
closes #526
2016-04-03 19:10:47 +02:00
NathanSweet
01cb844993 You get a license file, you get a license file, EVERYBODY GETS A LICENSE FILE! 2015-07-30 22:47:00 +02:00
NathanSweet
f06fbb3d8d Clarified licensing on runtimes pages. 2015-07-30 22:44:47 +02:00
NathanSweet
27270a5781 Spine Runtimes license update.
Minor update to fix "SOFTARE" typo and clairfy how to get permission.
2015-04-24 21:33:24 +02:00
NathanSweet
f8a76c6455 Blend modes for all runtimes. 2015-04-02 14:20:20 +02:00
NathanSweet
7c065a76e2 IK for spine-lua, spine-corona, spine-love. 2014-11-16 03:05:46 +01:00
NathanSweet
c3e8058208 Removed test flip timeline. 2014-11-16 00:33:09 +01:00
NathanSweet
59204db7f8 Flip timelines for spine-lua, spine-corona, spine-love. 2014-11-16 00:05:01 +01:00
NathanSweet
81ae526a7b Meshes, FFD and skinning for spine-lua. 2014-05-23 12:37:55 +02:00
Nathan Sweet
6b7ed29684 Merge pull request #192 from reaver/master
Update Corona Runtime for the new Graphics 2.0
2014-05-15 18:49:06 +02:00
NathanSweet
26e4fb0d74 License header update.
2 -> 2.1 (clearer how permission is granted, formatting).
2014-04-23 12:04:43 +02:00
Matt
a28ddaf5d9 updates color values and image anchor for Corona Graphics 2.0 compatablility. 2014-02-28 19:30:06 +01:00
NathanSweet
b272808a2d Use display.remove(). 2014-02-01 02:07:50 +01:00
NathanSweet
661a0436bc Documentation 2014-01-20 04:51:20 +01:00
NathanSweet
b0c96fd66b Typo 2014-01-11 21:20:46 +01:00
NathanSweet
d520addb9b Updated license to version 2.
Version 1 of the license didn't make sense: it required a Spine license to use the Spine Runtimes at all. This means if you used the Spine Runtimes in your application, anyone who purchased a copy of your application also needed a Spine license to use the runtimes. This was not the intent!

Version 2 of the license fixes this by allowing anyone to use the Spine Runtimes but only for internal use. When you purchase Spine, the Spine license (http://esotericsoftware.com/spine/files/license.txt) grants you the right to make and distribute derivative works of the Spine Runtimes. Now it makes sense: making and distributing applications with the Spine Runtimes requires a Spine license, but anyone can run that software without needing a Spine license.

With this fixed, I hope we never need to change the license again!
2014-01-11 21:07:28 +01:00
NathanSweet
35810a5961 Comments. 2013-11-04 22:11:01 +01:00