spine-godot breaking change

September 26th, 2022

We released our spine-godot runtimes almost 2 months ago. Since then, we've further improved the runtime based on your feedback and bug reports. Eventually, one unfortunate issue cropped up: Godot plugins and modules may fight over a generic file extension like .json when trying to import it.

This leads to issues when spine-godot is combined with other plugins or modules, like Dialogic. When both spine-godot and Dialogic are loaded into the Godot editor, one of them will be chosen by Godot to import all .json files, preventing the other from importing files with that file extension.

Godot 4.0 has introduced JSON as resource files that helps any new plugins to co-exist happily. However, since we continue to support Godot 3.5 for the foreseeable future, we have to introduce a breaking change.

Starting today, spine-godot will no longer be able to import JSON skeleton files with the .json extension. Instead, JSON skeleton files must use the extension .spine-json. This change will apply if you download the latest pre-built Godot editor from us, or if you rebuild your local Godot editor from the latest spine-godot sources. This applies to both the 4.1 and 4.2-beta branches in the spine-runtimes repository.

If you have an existing Godot project using spine-godot and want to update to the latest version of spine-godot, we are here to help. Here's how you can do that without issues:

  1. Backup your existing project.
  2. Make sure you have the latest Python installed and can run it on the command line by adding its bin/ folder to your PATH environment variable (only needed on Windows).
  3. Download our Python script that will convert your Godot project from using .json skeleton files to .spine-json files.
  4. Run the script on the command line, providing it with the full path to your Godot project directory, e.g. python convert.py c:\myproject

The script will then:

  1. Rename all .json skeleton files to .spine-json and delete the .json.import files. The .import files will be recreated next time you open the project in Godot.
  2. Fix the paths to all external resources of type SpineSkeletonFileResource in all your project's .tscn and .tres files.

Once the script has converted your project, you can open it with the latest Godot editor built from the latest spine-godot sources.

Discuss this post on the Spine forum.

Flour Sack Rig - Spine Tips #4

September 21st, 2022

Welcome to a new Spine Tips video! This time we will learn how to rig a sack using techniques that you will find useful for any biped skeleton.

Animating a flour sack is a common task when learning 2D hand-drawn animation. It also serves as a great starting point for learning character animation. The sack is a simple rectangular shape so it's perfect to learn to pose and apply animation basics. If you can convey emotion with a simple sack, you will be able to do the same with a more complex character. This same hip-spine-shoulder setup can be used when building your other skeletons.

Follow along and create your own rig, then show off your animations! Please let us know on the Spine forum how you liked the video and what you’d like to see next.

Exploring spine-unity

August 29th, 2022

Let's explore using Spine with Unity! Our latest video explains many features in the spine-unity runtime to get you up and running quickly. We'll explore the example scenes in the Getting Started folder to learn the basics of how the Spine Runtimes work and what you can do with the spine-unity runtime.

This video doesn't show how to install the spine-unity runtime. For that, check out the spine-unity runtime documentation.

Did you find this video useful? Join the discussion of this post on the Spine forum!

spine-sdl Runtime released

August 8th, 2022


Engines like Unity, Godot, or Unreal are all the rage these days. But there is still room for simpler, more direct approaches. SDL has been a long time go-to for people who want to create tailor made solutions for their game. Our roots are also in game development libraries!

We are thus happy to announce the general availability of spine-sdl, our new Spine Runtime for SDL.

We've built spine-sdl as a simple reference implementation for people who want to integrate either spine-c or spine-cpp into their own game development frameworks and libraries. It can also come in handy for people who are directly building their game on top of SDL.

spine-sdl is intentionally kept simple and straight to the point, just like SDL itself. Have a look at the documentation and the simple examples.

Let us know when you think about spine-sdl on the Spine forum.