Bone in Character toolbox

craouettecraouette Posts: 113


Bones in the Character toolbox are drawn with the length along the x axis. Is that correct?
Is there a way to set it to another axis? It is possible to switch axis by changing the referencePose xfo, but it will also complicate animation as an equivalent switch will be needed.



  • EricTEricT Administrator, Moderator, Fabric Employee Posts: 304 admin

    Hey @craouette,

    Yes the Bone shape is drawn down the X axis. There is no way to switch it with the current implementation.

    There are 2 things you can do:

    1. You could implement your own shape and use that instead. You can have a look at the following file for the PolygonMesh.drawBone method.


      Use that method as a template and just switch the code to use the length argument down a different axis.

    2. Apply a rotation offset to the supplied Xfo that will aim the bone down the desired axis.

    Eric Thivierge
    Kraken Developer
    Kraken Rigging Framework

  • craouettecraouette Posts: 113

    Point 2 is not really an option... doing so will force me to do the same on the animation channels, no?

    I see a third one... ;)

    • Update the Bone.kl with a mainAxisNum integer and update the draw method accordingly and send them to you...
      will you update the Ext if I do so?

    In the the post
    @Helge told:

    the character side of things is currently not very strong inside of Canvas, however we are planning to extend the functionality soon.

    Is there any news on this?

  • EricTEricT Administrator, Moderator, Fabric Employee Posts: 304 admin

    For point 2, no you wouldn't have to edit the anim channel, you could create copy of the Xfo with the rotation applied, then call the drawBone() method with that new Xfo. I think we'll need to have a look at this change as it may have impacts in other tools and areas and may frustrate users that are using say, the FBXCharacter and they want their bones to have Z down the length but it may not support that and will force X down the length.

    I've already logged an issue to add a method to be able for users to specify the main axis on the drawBone() method:
    FE-6713 - drawBone method should allow user to specify the length axis.

    We're working on Kraken every day and new features and capabilities are coming with it. Additional work on the core character libraries still needs to happen but the work in Kraken isn't completely divergent from that. Work will be done at some point this year on integrating the RiggingToolbox into Kraken and provided deformers and more advanced features there after.

    Eric Thivierge
    Kraken Developer
    Kraken Rigging Framework

  • craouettecraouette Posts: 113
    edited June 2016

    Here what I have done... only 2 file modified and very small modifications.
    PolygonMeshPrimitives is from Geometry, Bones from Characters....
    I have repeated the flags values with a slightly different name to not introduce a dependence on Character in Geometry.

Sign In or Register to comment.