Home Technical Talk

Maya to MotionBuilder gone really bad

Kyle_butler
polycounter lvl 11
Offline / Send Message
Kyle_butler polycounter lvl 11
Hi, guys! I've just finished rigging my character. Since I'm using mocap data to animate it, I wanted to export it from Maya to MotionBuilder. I've tried both going to Maya>File>SendtoMotionBuilder and exporting it as a FBX file. In both cases, this is the complete and utter mess I find myself into:
Maya Scene
Inte1_zps4b2645c5.jpg

MotionBuilder Scene

inte2_zps71c20c57.jpg

inte3_zps9a3122e4.jpg

inte4_zpsb672ead2.jpg

The arms are flipped, the legs and head are tilted away from the rigg, the helmet disappeared, the blendshapes have stop responding.

Should I try to import the mocap directly into maya?Is it possible?

Replies

  • bejkon
    Options
    Offline / Send Message
    bejkon polygon
    So you made a custom rig? I don't think you can put a rig directly from maya into motionbuilder like that. The normal workflow would be to rig it with HumanIK if you intended to use mocap.

    It's totally possible to get your mocap directly into maya if the animation is skeletal data and retarget that on your HIK rig.

    I don't know if that was much help but thats what I got.
  • Kyle_butler
    Options
    Offline / Send Message
    Kyle_butler polycounter lvl 11
    Hi, bejkon! Thanks for you reply.
    I haven't even heard HumanIK untill you mentioned it. I had know idea it was the usual worflow.

    In fact, my rigging is custom made inside Maya.
    I'm totally lost now... Would you recommend starting from scratch in HumanIK?
    Is there any drawback from working with mocap data directly inside Maya, even with a custom made rig?
  • bejkon
    Options
    Offline / Send Message
    bejkon polygon
    If you open HumanIK window it seems like you actually can define a custom rig. I've never done it but it's worth a shot. Maybe theres some tutorial on youtube or something.

    Motionbuilder has some nice features but Maya has animation layers and a trax editor and thats all you need really. But if your data is .c3d (raw marker data) you have to clean it up in motionbuilder and use the actor solver to bake it down on a skeleton before you take it in to maya.

    Maya actually have some characters and mocap examples you can familiarize yourself with. Open up HumanIK and press HumanIK/MocapExamples which opens up the visor. Import a HIK character and then import a mocap example. Maybe that helps you how you gonna go forward with your project.
  • Mark Dygert
    Options
    Offline / Send Message
    Typically constraints, IK and blend shapes won't transfer, mostly what transfers is very simple bone position and rotations.

    What some people do is have a final resulting skeleton that is very simple, this is what the mesh gets bound to and these two things are keyed to your custom rig and get exported to a game, or motion builder.

    In order for motionbuilder to understand your rig, it has to be characterized, basically telling it which bones do what. HumanIK is pretty much motionbuilder stuffed inside of Maya so it will make that process a lot less painless.
  • Kyle_butler
    Options
    Offline / Send Message
    Kyle_butler polycounter lvl 11
    Thanks, bejkon and Mark Dygert.
    I'm not limited to c3d files, so that won't be an issue.
    I fear that my entire rig might be corrupted.
    I completed the characterization process and got all green feedback. But with the following warning messages:

    // Warning: Cycle on 'HIKState2SK1.LeftLegSz' may not evaluate as expected. (Use 'cycleCheck -e off' to disable this warning.)


    // Warning: Cycle on 'bn_r_wrist01.parentMatrix[0]' may not evaluate as expected. (Use 'cycleCheck -e off' to disable this warning.)

    Here is what I start with:
    ret_zps4fb7a206.jpg

    Here is what I end up with after retargeting (I used a Maya Mocap exemple file as source):
    ret2_zpsb99635af.jpg

    Should I dish my entire rig and start all over with HumanIK default skeleton? I'm running out of time... any quick and dirty suggeestions for rigging?
  • Kyle_butler
    Options
    Offline / Send Message
    Kyle_butler polycounter lvl 11
    Btw, I think it is worth mentioning that every time I reopen the file, my wrist's position returns to the default state:

    ret3_zpsb3f664ce.jpg
  • Kyle_butler
    Options
    Offline / Send Message
    Kyle_butler polycounter lvl 11
    Any suggestions?
  • bejkon
    Options
    Offline / Send Message
    bejkon polygon
    I have no idea why your rig does that. Maybe you have to bite the bullet and try to use the HIK rig.
  • Kyle_butler
    Options
    Offline / Send Message
    Kyle_butler polycounter lvl 11
    Yeah, I've been trying to rig it with HumanIk in the past couple of hours. Since my character is not on a T pose, I'm moving the skeleton's arm using the translate function to match them (if I'm not mistaken it is forbidden to rotate joints, isn't it?
    Sometimes I used to rotate using joint orient, but I'm avoiding even that for now).
    Then I'll bind it and move it back to the T pose.

    retarg_zpse7d6bd2c.jpg

    Btw, is it possible to create control curve to drive the fingers animation?
    My mocap doesn't include fingers animation, so I'm considering animating them with traditional keyframe animation, while the rest of the body is driven by the mocap data.
  • bejkon
    Options
    Offline / Send Message
    bejkon polygon
    Hey man, hows it going? Sorry for the late reply.

    Sure you rotate joints. When you translate joints try to translate them along the axis and rotate them in place. Keep the jointchains straight if poosible in the legs and arms. So if you bend the elbow you should only have to rotate it in one axis and it will rotate inline with the arm joint if you see what I mean.

    You get ctrls for the fingers so you can pose them. Use the yellow balls or the IK(the red cross at the tip or pick it in the character window)
  • Kyle_butler
    Options
    Offline / Send Message
    Kyle_butler polycounter lvl 11
    Thanks for the reply, bejkon! I'm trying to rotate in component mode only to re-orient them.
    Unfortunetely, a new problem has came up...
    I was about finishing the joint re-orienting of the HumanIK when I decided to do a mo cap test before binding/painting weights.
    Here is what i get: // Error: setAttr: The attribute 'Character1_Ctrl_HipsEffector.overrideEnabled' is locked or connected and cannot be modified.
  • Kyle_butler
    Options
    Offline / Send Message
    Kyle_butler polycounter lvl 11
    Nevermind. A friend just told me how to fix this: just remove the joints from the layer. This creates the lock error above.

    As I asked before, is it possible to create control curve to drive the fingers animation? My mocap doesn't include fingers animation, so I'm considering animating them with traditional keyframe animation, while the rest of the body is driven by the mocap data.
Sign In or Register to comment.