Jamez0r

Hey guys, our project has a lot of characters that have a Frontside Skeleton and a Backside Skeleton, both of which are in the same Spine project.

We need the animations for the Frontside and Backside skeleton to match up perfectly timing-wise. Our workflow is usually to make all of the animations on the Frontside, test them out in-game to make sure they're good, and then create the equivalent animations for the Backside skeleton.

The issue we are running into is that we want to be able to see both skeletons (both enabled in Spine) so that we can scrub the dopesheet and make sure that they are matching up, but when both skeletons are enabled it makes it difficult to avoid accidentally keying things on the Frontside skeleton when we only want to affect the Backside one.

Two examples of where we would like to only affect the Backside skeleton but the frontside bones also get selected:
1) Using the "Key all of the shown timelines" button.
2) Selecting a column of keys by clicking on the key at the top of the dopesheet.

Does anyone have a suggestion on a way to somehow lockdown the dopesheet so that its only affecting a single skeleton, even if multiple skeletons are currently enabled?

Or any other tips for editing multiple skeletons?

Thanks for the help as always! :grinteeth:
Avatar
Jamez0r
  • Postovi: 324

Misaki

Hi, @Jamez0r

I have an experience creating animations of furniture and character sets using separated skeletons (e.g. An animation of a character getting into bed).
However, I didn't do anything special at that time. I just often used the lock button of the Dopesheet view for aligning the timing. When I wanted to select bones, I simply hid one of the skeletons that I did not want to select.

Honestly, I feel that your case would be better handled by using Skins instead of separated skeletons because the animations that you want to make are perfectly synchronized animations. The timing of the keys can be checked with the two examples you gave, but it can’t align the curves between skeletons in Spine 4.0 (though this may be improved in a future version), so I think separating a character to two skeletons is hard to detect if the curves are somehow misaligned between them. You can import the animation that is modified in the Frontside Skeleton to the Backside Skeleton, though.
Sorry I can't tell you any good advice for your workflow, but what makes you separate your character to two skeletons?
Avatar
Misaki

Misaki
  • Postovi: 329

Jamez0r

Misaki je napisao/la:Hi, @Jamez0r

I have an experience creating animations of furniture and character sets using separated skeletons (e.g. An animation of a character getting into bed).
However, I didn't do anything special at that time. I just often used the lock button of the Dopesheet view for aligning the timing. When I wanted to select bones, I simply hid one of the skeletons that I did not want to select.

Honestly, I feel that your case would be better handled by using Skins instead of separated skeletons because the animations that you want to make are perfectly synchronized animations. The timing of the keys can be checked with the two examples you gave, but it can’t align the curves between skeletons in Spine 4.0 (though this may be improved in a future version), so I think separating a character to two skeletons is hard to detect if the curves are somehow misaligned between them. You can import the animation that is modified in the Frontside Skeleton to the Backside Skeleton, though.
Sorry I can't tell you any good advice for your workflow, but what makes you separate your character to two skeletons?
Hey Misaki!

We use separate skeletons because the bone structure/positioning for the "frontside view" and the "backside view" are too different to share the same skeleton.



I also exaggerated a bit when I said "perfectly synchronized" animations - basically what we need is for specific keyframes of the front/back animations to match up timing-wise. Like if an animation was of the character jumping and then swinging a weapon, we need the frontside and backside animations to start jumping on the same frame, land back on the ground on the same frame, swing the weapon on the same frame, etc. So it isn't the actual value of the keys (position/rotation/curves/etc) that need to match, its just the timing of them.

So basically what would be nice is if we could see both skeletons, but only be "focusing" (making changes to) one of them, but be able to scrub the timeline so that we can see that the keyframe moments (starting to jump, landing on the ground, etc) line up on them.

Is there any way to do manipulate the dopesheet selection to do that? :think:

Thank you for the help :nerd:
Avatar
Jamez0r
  • Postovi: 324

Misaki

I see, it makes sense.

Honestly, I don’t have any special idea to set the focus on a skeleton. If I were you, I will just make some selection groups (Tools - Spine User Guide: Selection groups) and switch the bones’ selection to animate the character.

I guess you often use Lock and Refresh button on the Dopesheet view, so I recommend you to set keys for Lock Dopesheet:Refresh Dopesheet: in the hotkey.txt, if you have not set it yet.
hotkeys.jpg

I think it is better to select a specific bone on the Dopesheet after roughly selecting using the selection group as much as possible, because it is easy to make a wrong selection when selecting on the viewport.

This is just a tip to make the Dopesheet easier to see, but you might want to expand and place it to the maximum height. In that case, you can use the Timeline view to see the animation time like this:
using-timeline-view.png


Those are not magical solutions, but I hope they help you even just a little.
Nemaš dopuštenje za pregledavanje privit(a)ka dodan(og)ih postu.
Avatar
Misaki

Misaki
  • Postovi: 329

Jamez0r

Thanks for the suggestions Mikasi! :grinteeth:
Misaki je napisao/la:Honestly, I don’t have any special idea to set the focus on a skeleton. If I were you, I will just make some selection groups (Tools - Spine User Guide: Selection groups) and switch the bones’ selection to animate the character.

Definitely, we use selection groups extensively. And that actually brings up another topic which is that, when working with multiple skeletons in a single project, the 10 selection groups have to be split up amongst them. So for us working on 2 skeletons, we essentially are only getting 5 selection groups per skeleton, which really isn't enough for us unfortunately. We would LOVE to have some sort of Selection Group Profile system where we could have multiple Profiles of 10 Selection Groups, and switch between profiles. I know a couple other Animators that would also love having this. Is there an official place that I could put in a feature request? As far as my team and I are concerned, this would be the biggest workflow-gain / time-save feature that could be added with (probably) the least amount of effort, but that's just my opinion 8)
Misaki je napisao/la:I guess you often use Lock and Refresh button on the Dopesheet view, so I recommend you to set keys for Lock Dopesheet:Refresh Dopesheet: in the hotkey.txt, if you have not set it yet.
hotkeys.jpg

I think it is better to select a specific bone on the Dopesheet after roughly selecting using the selection group as much as possible, because it is easy to make a wrong selection when selecting on the viewport.
Great idea, that could definitely speed things up a bit. The combination of a Selection Group that has all of the bones of a single Skeleton selected, and then the hotkeys for Lock/Refresh would let us quickly be able to use the "Key all of the shown timelines" button and to drag/scale the "column of keys" using the key at the top of the dopesheet for that single Skeleton.
Misaki je napisao/la:This is just a tip to make the Dopesheet easier to see, but you might want to expand and place it to the maximum height. In that case, you can use the Timeline view to see the animation time like this:
using-timeline-view.png
Good suggestion, but unfortunately our characters are pretty complex, so the bones shown on the dopesheet are usually a huuuuge list :bigeye: haha

Avatar
Jamez0r
  • Postovi: 324

Misaki

I’m glad that you are considering my ideas :D
I know very complex skeletons have too huge list of timelines, but Filter of Dopesheet also can be set hotkeys so it might help you.
I know a couple other Animators that would also love having this. Is there an official place that I could put in a feature request?
Actually, there is an idea that adding Selections view on our GitHub:
Improve stored selections #409
https://github.com/EsotericSoftware/spine-editor/issues/409
If this idea comes true, I think the problem as you mentioned will be solved.

Also, I should have told you that there are these issues :
Select checkbox for skeletons #541
https://github.com/EsotericSoftware/spine-editor/issues/541

Skeleton locking #436
https://github.com/EsotericSoftware/spine-editor/issues/436

Those issues seem to be related to your workflow and you can add your comment there if you would like to.
Avatar
Misaki

Misaki
  • Postovi: 329

Jamez0r

Misaki je napisao/la:I’m glad that you are considering my ideas :D
I know very complex skeletons have too huge list of timelines, but Filter of Dopesheet also can be set hotkeys so it might help you.
I know a couple other Animators that would also love having this. Is there an official place that I could put in a feature request?
Actually, there is an idea that adding Selections view on our GitHub:
Improve stored selections #409
https://github.com/EsotericSoftware/spine-editor/issues/409
If this idea comes true, I think the problem as you mentioned will be solved.

Also, I should have told you that there are these issues :
Select checkbox for skeletons #541
https://github.com/EsotericSoftware/spine-editor/issues/541

Skeleton locking #436
https://github.com/EsotericSoftware/spine-editor/issues/436

Those issues seem to be related to your workflow and you can add your comment there if you would like to.
Sorry for the late reply - thanks a lot Misaki! I added comments to those first two. Those would be excellent to have!
Avatar
Jamez0r
  • Postovi: 324


Natrag na Editor