Home Technical Talk

3DS Max Bone Based Facial Rig Problem

polycounter lvl 11
Offline / Send Message
autokey polycounter lvl 11
Hello everyone,

I am working on rigging and skinning a face in 3DS Max, and have used Paul Neale's fourth DVD on facial rigging as a guideline. The rig itself works perfectly, all the bones stretch just as they should. And when I add the facial bones to the skin modifier and add some weight to them, it all seems fine in the base pose. I can grab the helper objects and rotate them, and it all works perfectly. However, as soon as I start to move the helper objects (scaling the bones), the vertices go crazy. They fly off in one direction or another, at a speed exponentially greater than I am moving the helper. For example, I will move one of the lip helpers down a very small amount, and the vertices weighted to it will shoot up over his head.

I have tried everything I can think of, including:
- Resetting the vertices in the skin modifier
- Making sure Normalize is turned on in the skin modifier
- Resetting the XForm of the mesh and re-skinning
- Rebuilding the rig and re-skinning
- Unlinking each bone so none are linked together
- Using both the 'scale' and 'squash' settings under Scale in the Bone Tools menu
- Tried the same rigging technique on a newly created sphere, and got the same results
- No bones have been mirrored

I am really stumped, so any help would be greatly appreciated!

Replies

  • Adij
    Offline / Send Message
    Adij polycounter lvl 8
    thats weird... marge to new scene?
  • SlyRipper
    Offline / Send Message
    SlyRipper polycounter lvl 6
    Try very very very low values? maybe it's kinda bugged and u have to use micro values to make it work properly? Have you tried creating a new file for the sphere, where you tested this again (with restarted max)? Also do u have another version of max which you can test? Maybe it's a bug from the version you're using?
  • autokey
    Offline / Send Message
    autokey polycounter lvl 11
    Thanks for the replies, guys!

    @Adij: I have not tried that yet, but I will.

    @SlyRipper: I tried the low values, still no luck. I have tried the sphere thing, but it was in the same file, so I will try a new scene. And while switching versions might be impossible at this point, I will certainly see if it happens in others (I'm currently running 2012)
  • poopipe
    Offline / Send Message
    poopipe grand marshal polycounter
    did you freeze transforms on your bones before setting hierarchy/controllers up?
  • monster
    Offline / Send Message
    monster polycounter
    Without looking at the Max file, it would be hard to pin down.

    Maybe, try checking "Back Transform Vertices" in the Skin Modifier.
  • autokey
    Offline / Send Message
    autokey polycounter lvl 11
    Thanks for all the responses, everyone!

    I think I've figured out the problem. CrySkin (plugin skin modifier for CryEngine) does not play nicely with stretchy bones. When I put a normal skin modifier on, it works perfectly.
  • e-freak
    wait wait wait - are you saying you are scaling the bones?

    "However, as soon as I start to move the helper objects (scaling the bones), the vertices go crazy."

    CrySkin is Max' Skin modifier but with the limitations of a real-time engine already applied for better preview (Dual Quaternion Skinning and No Scaling allowed). If you are planning to bring this into CryEngine (or Unreal or Unity) - do not scale the bones at any cost!

    In general, scaling rigs is considered the worst possible thing you could do in most pipelines (even when working in movies, its still frowned upon, as it will likely break other systems).

    If you want scaling behavior, its usually better to create a sub-rig with a couple of helper bones that get translated accordingly, as you scale a controller outside the rig.
Sign In or Register to comment.