Skip to content

Files

cpp

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-cpp.

Licensing

You are welcome to evaluate the Spine Runtimes and the examples we provide in this repository free of charge.

You can integrate the Spine Runtimes into your software free of charge, but users of your software must have their own Spine license. Please make your users aware of this requirement! This option is often chosen by those making development tools, such as an SDK, game toolkit, or software library.

In order to distribute your software containing the Spine Runtimes to others that don't have a Spine license, you need a Spine license at the time of integration. Then you can distribute your software containing the Spine Runtimes however you like, provided others don't modify it or use it to create new software. If others want to do that, they'll need their own Spine license.

For the official legal terms governing the Spine Runtimes, please read the Spine Runtimes License Agreement and Section 2 of the Spine Editor License Agreement.

Spine version

spine-sfml works with data exported from Spine 4.2.xx.

spine-sfml supports all Spine features except two color tinting.

Usage

  1. Create a new SFML project. See the SFML documentation or have a look at the example in this repository.
  2. Download the Spine Runtimes source using git (git clone https://github.com/esotericsoftware/spine-runtimes) or download it as a zip via the download button above.
  3. Add the sources from spine-cpp/spine-cpp/src/spine and spine-sfml/cpp/src/spine to your project
  4. Add the folder spine-cpp/spine-cpp/include 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.

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

  1. Install Visual Studio 2022 Community. Make sure you install support for C++, CMake as well as th Windows SDK for XP/7/8.
  2. Open Visual Studio and open the spine-sfml/cpp folder via the Open a local folder button
  3. Let CMake finish, then select spine-sfml-cpp-example.exe as the start-up project
  4. Start debugging to run the example

Linux

  1. Install the SFML dependencies, e.g. on Ubuntu/Debian via sudo apt install libsfml-dev
  2. Install CMake, e.g. on Ubuntu/Debian via sudo apt-get install -y cmake
  3. Download the Spine Runtimes repository using git (git clone https://github.com/esotericsoftware/spine-runtimes) or download it as a zip via the download button above.
  4. Open a terminal, and cd into the spine-runtimes/spine-sfml/cpp folder
  5. Type mkdir build && cd build && cmake ../.. to generate Make files
  6. Type make to compile the example
  7. Run the example via ./spine-sfml-cpp-example

Mac OS X

  1. Install Xcode
  2. Install Homebrew
  3. Open a terminal and install CMake via brew install cmake
  4. Download the Spine Runtimes repository using git (git clone https://github.com/esotericsoftware/spine-runtimes) or download it as a zip via the download button above.
  5. Open a terminal, and cd into the spine-runtimes/spine-sfml/cpp folder
  6. Type mkdir build && cd build && cmake -G Xcode .. to generate an Xcode project called spine-sfml.xcodeproj
  7. Type open spine-sfml.xcodeproj to open the Xcode project
  8. In Xcode, set the active scheme to spine-sfml-cpp-example
  9. Click the Run button or press CMD+R to run the example

Notes

  • Atlas images should not use premultiplied alpha.