Home Technical Talk

Breast rigging

CheapAlert
polycounter lvl 18
Offline / Send Message
CheapAlert polycounter lvl 18
Say if you rigged such a character like this, how would you go about boning the breasts for animation as well as the straps?

A simple bone for each going from the neck didn't do well frown.gif

(fyi this model is entirely on lower.md3 heh, and yes an sdk is available for the curious)

Replies

  • Rick Stirling
    Offline / Send Message
    Rick Stirling polycounter lvl 18
    Various ways.

    Two bones from the upper spine bone, pointing out. You can write a physics system to bounce, or you could create two dummy helpers at the tip of each bone (around the nips).

    Attach the helpers to the spine too.

    Make the bones 'Look At' the helpers.

    Apply a physics system to the helpers, run your animation. The animation will cause the helpers to bounce via physics, and the bones will follow the helper. Then bake these rotations as keyframes.
  • Ryno
    Offline / Send Message
    Ryno polycounter lvl 18
    Spring controller on a box linked to the spine in that area? We did some female models that way at work.
  • CheapAlert
    Offline / Send Message
    CheapAlert polycounter lvl 18
    But what if you can't do spring controllers or physics systems and have to do it the old fashioned way?
  • SkullboX
    Offline / Send Message
    SkullboX polycounter lvl 18
    One properly placed joint in each breast is usually enough, unelss you want insane amounts of secondary animation. Then just hand key any motion you want, after completing all primairy motion. Especially for game sequences this hand key process in a ~1 second loop hardly takes any time, and you still retain full control.

    If you want multiple bones like Rick suggest, just wire them to a single controller that aplifies rotation for each succeeding joint.

    I personally would never go all TD on the secondary animation on breasts anyway, even for 'narrative' animation which I'm working on right now.
  • Eric Chadwick
    Yeah, especially since you usually have to make it loop. Physics controllers don't loop very well.
  • ChaosEidolon
    Offline / Send Message
    ChaosEidolon polycounter lvl 17
    omg...5 serious replies and no word play on "how would you go about boning the breasts"

    what are these boards coming to...
  • Rick Stirling
    Offline / Send Message
    Rick Stirling polycounter lvl 18
    Oops, I meant 2 bones = 1 for each breast, not 2 bones per breast. That's be overkill.

    And yeah, physics hate to loop. We just use a simply dynamic motion within the game engine to control it. The physics is useful for testing deformation within max and getting the skin sorted.
  • Richard Kain
    Offline / Send Message
    Richard Kain polycounter lvl 18
    This is CheapAlert, so we can just assume he's using Blender. In which case, your best bet is going to be using relative vertex keys, and assign them to react to shifts in the root bone of your rig. I'm pretty confident that this is possible in the latest version of Blender.

    Of course, your final application for the model will dictate whether or not you can use this method. Some game engines don't support vertex animation. If you are attempting to do it with bones, I'd suggest parenting the breast bones to one of the top-spine bones, but not having them attached directly to it. (you can parent bones in Blender without extruding them) Another option might be to set the breast bones as a separate bone rig, and parent it to one of the spine bones. I've never actually tried to parent two separate bone rigs to each other, but I'm pretty sure it can be done.
  • SkullboX
    Offline / Send Message
    SkullboX polycounter lvl 18
    Vertex animation seems a bit expensive for something as easy to animate with a bone such as the breast. Especially considering half the vertexes of game models are usually in the beasts anyway, that's a lot of vertex data. smile.gif

    Rick: ay yeah I actually thought you might have meant that, although comically large breast can sometimes benefit from overkill secndary motion. I recently rigged up a pair of very modestly sized breasts with two bones and it didn't make any difference. It's prerendered stuff so I figured why not and wired both joints to one control object but it didn't add anything. Now I'm animating a grandma with large saggy beasts, and even that works great with a single bone.

    Realtime physics for secondary motion is definitely the best way to go for in games, especially since it usually even obscures the awful blending a bit. Hopefully soon all animation in games will be dynamic, save perhaps for reference walkcycles and fancy attacks a computer cannot simply calculate...
  • CheapAlert
    Offline / Send Message
    CheapAlert polycounter lvl 18
    [ QUOTE ]
    Vertex animation seems a bit expensive for something as easy to animate with a bone such as the breast. Especially considering half the vertexes of game models are usually in the beasts anyway, that's a lot of vertex data. smile.gif

    [/ QUOTE ]
    Well it's still using md3, a vertex morph'd format, and nothing new has changed (nor will it change) in model formats and animation systems so no dynamic boobiness

    [ QUOTE ]
    In which case, your best bet is going to be using relative vertex keys, and assign them to react to shifts in the root bone of your rig. I'm pretty confident that this is possible in the latest version of Blender.

    [/ QUOTE ]
    How would I go about doing that? I'm using 2.43.
  • Richard Kain
    Offline / Send Message
    Richard Kain polycounter lvl 18
    I did a little research. You can add an action constraint to specific bones in Blender. You have to go into Pose mode, select the bone you want to affect the action in question, and then create the action constraint in the object panel. I know that relative vertex animations can be stored as actions, so you just have to create an ipo animation for your relative vertex keys, and create an action encompassing those ipos. Then you just assign those actions to the action constraint linked to the bone of your choice.

    This method is usually used for much simpler applications. The most common is for flexing muscles. You can use this method to make relative vertex keys "flex" a part of your model whenever a certain bone rotates a certain distance. I imagine it could also be used to animate a little "bounce" when the characters' chest shifts.
Sign In or Register to comment.