Yes, they won't be compatible. You can follow the changes in the 4.2-beta branch. It's not ready for use in projects yet, but ready enough to play around with it and give feedback. V1 will try to cover all the basics as well as possible. V2 will the focus on things like AnimationPlayer support, possibly spatial support (currently it's only for canvas), and more.

Related Discussions
...

Sounds great! Keep me updated! I check in once in a while. I'm open to switching everything over once there is a stable official release, but I still love hearing about progress. Thank you for your dedication to this project.

4 giorni dopo

I'll likely not post individual progress updates here. For that, have a look at the commits in the 4.2-beta branch. All commits related to Godot are prefixed with [godot]: https://github.com/EsotericSoftware/spine-runtimes/commits/4.2-beta. Alternatively, you can follow my ramblings on Twitter, but we aware that I do not post exclusively about Spine stuff 🙂

6 giorni dopo

Hey. I'm also following progress on Spine runtime for Godot. I just want to report that I can't build Web version. Emscripten throws some errors and warnings when compiling Spine runtime.

If it helps, Rayxuln's spine-module-for-godot (linked above) compiles for web with no issues (on my end, at least). I'll be using that while the official support spends some more time in the oven.

If there's one thing I really hope the official Godot support adds, it's an easier way to attach arbitrary Godot objects to Spine attachment slots. I mean, it works, I can use it, but it's really clumsy and unintuitive. (And undocumented, IIRC - I only figured out how it worked by looking at the code itself!)

@tasco exports to non-desktop platforms, that's a big item on my todo list. I want to make sure everything else is good first.

@Ryusui that's actually what I spent most of my time on 🙂 They way attaching other nodes is planned to work is like like this:

  1. In the inspector for SpineSprite, you have a dedicated section where you can specify which node should be rendered before/after which slot. It's not using the standard array or dictionary inspector UI, but a custom UI with drop downs for slots and node paths.
  2. In code, you will have setters to add/remove nodes from slots.

Actually, I just gave the WASM build a quick try, fixed the compilation error, build the export tempalte, and tada:

16 giorni dopo

I noticed the spine-godot directory on github is gone. Is there still a way to try spine in godot?

It works almost perfectly. I am eagerly waiting for the "Export Templates".

Can you elaborate on the "almost" part?

  • In AnimationPlayer Node I click on "Add Track > Property Track", choose the SpineAnimationTrack, but i can't see the properties "animation_name" or "loop" (like used in example 08-animation-player)
  • When I click on "Search Help" (Reference documentation in Script Tab), Godot crashes.
  • The External Editor (Visual Studio code with godot-tools extension) cannot connect to the GDScript Language Server.

I build on my Mac with "./setup.sh 3.4".

Cheers! Issues 2 and 3 are likely due to the fact, that the build generated by setup.bat/.sh is a minimal editor buildmwith many modules disabled. I do this so iteratiom times on recompiles while working on the code are minimal. When we publish editor builds, they'll have all the default modules that come with Godot. You can fix this locally if you remove all lines from custom.py and recompile the engine/editor via setup.sh/.bat (build.sh/.bat will not work, as setup.sh/.bat configures the build).

Issue 1 is a documentation problem 🙂 You don't want to create a track the SpineAnimatiomTrack in the animatiom editor, but the AnimationPlayer child of the track. Sadly, Godot's AnimationPlayer and editor don't allow custom track types, so this is a workaround. As a bonus you see the animation durations and names tho, which is MUCH better then only seeing a little diamond for a key.

Mario ha scritto

Cheers! Issues 2 and 3 are likely due to the fact, that the build generated by setup.bat/.sh is a minimal editor buildmwith many modules disabled. I do this so iteratiom times on recompiles while working on the code are minimal. When we publish editor builds, they'll have all the default modules that come with Godot. You can fix this locally if you remove all lines from custom.py and recompile the engine/editor via setup.sh/.bat (build.sh/.bat will not work, as setup.sh/.bat configures the build).

Issue 3 "GDScript Language Server" solved! :yes:

Issue 2 "Search Help" NOT solved. Godot still crashes :no:


Mario ha scritto

Issue 1 is a documentation problem 🙂 You don't want to create a track the SpineAnimatiomTrack in the animatiom editor, but the AnimationPlayer child of the track. Sadly, Godot's AnimationPlayer and editor don't allow custom track types, so this is a workaround. As a bonus you see the animation durations and names tho, which is MUCH better then only seeing a little diamond for a key.

Unfortunately, your explanation did not help me. Perhaps I have expressed myself unclearly.

How did you manage the following? animation_name and loop do not appear in the selection. I tried to enter the entries manually, but of course it doesn't work.

Finally, in another AnimationPlayer, I want to put together the individual animations:

Look what objects are keyed in your second screenshot. It's the AnimationPlayers beneath the SpineAnimationTracks, not the SpineAnimationTracks.

Mario ha scritto

Look what objects are keyed in your second screenshot. It's the AnimationPlayers beneath the SpineAnimationTracks, not the SpineAnimationTracks.

Yabadabadoooh. I know what the problem is.
When I add an AnimationPlayer for a SpineAnimationTrack, the display in the Animation Editor remains empty:

I have to close the scene and open it again.
I discovered this by accident this morning. After I opened the project, all the entries I wanted were there.

Is this a Godot problem?

deezaster ha scritto

I have to close the scene and open it again.

Is this a Godot problem?

Not sure, but it is worth noting that Rayxuln's module has a similar problem where certain changes don't appear unless you close and reopen the scene.

Depends on the Godot version. 3.4 has a bunch such issues (unrelated to the module). Imtried to work around some of them. 4.0 is a bit better in that regard, but not quite stable.

@deezaster, I should get to writing docs next week, so I can better illustrate how this is supposed to work.

9 giorni dopo

Issue 1 - I am unable to run exported scene in Web browser with spine-godot runtime on Godot 3.4.4-stable (I used ./setup.sh 3.4.4-stable to create custom godot binary), all the spine related cpp files are not found by godot in browsers console.

Issue -2 Not able to build with current godot master branch

Update : silly mistake, forgot to build export template, html5 working fine with 3.4.4. thnks