[GSoC 2020] Skeleton Tool

UPDATE: See code progress in this PR - https://github.com/synfig/synfig/pull/1485

Hey @KonstantinDmitriev ! I’m interested in Skeleton Tool for Synfig. Do you have any suggestions for this? Can you also tell me how and where bones are handled?

(I read the code for Spline Tool due to the similarities.)

Also, I’d like to share my draft proposals. Can you please review them? :smiley:

Hi! Sure, I will be happy to review the proposal. :slight_smile:

I suggest to look our video training course to see how bones are used. I will send you a link for free access via PM.

I have reviewed your proposal.

Here are my concerns about Week 1 and Week 2 in your plan:

Week 1 - Get more familiar with Synfig and understand the current code for skeleton

Week 2 - Make a plan on how to develop the new feature

Actually, we expect such things to be completed before coding period started.

According to GSoC timeline, we have Application Review period (April 1, 2020 - May 5, 2020) and Community Bonding period (May 5, 2020 - June 2, 2020) - that’s two months to get into the project, get familiar with code and make first prototype.

Also, in “Project Details” section I would like to see more details on how tool will actually work, more details about UX. I.e. "User choosing button on a toolbar, then he clicks (drags?) on workarea to create first bone, then he clicks (click+drag?) in other place to create a child bone… "

In this section it is good to answer questions like

  • How Tool Options panel will look like for Skeleton Tool? What options it will include?
  • By default last created bone is parent bone for next created one. How user can choose different bone to be parent bone for next created one?
  • If the tool will be able change child-parent relationships for already created bones? How? Will it be the same tool or separate one?

Hey! You must have mistaken me with someone else. :sweat_smile: I didn’t submit my proposal yet.

I’ll send to you by today evening at the latest.

Ah, sorry! I found proposal in GSoC’s dashboard and thought it is yours :laughing:
In any case, maybe you find my remarks useful. :wink:

1 Like

Yup… Thank you! :smiley:

Hi @DestinyGamer243! Apologies for delay with review. I have read your proposal and it looks good for me. I like how you described expected functionality of Skeleton Tool and UX. The only issue is that the document has different sections than we recommend in proposal template. I consider this is not a major issue, but it would be nice if you will fix it. :slight_smile:

1 Like

Okay thanks a lot! :smiley: I’ll change my proposal according to the template and let you know :smile:

1 Like

I’ve changed my proposal according to the template. Please give it a look and let me know what you think… :smiley:

Hey! As it is the last day for proposal submission, can you please give it a last review?

Hi! The proposal looks good now, so you can submit final. :slight_smile:

Yes! I submitted it! Thank you for your help! Hoping for a positive result! :smiley:


In case you don’t know, I’m Aa20475 on Github :sweat_smile: I’m trying to contribute as much as I can before April 20th. I already made a PR #1330 .

I’m currently working on issue #1215

Awesome! Thank you for reminder! :slight_smile:

1 Like

Just wanted you to know :sweat_smile: as my usernames are different. :sweat_smile:

1 Like

Yeah, thanks for letting me know. This is important for our final decision. :slight_smile:

1 Like

Hello everyone!

I’m Aditya Abhiram and I’ll be working on implementing the Skeleton tool for Synfig Studio for Google Summer of Code 2020! I’ll be mentored by @KonstantinDmitriev , @rodolforg and @ice0!

This will be the topic where I’ll be posting my weekly reports! :smiley:

1 Like

Here is my project idea:

  • Create and Transform Bones:
    ◦Single click would add a default bone with all the handles.
    ◦Mouse-Down and Drag will add bone between the points dragged.
    ◦The handles will have their usual functions for transforming thebones.

  • Set Parent-Child Relations:
    ◦I’d like to propose ​“Active bone”​ for this. This can be set by Double-Clicking on a bone. ​Active Bone​ can be differentiated by adding a red outline or a blue highlight.
    ◦Once an ​Active Bone​ is set, all the bones created later will be children to that bone.
    ◦For changing relations, we’ll add an option “Set as a child to current Active Bone​” in the context menu of the bone. The meaning is self-explanatory.
    ◦In the tool options, we add a list that shows all the bones and their parent-child relations in the skeleton layer. ​(if possible)


Please have a look at the idea!

Suggestions are welcomed! :smile:

I’d suggest you to check how other software do :slight_smile:

1 Like