- 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
spine-sfml
The spine-sfml runtime provides functionality to load, manipulate and render Spine skeletal animation data using SFML. spine-sfml is based on 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. Please see the Spine Runtimes Software 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 grants the right to create and distribute derivative works of the Spine Runtimes.
Spine version
spine-sfml works with data exported from Spine version 3.2.x.
spine-sfml supports all Spine features.
spine-sfml does not yet support loading the binary format.
Usage
- Create a new SFML project. See the SFML documentation or have a look at the example in this repository.
- Download the Spine Runtimes source using git (
git clone https://github.com/esotericsoftware/spine-runtimes) or download it as a zip - Add the sources from
spine-c/src/spineandspine-sfml/src/spineto your project - Add the folder
spine-c/includeto your header search path. Note that includes are specified as#inclue <spine/file.h>, so thespinedirectory cannot be omitted when copying the source files.
See the Spine Runtimes documentation on how to use the APIs or check out the Spine SFML example.
Example
The Spine SFML example works on Windows, Linux and Mac OS X.
Windows
- Install Visual Studio 2015 Community
- Install CMake via the Windows installer package.
- Download the Spine Runtimes repository using git (
git clone https://github.com/esotericsoftware/spine-runtimes) or download it as a zip - Run CMake GUI from the start menu
- Click
Browse Sourceand select the directoryspine-runtimes - Click
Browse Buildand select thespine-runtimes/spine-sfml/builddirectory. You can create thebuildfolder directly in the file dialog viaNew Folder. - Click
Configure. This will create a Visual Studio 2015 solution file calledspine.slninspine-runtimes/spine-sfml/buildand also download the SFML dependencies. - Open the
spine.slnfile in Visual Studio 2015 - Right click the
spine-sfmlproject in the solution explorer and selectSet as Startup Projectfrom the context menu - Right click the
spine-sfmlproject in the solution explorer and selectPropertiesfrom the context menu - Select
Debuggingin the left-hand list, then setWorking Directoryto${OutputDir} - Click
Local Windows Debuggerto run the example
The entire example code is contained in main.cpp
Linux
- Install the SFML dependencies, e.g. on Ubuntu/Debian via
sudo apt-get install -y libpthread-stubs0-dev libgl1-mesa-dev libx11-dev libxrandr-dev libfreetype6-dev libglew1.5-dev libjpeg8-dev libsndfile1-dev libopenal-dev libudev-dev libxcb-image0-dev libjpeg-dev libflac-dev - Install CMake, e.g. on Ubuntu/Debian via
sudo apt-get install -y cmake - Download the Spine Runtimes repository using git (
git clone https://github.com/esotericsoftware/spine-runtimes) or download it as a zip - Open a terminal, and
cdinto thespine-runtimes/spine-sfmlfolder - Type
mkdir build && cd build && cmake ../..to generate Make files - Type
maketo compile the example - Run the example by
cd spine-sfml-example && ./spine-sfml-example
Mac OS X
- Install Xcode
- Install Homebrew
- Open a terminal and install CMake via
brew install cmake - Download the Spine Runtimes repository using git (
git clone https://github.com/esotericsoftware/spine-runtimes) or download it as a zip - Open a terminal, and
cdinto thespine-runtimes/spine-sfmlfolder - Type
mkdir build && cd build && cmake -G Xcode ../..to generate an Xcode project calledspine.xcodeproj - Open the Xcode project in
spine-runtimes/spine-sfml/build/ - In Xcode, set the active scheme from
ALL_BUILDtospine-sfml-example - Click the
Runbutton or typeCMD+Rto run the example
Notes
- Atlas images should not use premultiplied alpha.