mirror of
https://github.com/EsotericSoftware/spine-runtimes.git
synced 2026-02-22 09:46:42 +08:00
- Updated spine-c to 3.2.01, adding shearing and transform constraints plus various bug fixes - Introduced CMake based system to generated IDE projects for spine-sfml, and download dependencies for all other runtimes - Updated all spine-c based runtime READMEs with new usage and example instructions - Moved spine-cocos2d-iphone v2 and spine-cocos2dx v2 to separate branches. These will no longer be updated - Renamed spine-cocos2d-iphone to spine-cocos2d-iphone Removed cocos2d-ios v2 Spine runtime. See branch cocos2d-ios-v2 for legacy apps Moved cocos2d-ios v3 Spine runtime to top-level sphine-cocos2d-iphone directory Added Visual Studio support to CMake build Added Linux support for spine-sfml. Do apt-get install sfml-dev as a prerequisit, makes everyone's life easier Refactored Mac OS X framework detection and linking, added SFML_STATIC define for Win32 build Removed spine-cocos2dx v2 runtime. See cocos2dx-v2 branch on Github Moved spine-cocos2dx v3 runtime to root of spine-cocos2dx spine-c, spine-cocos2d-iphone, spine-cocos2dx, spine-sfml updated to 3.2.00 * Added CMake build for spine-c and spine-sfml * Removed spine-cocos2dx v2 and spine-cocos2d-iphone v2. See the cocos2dx-v2 and cocos2d-ios-v2 branches if you need these runtimes still * Added transform constraint rotate, scale, and shear offsets and mixes * Added spTransformConstraintTimeline * Added bone shearing * Added spShearTimeline * Changed spSkeleton_updateCache * Changed JSON format, see http://esotericsoftware.com/spine-json-format Ported 1be89d1c5766fedb91f080a23bffaef6609b86c3 to spine-c Cleaned up spine-c, removed IDE specific files and unnecessary data/ folder. Use CMake to import into your most beloved IDE Added spine-cocos2d-iphone to CMake, only downloads cocos2d-objc dependency. Use Xcode project in spine-cocos2d-iphone/ to run examples Added -std=c98 -pedantic -Wall to spine-c CMake file, fixed up all warnings, fixed up .gitignore Fixed warnings, replaced calls to stdlib cos/sin/atan2 with macros New cocos2dx example project, for Windows, Linux and Mac OS X. Doesn't work on Windows/Linux yet Fixed spine-cocos2dx Visual Studio projects Reworked cocos2dx dependency resolution Fixed up src/header paths in CMake files. Dependencies are only downloaded if you build a specific runtime example Updated spine-sfml README with instructions for Windows Updated spine-sfml README with instructions for Linux and Mac OS X Fixed README formatting More formatting, sorry, can't preview markdown... More README changes Renamed spine-cocos2d-iphone to spine-cocos2d-objc, fixed up Xcode project and README Updated spine-cocos2d-objc README Added context when exceptions are thrown during attachment and animation parsing. Added JsonRollback, a tool for converting newer JSON so it can be loaded by an older Spine version. [Unity] Update BoneFollower Added coverting linkedmesh to weightedlinkedmesh. [LUA] AnimationState trackCount bugfixes (#466) * resolved conflict * made trackCount keep count, not maximum track index. Prettier with varargs. Updated .gitignore to exclude cocos2dx dependencies Fixed up READMEs of spine-c based runtimes with proper version info. Fixed cocos2d-x CMake build to delete outdated Spine runtime shipped by cocos2d-x
66 lines
5.8 KiB
Markdown
66 lines
5.8 KiB
Markdown
# spine-cocos2dx v3.x
|
|
|
|
The spine-cocos2dx runtime provides functionality to load, manipulate and render [Spine](http://esotericsoftware.com) skeletal animation data using [cocos2d-x](http://www.cocos2d-x.org/). spine-cocos2dx is based on [spine-c](https://github.com/EsotericSoftware/spine-runtimes/tree/master/spine-c).
|
|
|
|
## Licensing
|
|
|
|
This Spine Runtime may only be used for personal or internal use, typically to evaluate Spine before purchasing. If you would like to incorporate a Spine Runtime into your applications, distribute software containing a Spine Runtime, or modify a Spine Runtime, then you will need a valid [Spine license](https://esotericsoftware.com/spine-purchase). Please see the [Spine Runtimes Software License](https://github.com/EsotericSoftware/spine-runtimes/blob/master/LICENSE) for detailed information.
|
|
|
|
The Spine Runtimes are developed with the intent to be used with data exported from Spine. By purchasing Spine, `Section 2` of the [Spine Software License](https://esotericsoftware.com/files/license.txt) grants the right to create and distribute derivative works of the Spine Runtimes.
|
|
|
|
## Spine version
|
|
|
|
spine-cocos2dx works with data exported from Spine version 3.2.01.
|
|
|
|
spine-cocos2dx supports all Spine features.
|
|
|
|
spine-cocos2dx does not yet support loading the binary format.
|
|
|
|
## Setup
|
|
|
|
The setup for cocos2d-x differs from most other Spine Runtimes because the cocos2d-x distribution includes a copy of the Spine Runtime files. This is not ideal because these files may be old and fail to work with the latest Spine editor. Also it means if cocos2d-x is updated, you may get newer Spine Runtime files which can break your application if you are not using the latest Spine editor. For these reasons, we have requested cocos2d-x to cease distributing the Spine Runtime files, but they continue to do so. The following instructions allow you to use the official Spine cocos2d-x runtime with your cocos2d-x project.
|
|
|
|
1. Create a new cocos2d-x project. See [the cocos2d-x documentation](http://www.cocos2d-x.org/docs/static-pages/installation.html)
|
|
2. Delete the folder `cocos2d/cocos/editor-support/spine`. This will remove the outdated Spine cocos2d-x runtime shipped by cocos2d-x.
|
|
3. Open your project in your IDE of choice, then open the cocos2d_libs sub project and delete the `editor-support/spine` group. This will remove the outdated Spine cocos2d-x runtime shipped by cocos2d-x from your build.
|
|
3. Download the Spine Runtimes source using git (`git clone https://github.com/esotericsoftware/spine-runtimes`) or download it [as a zip](https://github.com/EsotericSoftware/spine-runtimes/archive/master.zip)
|
|
4. Add the sources from `spine-c/src/spine` and `spine-cocos2dx/src/spine` to your project
|
|
4. Add the folders `spine-c/include` and `spine-cocos2dx/src` to your header search path. Note that includes are specified as `#inclue <spine/file.h>`, so the `spine` directory cannot be omitted when copying the source files.
|
|
|
|
## Example
|
|
The Spine cocos2d-x example works on Windows and Mac OS X.
|
|
|
|
### Windows
|
|
1. Install [Visual Studio 2015 Community](https://www.visualstudio.com/en-us/downloads/download-visual-studio-vs.aspx)
|
|
2. Install CMake via the [Windows installer package](https://cmake.org/download/).
|
|
3. Download the Spine Runtimes repository using git (`git clone https://github.com/esotericsoftware/spine-runtimes`) or download it [as a zip](https://github.com/EsotericSoftware/spine-runtimes/archive/master.zip)
|
|
4. Run CMake GUI from the start menu
|
|
5. Click `Browse Source` and select the directory `spine-runtimes`
|
|
6. Click `Browse Build` and select the `spine-runtimes/spine-cocos2dx/build` directory. You can create the `build` folder directly in the file dialog via `New Folder`.
|
|
7. Click `Configure`. This will download the cocos2d-x dependency and wire it up with the example source code in `spine-runtimes/spine-cocos2dx/example`. The download is 400mb, so get yourself a cup of tea.
|
|
8. Open the `spine-runtimes/spine-cocos2dx/example/proj.win32/spine-cocos2d-x.sln` file in Visual Studio 2015. Visual Studio may ask you to install the Windows XP/7 SDK, which you should install.
|
|
9. Expand the cocos2d_libs sub project and delete the `editor-support/spine` group. This will remove the outdated Spine cocos2d-x runtime shipped by cocos2d-x from your build.
|
|
9. Right click the `spine-cocos2d-x` project in the solution explorer and select `Set as Startup Project` from the context menu
|
|
10. Click `Local Windows Debugger` to run the example
|
|
|
|
### Mac OS X
|
|
1. Install [Xcode](https://developer.apple.com/xcode/)
|
|
2. Install [Homebrew](http://brew.sh/)
|
|
3. Open a terminal and install CMake via `brew install cmake`
|
|
3. Download the Spine Runtimes repository using git (`git clone https://github.com/esotericsoftware/spine-runtimes`) or download it [as a zip](https://github.com/EsotericSoftware/spine-runtimes/archive/master.zip)
|
|
4. Open a terminal, and `cd` into the `spine-runtimes/spine-cocos2dx` folder
|
|
5. Type `mkdir build && cd build && cmake ../..`. This will download the cocos2d-x dependency and wire it up with the example source code in `spine-runtimes/spine-cocos2dx/example`. The download is 400mb, so get yourself a cup of tea.
|
|
6. Open the Xcode project in `spine-runtimes/spine-cocos2dx/example/proj.ios_mac`
|
|
7. Expand the `cocos2d_libs.xcodeproj` sub project, delete the group `editor-support/spine`. This will remove the
|
|
8. Click the `Run` button or type `CMD+R` to run the example
|
|
|
|
## Notes
|
|
|
|
- Images are premultiplied by cocos2d-x, so the Spine atlas images should *not* use premultiplied alpha.
|
|
|
|
## Examples
|
|
|
|
- [Raptor](https://github.com/EsotericSoftware/spine-runtimes/blob/master/spine-cocos2dx/3/example/Classes/RaptorExample.cpp)
|
|
- [Spineboy](https://github.com/EsotericSoftware/spine-runtimes/blob/master/spine-cocos2dx/3/example/Classes/SpineboyExample.cpp)
|
|
- [Golbins](https://github.com/EsotericSoftware/spine-runtimes/blob/master/spine-cocos2dx/3/example/Classes/GoblinsExample.cpp)
|