Announcement

Collapse
No announcement yet.

Armature Tutorial

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Armature Tutorial

    Crushing An Armature
    Methodical annihlation of armature creation by M.P. Guidry

    Preface
    This tutorial is going to be like firing a KSG with a 14 round capacity. I'm going to supply you with maximum shells and you are going to keep pulling the trigger (pressing buttons) til it's time to reload. We will repeat this process til we are done. Their are certain shells (keyboard shortcuts) that we will be firing a lot.

    SHELLS: ( NAME_I_WILL_USE: PRESS|HOLD+(KEY|MOUSE)|PRESS,PRESS /menu select/option (explanation)):
    All commands are finalized with LMB or ENTER

    CLEAR_ROLL: CNTRL+N /Clear Roll(Z-Axis up)
    TP_PANEL: N (transform properties panel)
    VP_PANEL: /view/view properties
    GRAB_(X,Y,Z): G,(X,Y,Z),CNTRL+MOUSE MOVE
    SCALE_WIDTH: ALT+S,MOUSE MOVE
    (DE)SELECT_ALL: A
    SD_MULTI: W /subdivide multi
    PARENT_KO: CNTRL+P /keep offset *ex1
    PARENT: CNTRL+P /connected *ex1
    CUR>SEL: SHIFT+S /cursor to selection
    SEL>CUR: SHIFT+S /selection to cursor
    EDIT: TAB (tab into edit mode)
    POSE: TAB (tab into pose mode)
    DUPLICATE: SHIFT+D
    COPY_TRANSFORM: (pose mode) CNTRL+ALT+C /copy location, CNTRL+ALT+C /copy rotation (yes, do all of that) *ex2
    FRONT|SIDE|TOP NUMPAD 1|3|7 (orthographic)
    IK: SHIFT+I /to active bone *ex2

    *ex1 - PARENT(_KO):child-parent
    select the child bone, shift+select the parent bone, perform the keyboard shortcuts


    *ex2 - COPY_TRANSFORM|IK:selected-active
    select the "selected" bone, shift+select the "active" bone, perform the keyboard shortcuts


    There are also menus that you will use constantly. Below is a list of what you are expected to do when I say any of the following:

    Armature Bones Panel F9
    CHILD_OF: bone name
    Change the name in the "child of" list to the one specified
    SEGMENTS: num
    Change the segments control to the number specified
    INpose mode) num
    set the in value to the specified amount
    OUTpose mode) num
    set the out value to the specified amount

    Transform Properties Panel (armature/transform properties | N)
    ROLL: num
    self explanatory
    NAME: some name
    type the given name in the Bone: text field.

    View Properties Panel (view/view properties)
    CLEAR CURSOR
    set the cursors x,y and z coordinates to 0
    CURSOR_(X,Y,Z): num
    set the designated property to the specified amount

    Armature Panel
    (UN)LAYER: num | num,num,num
    (de)select the specified layer(s). These are armature specific layers and do not correspond to the world layers
    SET_LAYER: - M /layer
    BBONE|STICK|ETC set the bones display type to this type

    Menu Bar
    TP_MEDIAN set the transformation point to median point
    TP_CURSOR set the transformation point to cursor

    There are a handful of shortcuts that I will throw out on-the-fly, with no explanation as to what they do. If you see something like the following, type each character and then press enter.

    RX90
    SX-1

    That should just about cover it. It is highly recommended that you perform the shortcuts exactly as I have defined them. For instance: NOT holding control while doing GRAB_(XYZ) will just make your job more complicated in the end. These shortcuts are the backbone of the entire tutorial. It is in your best interest to memorize everything I just wrote.


    1 Bone To Make Them All

    in object mode with nothing selected

    FRONT
    CLEAR CURSOR
    /Add/Armature

    spine:
    EDIT
    SELECT_ALL
    BBONE
    SCALE_WIDTH - really thin but selectable
    SZ2

    arm:
    DUPLICATE
    RY90 ENTER G and move the bone off to the right
    DESELECT_ALL
    SELECT the vertical bone

    leg:
    DUPLICATE
    SZ-1 ENTER G and move the bone off to the right and down



    SELECT the spine bone
    SD_MULTI:4

    SELECT the arm bone
    SD_MULTI:3

    SELECT the leg bone
    SD_MULTI:3

    start at the topmost bone of the spine and NAME in this order. head / neck / chest / spine / hip
    start at the leftest bone of the arm and NAME in this order. shoulder.L / bicep.L / forearm.L / hand.L
    start at the topmost bone of the leg and NAME in this order. thigh.L / shin.L / foot.L / toe.L

    SELECT neck
    SEGMENTS: 3

    SELECT spine
    SEGMENTS: 5

    !MAKE SURE!
    hip CHILD_OF [blank]/nothing
    spine CHILD_OF hip
    chest CHILD_OF spine
    neck CHILD_OF chest
    head CHILD_OF neck

    shoulder.L CHILD_OF [blank]/nothing
    bicep.L CHILD_OF shoulder.L
    forearm.L CHILD_OF bicep.L
    hand.L CHILD_OF forearm.L

    thigh.L CHILD_OF [blank]/nothing
    shin.L CHILD_OF thigh.L
    foot.L CHILD_OF shin.L
    toe.L CHILD_OF foot.L



    Early Control Rig

    Create Control Rig

    EDIT
    SELECT_ALL
    CLEAR_ROLL
    DUPLICATE
    SET_LAYER: 2
    LAYER: 2
    SELECT_ALL
    SCALE_WIDTH - noticeably bigger than the other rig

    Name everything

    start at the topmost bone of the spine and NAME in this order. con_head , con_neck , con_chest , con_spine , con_hip
    start at the leftest bone of the arm and NAME in this order. con_shoulder.L , con_bicep.L , con_forearm.L , con_hand.L
    start at the topmost bone of the leg and NAME in this order. con_thigh.L , con_shin.L , con_foot.L , con_toe.L

    Rewire some connections - hand and foot will be IK controllers so they can't be connected to the chain they are going to control. We connect the hand to the hip so dipping/moving the torso will force the hands to follow. However if you rotate a bone above the hip the hands will not follow but the shoulders still will. This is why we parent the shoulder to the chest. Wherever the chest goes the shoulders go, with offset.

    con_hand.L CHILD_OF con_hip
    con_foot.L CHILD_OF [blank]/nothing
    con_shoulder.L CHILD_OF con_chest



    Constrain Yourself

    At this point we have an inner and outer rig. The inner rig is our deform rig and the outer is our control rig. Let's mass-disconnect deformity for the entire control rig.

    POSE

    LAYER: 2
    SELECT_ALL
    SHIFT+W /deform

    quick adjustment. We want the forearm to act with falloff in a twist so we give the deform rig 5 segments but leave the control rig alone. Setting the in/out to zero forces the deform bone to only twist (never bend)

    SELECT forearm.L
    SEGMENTS: 5
    IN: 0
    OUT: 0

    Add transform constraints.

    LAYER: 1,2
    go to every bone and do this
    COPY_TRANSFORM:boneName(.L)-con_boneName(.L)



    POSE

    Add IK constraints

    IK:con_hand.L-con_forearm.L
    Constraints panel - ChainLen 2

    IK:con_foot.L-con_shin.L
    Constraints panel - ChainLen 2



    More Controls

    EDIT
    SELECT the exposed end of the hip or con_hip bone
    CUR>SEL

    Hip rocker
    SPACEBAR /add/bone
    GRAB_Z the end that is not on the cursor and shorten the bone
    SELECT the entire bone
    SCALE_WIDTH - wider than the control rig bones

    Knee:
    DUPLICATE
    FRONT
    G move bone in front of knee joint
    SIDE
    G move bone about a "foot" from the knee joint

    Elbow:
    DUPLICATE
    FRONT
    G move bone to elbow joint
    SIDE
    G move bone about a "foot" behind the elbow joint



    Rename

    NAME each to con_hip_rot, con_elbow.L, con_knee.L

    Rewire - We child the elbow to the hip controller so the elbow doesn't get lost in space as the rig moves away from it. The same goes for the knee and toe connection. The thigh is connected to con_hip_rot so we can rock the hips.

    hip_rot CHILD_OF [blank]/nothing
    con_elbow.L CHILD_OF con_hip
    con_knee.L CHILD_OF con_toe.L
    con_thigh.L CHILD_OF con_hip_rot

    Turn off deform

    SELECT con_hip_rot + con_elbow.L + con_knee.L
    SHIFT+W /deform

    Constraints

    We force con_hip_rot to follow around con_hip but only when con_hip changes location. This way, con_hip_rot can have full control over the rocking of the hips cause, the thighs are only influenced by the movement of con_hip_rot. However if con_hip changes location it will drag con_hip_rot with it and consequentially the thighs will follow. This is realistic, the thighs go where the hips go.

    POSE
    SELECT con_hip, SHIFT+SELECT hip_rot CNTRL+ALT+C /copy location

    IK:con_elbow.L-con_bicep.L
    Constraints panel - ChainLen 1

    IK:con_knee.L-con_thigh.L
    Constraints panel - ChainLen 1



    Finger Rig

    control bones:
    EDIT
    LAYER 2
    SELECT the exposed end of con_hand.L
    E, CNTRL+MOUSE MOVE - extrude the bone out til it is roughly as long as the hand and perfectly laying on the x-axis
    E, CNTRL+MOUSE MOVE - extrude a little nub perfectly laying on the x-axis
    SELECT both bones
    SHIFT+W /deform
    SCALE_WIDTH - small enough to fit in a finger but bigger then the deform rig
    In the order that you created the bones NAME them con_finger.L, con_fing.IK.L

    deform bones:
    LAYER 1
    SELECT the exposed end of hand.L
    E, CNTRL+MOUSE MOVE - extrude the bone out til it is exactly the same length as con_finger.L (you may need to turn on layer 2 for a second)
    SD_MULTI:2
    from the root of the finger to the tip NAME them fing1.L, fing2.L, fing3.L
    SELECT fing2.L and drag it upward just a hair (this will serve as a hint for our IK)

    getting a thumb out of all of that

    LAYER 1,2

    SELECT every finger related bone
    DUPLICATE
    Move it above the original finger
    RY-90
    Maybe adjust it once more so it isn't overlapping any other bones

    Now we have to get rid of a joint

    SELECT fing1.L.001
    X (delete it)
    SELECT the lowest end of con_finger.L.001
    CUR>SEL
    SELECT the lowest end of fing2.L.001
    SEL>CUR
    grab the only joint on the thumb deform rig and move it down(g,z) a bit. make sure it maintains a very slight bend though

    Starting from the base of the thumb to the tip on the deform rig, NAME the bones in this order thumb1.L, thumb2.L
    From base to tip on the control rig NAME the bones in this order con_thumb.L, con_thumb.IK.L

    SELECT all finger/thumb bones
    CLEAR_ROLL

    note: it would be smart to check the roll of each bone individually, even after performing CLEAR_ROLL. The roll for everything should be zero



    Adding constraints

    COPY_TRANSFORM:con_thumb.L-thumb1.L
    COPY_TRANSFORM:con_finger.L-fing1.L

    IK:con_thumb.IK.L-thumb2.L
    Constraints panel - ChainLen 2

    IK:con_finger.IK.L-fing2.L
    Constraints panel - ChainLen 3



    Finally we can copy the left to the right and auto configure names

    CLEAR_CURSOR
    TP_CURSOR
    SELECT all .L bones
    DUPLICATE
    SX-1
    TP_MEDIAN
    Make sure the entire right side of your armature is selected
    W /flip left-right names
    CLEAR_ROLL

    note: even though you just did CLEAR_ROLL the fingers/thumb on the right probably have a roll other than zero. You should check them individually. With the fingers this is happening because we have a bend in them, but this does not mean that the other bones remained at zero. You should look at your armature in wireframe mode to see if you notice any bones that don't seem perfectly orthographic and correct them.



    End Of Part 1

    In part 2 I will show you how to adjust this rig to match a model and give you a brief on how the controls work. Stay tuned.

    edit: I noticed some of my images are a little fubard. They still show you what I want you to see but they were pasted sloppily in my editor so, I will fix that later and upload some cleaner images.
    Last edited by MadGypsy; 03-27-2014, 03:18 AM.
    http://www.nextgenquake.com

  • #2
    I don't mean this to come across as a gift-horse-inspection kind of question, but why are you using that old thing for?

    Comment


    • #3
      I'm a hell of a lot older than Blender 2.49b and people still use me for all kinds of stuff. It's because I work... and so does blender 2.49b.

      Maybe if I made 3d stuff as an occupation I would be more inclined to use more up-to-date editors but the bottom line is, even blender 2.49b is far more powerful and versatile than anything I will ever need it for. I also know this version of blender inside-out. I've been using it for as long as it's been available.

      There is no reason why my tutorial couldn't be applied to other versions of blender.
      http://www.nextgenquake.com

      Comment


      • #4
        No problem, just wondering.

        This looks insanely usefull. I've never took the time to really learn rigging and this looks amazing. Thank you very much!

        Comment


        • #5
          This is the beta tutorial. I made a decision that I would post an OK tutorial with an OK rig here at quakeone and from that will be born an even more involved rig & tutorial that I will wrap in HTML and convert to PDF.

          The PDF is what you really want to read, and you can, as soon as I finish writing it.

          However, this tutorial already has all of the conceptual information that is necessary to build ThisRig 2.0. The only thing this tutorial is lacking conceptually is bone limits.

          PS. I sliced the ring finger of my left hand wide open today That really messes up my 5th, aug 5th, b7th (ex C9 032330) and 13ths. Why am I always stabbing and slicing my left hand open? Last time was the roughly 1 inch long, pointy and sharp business end of a very good five-in-one. That decided to embed it's entire self into the meat of my thumb on the palm of my hand. That didn't stop me from playing guitar though, this one will. No way around it. I couldn't imagine life if I cut one of my fingers off by accident, and the worse part is, I probably will. The odds are not in my favor.

          No problem, just wondering.
          I'm just grumpy lol. Today kinda sucked. to reanswer your question. To me, blender2.49b is like an old friend. We went through an entire alcoholism recovery thing together. I don't ditch my friends just because I have access to some new ones that wear better clothes and know 4 extra things. I do ditch my friends if their name starts with Adobe, though [cough FlashDevelopIsABetterFriend cough]
          Last edited by MadGypsy; 03-27-2014, 05:48 PM.
          http://www.nextgenquake.com

          Comment


          • #6
            Finger Mechanics
            An Overview Of Simple Finger Mechanics



            Preface

            This overview will explain the concepts behing the entire finger rig. If you didn't follow Part 1 of my Crushing an Armature tutorial then you will need to know the following:

            1)bone 1 is the ultimate parent of the finger bones
            2)bone 1 is constrained to the rotation and location of the control finger. This is why it is green, to signify that it has some transformation constraint on it.
            3)IK is a child of control finger
            4)IK is the IK controller for bone 3. Bone 3's yellowness signifies that it has an IK constraint on it.
            5)The IK chain is 3 in length (set on bone 3)

            Understanding All of That

            Let's start with some facts about parenting. Bone 1 is the immediate parent of bone 2. Wherever bone 1 goes bone 2 must follow, but bone 2 is the parent of bone 3 and bone 3 must follow. So, in short, moving a parent drags/rotates all children with it. Bone 1 is also the child of the hand bone (not labeled in image). This means that bone 1's location cannot change and therefore, it's only trick is rotation.

            That's important to consider because, it's movement is entirely dictated by control finger, and control finger can only rotate or scale. This is where the IK chain comes into play. The little nub at the end of control finger is an IK control bone. IK control bones can't be connected to the chain they will control but, they can still be connected to something. In this case, IK is the child of control_finger so, anywhere that any directly connected part of control finger goes, IK must follow. In this case we scale control finger but, control finger is locked to a hand (con_hand.L) so, scaling draws in the IK controller. Bone 3 is locked to the position of this controller on one end. When the IK moves, the tip of bone 3 gets drawn backwards and the entire rest of the finger is at the mercy of the IK.

            The beauty behind this rig is that you can hide everything but the control finger. To get the finger to bend you simply scale the controller. For any other manipulation you rotate the controller. In the left half of the image it is clear that the index finger is not only scaled but also rotated. The right half is a wider shot but, it's really a teaser for why to use a control rig. Look at all the bones that are invisible. The entire deform rig and half of the control one too.

            What you can't see in the picture (but I did cover it a bit in my tutorial) is that, the handful of bones you see have a certain parenting to them that allows you to move entire groups of bones at once and then move out further on the chain for fine adjustments. You can actually make this armature perfectly sit on the toilet by just dragging the hip bone back and evenish with the knees. A few more adjustments and you can bring that shit to life.

            Last edited by MadGypsy; 03-27-2014, 07:42 PM.
            http://www.nextgenquake.com

            Comment


            • #7
              handy.
              Some Game Thing

              Comment


              • #8











                Last edited by MadGypsy; 04-03-2014, 08:11 PM.
                http://www.nextgenquake.com

                Comment


                • #9
                  Dang, I wish there was more interest in this. That last tutorial took me some serious hours (2 entire days) to put together. It's actually a beta for the book I'm writing. I wanted to see just how hard it was going to be to do this.

                  It took 2 days to make 12 pics. I'll probably get a little faster as I go but I think It's gonna take me about a month to write this book, and that's a month from the time I actually finish The Armature From Hell (or Heaven - whichever means something more dramatic to you).

                  Really, my current rig is more than sufficient. It does an insane amount of stuff with very little effort but, it isn't The Armature From Hell yet so I want to work on it a bit more. In short, I am going to become the master of armatures in a super incredible short amount of time and then Imma write a book about it. Its going to look a lot like my last tutorial but, I will probably do some other more detailed and informative explaining outside of the images. I will also do some better preplanning on my images. I pretty much nailed everything but, images 4 through 10 do not need the front ortho. If I would have realized that in preplanning, I would have had a hell of a lot more room to put my annotations.

                  Like I said, the last tutorial was a beta. When I start nailing down a final product I assure you it will be considered down to the pixel.
                  http://www.nextgenquake.com

                  Comment


                  • #10
                    this thread might prove very usefull for me if i ever decide to try making a complete replacement monster-model and want to animate it

                    ill def bookmark it at so i can look at it when i ever get to making a complete monster-model
                    .
                    are you curious about what all there is out there in terms of HD content for quake?
                    > then make sure to check out my 'definitive' HD replacement content thread! <
                    everything that is out there for quake and both mission-packs, compiled into one massive thread

                    Comment


                    • #11
                      Totally excellent!

                      This is going to come in handy sometime in the next couple weeks when I get to modeling a main character. Thanks man!

                      EDIT: I appreciate your plain language. I hate reading tutorials where the writer packs in a bunch of mulit-syllable jargon I'm not familiar with yet.
                      'Replacement Player Models' Project

                      Comment


                      • #12
                        This is going to come in handy sometime in the next couple weeks when I get to modeling a main character. Thanks man!
                        Side A: Yeah that's exactly why I wrote it, cause I wanted it to be useful.

                        Side B: Silly man, you aren't going to need to make an armature for your models. Even if I just gave you what I already have it would be way more than sufficient. [{mumbling} "I'm building this bad ass rig and this fool wants to read tutorials. Just use my rig and save yourself weeks of headaches, ya' nutty nut-ball."] capiche'?

                        edit: If you decide to tackle a non humanoid character (the dog?, vore?) send me your model and let me rig it. I will be more than happy to prove my skills go beyond one shape of armature. Build it in whatever blender you want. All of them are free and the program hasn't really changed at all in over a decade. Sure, it has a few extra tricks but all the panels are still available and the keyboard shortcut list is practically identical. In other words there is no learning curve on any blender for me. Use whatever one you like, I can adapt.

                        Fact: I'm not building a game but, I am building a rig. My rig is completely useless if someone else does not use it for their project. Ash: {Throws Poke-ball} "Dutch, I choose you. Attack with dedicated game modder strike". It would also be awesome if I did so good that GB wanted to use it for his game.

                        Really, I have read/watched a shit load of armature tutorials and I can say quite plainly that my work is better. I don't know why everyone is building the exact same thing and for some reason they also refuse to really get into constraints but, Imma tell you now my rig makes those tut rigs look pretty damn sad in comparison.

                        It seems to me that the people that are making these tuts don't really know how to make an armature. They are just parroting some other tutorial and refuse to take that extra step towards true illumination of the possibilities. If someone knows of some bad-ass rig tutorial that you feel makes my boast inaccurate, please post it. I will either agree with you and upgrade my knowledge or point out every reason why it is exactly what I said.
                        Last edited by MadGypsy; 04-05-2014, 07:21 AM.
                        http://www.nextgenquake.com

                        Comment


                        • #13
                          @Side B

                          Dude it is great to hear you say that. I would appreciate it immensely to use your rig. I'm don't like to ask for help/extra work out of people, but if you're offering, than that would be great.

                          @Send me models for rigging

                          I will be making several monsters with non-humanoid shape. Some humanoids will have weird/funny appendages (like a zombie with a gaping mouth for a stomach that opens/closes). Inspiration picture from the remake of The Thing (my model won't be this complex):



                          I will definitely send you these for rigging if you'd like. I'm using Blender 2.7 at the moment, but besides some interface changes, I see little to no difference from 2.6 or 2.4-something or whatever that I used a long time ago.

                          And yes, based on what I've seen for some tuts, you are the pioneer of documenting this skill so far.

                          Thanks buddy, you 'da man.

                          Ash: {Throws Poke-ball} "Dutch, I choose you. Attack with dedicated game modder strike".
                          Lmfao
                          'Replacement Player Models' Project

                          Comment


                          • #14
                            I told you I was going to help you with your mod. I already knew you weren't going to stay vanilla so, I started thinking about things you'll need that I want to work on. That is pretty much where this whole armature thing started... not 100% but maybe 80%, the other 20% being that I dont feel like programming right now so I want to mess with 3D stuff.

                            You can use anything I ever make and if you don't ask to, I'll simply beat you over the head with it and call you a nutty nut ball
                            http://www.nextgenquake.com

                            Comment


                            • #15
                              I told you I was going to help you with your mod. I already knew you weren't going to stay vanilla so, I started thinking about things you'll need that I want to work on.
                              Haha you had a better idea of what i wanted to do than i did.

                              Ok awesome man, i appreciate it! When i get player physics coded imma work on a new ranger model. I'll send it to you when i'm done.

                              I'm still gonna check out this rigging though with your tut when i find time.
                              'Replacement Player Models' Project

                              Comment

                              Working...
                              X