Results 1 to 14 of 14

Thread: How to turn my mech on heel?

  1. #1
    Registered User
    Join Date
    Jun 2013
    Location
    China
    Posts
    268

    How to turn my mech on heel?

    Hi everyone, I hope nobody will complain that I'm branching out from my original topic into this one:
    http://forums.newtek.com/showthread....doing-it-right

    The original topic is mostly for my experience with Genoma, and it's in the general tips and tricks section, so I've decided that more specific questions should go to this section of the forums, since this section is the one for character animation.

    A bit background. This is my second model ever and first rig attempted, so I'm very new to this.

    My idea is to create a mech that would behave like mechs from "Mechwarrior" series. Those mechs behave in a very different way from humanoid "characters". Meaning that they turn on the heel/foot. And also have "chicken legs". Which I suppose is the reason why I can't seem to find a straightforward answer in how to do this with Genoma (Maybe it's even Genoma's limitation).

    Here ate the current test model and scene:
    testrig.lwotestrig.lws

    So with this setup I have managed to add the last part which the mech should be turning on, the "sole" of the foot, as kind of appendage. It's able to rotate around itself which is half way there, but I need to make it possible to have two controls, one for each foot's "sole" and each one of it be the pivot point for horizontal rotation of the model. I have tried some different ways but nothing productive resulted from it, I tried attaching root to the ankles,soles, thighs... nothing. I tried connecting the last bone in reverse, that only made it disconnected from the rest of the rig. So I'm stuck here.

    Click image for larger version. 

Name:	Experiment.png 
Views:	158 
Size:	146.3 KB 
ID:	121979Click image for larger version. 

Name:	heelturn.png 
Views:	185 
Size:	69.6 KB 
ID:	121980
    Last edited by shenhua; 05-21-2014 at 11:19 PM.

  2. #2
    Easy solution:

    Move your mech's "FootCtrl" (yellow box) nulls to the center of the "Foot_Floor_ctrl" (yellow ring-shaped), such that the heel of the mech is in the very center of the ring. You should now be able to pivot your mech's heel from that point. Also, if you take a very close look at the genoma rig, there are tiny green circular controls that let you pivot from the toe.

    As for automatic toe pivoting with this heel setup, that is a bit more of a complicated affair without understanding pivot IK constraint systems and how to utilize custom parenting setups to get automated heel-to-toe action. Do note that IKBooster eliminates a lot of the complexity associated with achieving these kinds of results... I do consider it an animation system geared towards intermediate to advanced users, but it will give you maximum control over your rig without eliminating your ability to change things as needed whenever desired. If creating pivot constraints whenever, and wherever you want interests you, IKB is the way to go.

    EDIT: this video made by Kurt smith, demonstrates an advanced setup for leg IK that I consider quite robust and user friendly... the tutorial is a bit fast paced, but the results speak for themselves.
    Last edited by Ryan Roye; 05-22-2014 at 08:19 AM.
    Professional-level 3d training: Ryan's Lightwave Learning
    Plugin Developer: RR Tools for Lightwave

  3. #3
    On second thought... I think a visual answer would be better. Hope you find this helpful!

    Professional-level 3d training: Ryan's Lightwave Learning
    Plugin Developer: RR Tools for Lightwave

  4. #4
    Registered User
    Join Date
    Jun 2013
    Location
    China
    Posts
    268
    Thanks for the reply, Riker. Will check it out tomorrow and report back

  5. #5
    Registered User
    Join Date
    Jun 2013
    Location
    China
    Posts
    268
    Hi Riker, so I did check your video. Thanks for the advice but I think I wasn't clear enough about what I'm trying to achieve.

    It's not easy to find a good video to show what I need here, but here's a Behemot mech, turning in place, should give an idea of what I'm after (vid should start at 1:42)

    http://youtu.be/ZIk9qdxumPA?t=1m42s

    And later on you can see it clearer with other mechs, whenever they turn, they just stay on one foot and let the rest of the body turn around it.

    EDIT - OK! My mistake... I watched the video without voice first xD Will watch it with voice listening to what you said now and try to test it then report back... sorry for jumping the gun on replying

    Right... so now I've watched with all the commentary and I am grateful that you've explained the part about positioning the model and I like the thing you did there with the foot, very nice. Still, it doesn't really solve my problem. I mean, yes, I can for example position my model in a way that one foot is at the origin, being the pivot after creating genoma rig, then when I turn master control, it will rotate it around the foot center, but only when the foot is lying down, and also it won't make it rotate the whole model around the foot whenever it moves. What I need is something like the master controller, possibly added afterwards, that each has a pivot when the center of the foot is, so I can always grab that and rotate the whole thing around it. Also, even if I had stuck with the idea of putting one foot at the origin, making that the floor "target" (I think is the term here?) and rotating the master around it, then that is only one pivot for one foot, so then I'd need like two models, each used interchangeably each time I need to change the direction of the turn.

    Once again, thanks for all the help and advice.
    Last edited by shenhua; 05-22-2014 at 09:07 PM.

  6. #6


    Here's a simple common solution.
    Red null is there because LightWave doesn't allow you to choose rotation order.

    Cheers
    Attached Files Attached Files

  7. #7
    Registered User
    Join Date
    Jun 2013
    Location
    China
    Posts
    268
    Thanks probiner, I will study the scene and try to apply this to my model and see what it gives me.

  8. #8
    Registered User
    Join Date
    Jun 2013
    Location
    China
    Posts
    268
    Ok so after looking at Probiner's reply, I checked the tutorial from William about multiple pivot points. I THINK it's the same principle? Not sure how to really refine it but it's a start.

    What I like about this solution that it lets me keep that rig I created with Genoma, and the movement forward of the legs goes according to IK, then I move the master rig ctrl related to rightNULL each time I need to turn, and it seems to be bringing some results. I do wish though (maybe that's the part from Probiner's solution I didn't understand and need more explaining here?) that instead of moving the master rig ctrl in relation to the foot movement to place the rightNULL in the center of it, it could also stick to it. But it's kinda parenting sth that is the parent to also be a child of its own child... @[email protected] so I dunno. Anyway here's what I did, nothing really fancy but this way I could turn the mech around the null:

    Click image for larger version. 

Name:	Mltpivturn.png 
Views:	109 
Size:	85.8 KB 
ID:	121990

    On second thought... is this the sliding null someone suggested before? If I say use this null not to actually follow the foot, but every time I need to pivot around the right foot, I put the null at the right foot and pivot it, when I need to do it on the left leg, I just put the pivot null there. Is this the thing I think RebelHill mentioned?

    The thing with putting the pivot null to follow the foot here... I think it can be done with, was that an expression or some other tie with the channels of the bone movement to the channels of the position of the null? So that way they have the same values even though they aren't parented to each other? Now I need to remember how was that done...
    Last edited by shenhua; 05-23-2014 at 12:01 AM.

  9. #9
    Registered User
    Join Date
    Jun 2013
    Location
    China
    Posts
    268
    Here's where I'm at.

    Click image for larger version. 

Name:	Nulls.gif 
Views:	109 
Size:	233.6 KB 
ID:	121992

    testrigNULL_v001.lwstestrig.lwo

    Wish I could do it as in the old days where was making maps for Starcraft and there were tons of triggers for event on the map, they had their dependencies, you could make some "bypasses" or time some triggers to activate or deactivate a branch or selectively exclude one child from set of parents (parent triggers in this example)... why can't I have same kind of usability in LW? For example, a simple thing that would already solve the problem that at this point I am able to place one null at the point under the foot where I want to pivot it, but that's only when turning one way, say right, for turning left the pivot should be under the left leg, moving around the nulls and pivots from my experimentation just breaks everything, so a very clean solution would be say up to 20 frames the right null on the foot is the parent, afterwards (as in a switch or envelope with step) the left null takes over as parent. Seems like sth like that should be there? Yet I can't find it...

    EDIT:

    Getting desperate watching vids like this one:
    http://www.youtube.com/watch?v=DGsBmXfOnCY

    http://www.youtube.com/watch?v=GpVu__LQ_kI
    Last edited by shenhua; 05-23-2014 at 05:45 AM.

  10. #10
    Registered User
    Join Date
    Jun 2013
    Location
    China
    Posts
    268
    [thought I finally solved it but turns out I was wrong -_-'... mods please delete this post]
    Attached Thumbnails Attached Thumbnails Click image for larger version. 

Name:	double pivot.png 
Views:	91 
Size:	90.4 KB 
ID:	121996  

  11. #11
    Try IKBooster's bind motion... this can be performed as a command, or via bakespot ranges in the timeline (In IKB mode, I hold alt and left mouse drag the timeline). I know I'm sounding redundant but there's a lot of stuff that IKB does that greatly simplifies the rigging and animation workflow. The bind function essentially inversely transfers the world position of the target object and injects that into the topmost parent object. In the case of Genoma, it will always target the big green master null as its at the top of the heiarchy. Think of it as locking an item in place and shoving any motion it would have had up into the body. You can also use this to do a ton of other things... roll boxes around, make characters climb stairs and ladders, and it is the key element of relative motion loading as well.



    Also, check out my signature (IKBooster User Manual, 100% free) as I basically wrote it from scratch because the one provided by Lightwave devs were written at a time when no one, even the developers, knew how the system worked. There's also a free starter guide video that can get you up to speed on IKBooster's basic features. Plus, it was easier than repeatedly explaining how tools worked to people who keep asking me about it
    Last edited by Ryan Roye; 05-23-2014 at 07:45 AM.
    Professional-level 3d training: Ryan's Lightwave Learning
    Plugin Developer: RR Tools for Lightwave

  12. #12
    Registered User
    Join Date
    Jun 2013
    Location
    China
    Posts
    268
    Hi there Riker. First of let me show you what I figured out, I'm still struggling with this. Anyway here's the screen of my attempt to do it with nulls, I think it's the most I can think of myself and implement with all the stuff people suggested so far. The problem of this rig though is that when I turn right say 90 degrees... I can keep turning right, but if I want to go back and turn left... then literally I need to go back and turn the mech on the same leg I was turning right, all the degrees backward, till it reaches the exact contact position of the left turn null, and then I can switch to the left null to continue the turn. It's very clunky and actually might look cool at times, with a mech turning in such crazy manner... but ofc it's not a solution. Will check your reply now. Thanks again.

    Click image for larger version. 

Name:	3 nulls.png 
Views:	115 
Size:	78.2 KB 
ID:	122001

    So here with 3 nulls, one the "step 3" is responsible for driving the machine forward, while the two other nulls work for turning, ofc they need to be moved back, which they can't hence the need to once turn with "leg forward" then if I want to back I need to turn with "leg back". Not that natural, huh.

    OH and btw thanks for sharing this stuff related to IK booster. I know this is close to the proprietary thing you have developed so I understand that you can't really show everything, hence I'm double grateful for the tips.

    And yes I will be sure to check all the tutorials in manual. At this point I just need to get past this thing... and get some sleep xD because it's became my nemesis.
    Last edited by shenhua; 05-23-2014 at 08:12 AM.

  13. #13
    Registered User
    Join Date
    Jun 2013
    Location
    China
    Posts
    268

    It's ALIVE!!

    YAY! Finally! This is awesome, took just couple of clicks and I got the result I wanted. I'm really curious about IKBooster. Will surely read up on the manual there and keep it in my workflow.

    Thanks again Ryan/Riker! You're the man! Thousand internets for you bro!


  14. #14
    Quote Originally Posted by shenhua View Post
    Thanks again Ryan/Riker! You're the man! Thousand internets for you bro!
    Much welcome! IKBooster does have is quirks and you will run into headscratchers now and then, but feel free to ask me either via PM, or my personal e-mail at [email protected] if you run into any showstopping problems that you don't know how to overcome.

    Example: It frustrated me for a long time that IKBooster rigs would break when I used "load from scene" to inject rigs into new scenes, but loading the backgrounds to the characters instead of vice versa eliminates that problem entirely.

    I remember struggling a lot with some of IKBooster's nuances when I was first learning it and its unorthadox (but efficient) interface is strange to most users initially because it differs so radically from the rest of Lightwave. I want to stress that you don't need my commercial content to use IKBooster effectively; it is only a fast track to deeply understanding the toolset and getting access to workflows that are currently either extremely difficult, impractical, or downright impossible without IKB.

    Some quick notes about the bind function since you seem to have a nice handle on it!

    - Holding alt and left-clicking the dopetrack (upper part of the timeline at the bottom), you can lay what is called a "bakespot". Bakespots are primarily used in conjunction with the bind function... they can be used to bake bones in place, but if you're going to stick with a hybrid full-time IK/IKB setup like what you have now, put baking out of your mind for the time being. Part-time IK has a lot of advantages over full time IK, but I consider it a bit more for intermediate/advanced users so cross that bridge when you are ready to. Note that bakespots get saved when you save motions in IKBooster, and automatically bind when the motion is loaded.

    - Invisible keyframe selections are a general Lightwave problem (not just IKBooster). If you're getting a multi-key right click menu and you only right clicked on a single frame, click an empty space to the far left or far right of the timeline before performing any right click actions. I am hoping they fix this in later versions

    - Look at the keyframes of the big green master null, try to understand how the bind operation is functioning at a technical level and how it could be used to perform very complex actions *without* rigging. It is important to know that binding only places position keyframes on the topmost parent object inversely to the part of the rig being bound... it is difficult to explain, but easy once you understand it. If you end up needing to change your motion, it is as simple as deleting the keys and re-binding.

    Check out this box as an example of other usages of the bind function:



    - Keyframe management tools are among IKBooster's most powerful features. Take some time to experiment with them and they will make your life a lot easier.

    - The genoma pivot fixes I demonstrated above still apply and work in conjunction with bakespots. If you want to center the feet as the mech turns, adjust the goals like I demonstrated and it should fix things up nicely.
    Last edited by Ryan Roye; 05-23-2014 at 10:16 AM.
    Professional-level 3d training: Ryan's Lightwave Learning
    Plugin Developer: RR Tools for Lightwave

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •