-
Notifications
You must be signed in to change notification settings - Fork 912
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implement spine extension #5927
Conversation
…on, action to spine object
…f incorrect spine files used
Changes
I used this project to test the capabilities: |
|
||
private: | ||
double scale; | ||
double opacity; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I guess the opacity property could be removed. Especially because the transparency doesn't render correctly. The object parts are blending into each other which make them less transparent.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I went ahead and removed the opacity property too, but in its own commit so it's easy to create a revert commit.
@D8H can we remove it when it is the case? |
Properties can never be removed for compatibility reason. This is why in case there is a doubt, it's better not to add them. |
Extensions/Spine/JsExtension.js
Outdated
// TODO Remove before the release. | ||
object | ||
.addExpressionAndConditionAndAction( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'll actually remove the old actions before the merge.
I removed the old actions. Please keep your branch to update your projects from the previous commit if you need to. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, thank you for this extension, it looks really cool!
Hey, @4ian, I have added new Spine demo to replace this abomination. New issue is here - GDevelopApp/GDevelop-examples#620 I'm planning on maintaining this project in the future, to test and apply new features for Spine object. Not sure if I followed all best practices, game became larger than anticipated. If someone can check project for mistakes, I'm willing to fix or completely redo weak parts. Online version https://gd.games/lousymolars/calcopus |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let's go!
And this is finally merged! I'm stocked to see this available for the next GDevelop release which should be ready in a few days :) Many thanks @f0nar and @LousyMolars for your work here, including the various follow ups and examples.
This looks awesome!
We're more than happy to have you continue improving it and maintaining it - the more we have contributors making real world usage of the various GDevelop extensions, the better we ensure they are maintained and up to date. Thanks again, that's one of the biggest feature we got from new contributors recently 👏 |
Great to see Spine implemented in GDevelop, thank you @f0nar for your work. Do you have any info on how to use it? because when I tried to use it with default export options in Spine I get an error stating the spine file doesn't find the name of the Atlas. I've tried different things, like renaming the .atlas to .txt and other settings but with no luck. Thanks! |
@Onnevan are you working from desktop version? Spine functionality is available there only |
Hey. Can you maybe share your export file or error in details? Spine 4.0 or 4.1 should work. Here are export settings that worked for me: We didn't test if extension works with "essential" version, only "pro", maybe that could be a reason. |
I will try again @LousyMolars and @f0nar , but I'm on desktop (Win) and have the pro version, so we can rule that out. The error is this: I've tried with diferent files, all of them Spine examples, not my own. Also, I have Spine lisenced |
Could you attach here the files you are trying to load? |
@f0nar of course: |
I'm on Spine 4.1.24 professional and GDevelop 5.3.191, Windows 11 |
Everything is fine for me. I am able to load spine by selecting vine-pro.json file and then play it in preview I see that it is called vine-pro.json in archive but you have selected vine.json on screenshot. Is there any difference? |
@f0nar Oh, that's because I thought maybe the dash in the name was the problem (which I know has no sense) but I was just trying things. I can confirm the same error with vine-pro. It's very strange but I guess is just something on my side, I'll try whatever I can think of, like different files, directories and software versions. I'll do a screen record too |
@f0nar nevermind, I closed everything, started a project from scratch and everything works fine! thanks for the help, don't know what could be happening. is there any doc on how to use it?. Thank you for the great work! edit: I got tha hang of it, I was lost because I thought every behaviour related to Spine would be under a Spine component but I realized the normal animation behaviours work with it. |
Implementation of 5775 issue
I took responsibility to introduce spine to GDevelop. This PR implements base features such as animations playing and switching, time scaling and auto update.
From known improvement and TODOs I want to add skin support and update spine object configuration panel with autofilling of atlas and image files paths. But let's take our time with this, because there are already quite a lot of changes here.
I am interested in this functionality so I will be grateful for assistance and comments.