Search Unity

  1. Unity 2019.2 is now released.
    Dismiss Notice

FINAL IK - Full Body IK, Aim, Look At, FABRIK, CCD IK... [1.0 RELEASED]

Discussion in 'Assets and Asset Store' started by Partel-Lang, Jan 15, 2014.

  1. Gruguir

    Gruguir

    Joined:
    Nov 30, 2010
    Posts:
    316
    Thank you for your advice, i'm afraid to annoy you with my questions but i'm looking for a way to stop vrik's locomotion from animating the lower body(/feet ?) at a given time, so the biped ik/grounder and lower body animations could completely take over, while player rigidbody's position is still moving according to the headset position ? If not possible could this be a future feature ?
     
  2. Partel-Lang

    Partel-Lang

    Joined:
    Jan 2, 2013
    Posts:
    1,937
    Hi!
    Just set locomotion weight to 0.
     
  3. Gruguir

    Gruguir

    Joined:
    Nov 30, 2010
    Posts:
    316
    But i double checked your VRIK scene example, if the locomotion weight is set to zero then the avatar feet remains stationary (and so the applied rigidbody) ? I was asking for a way to keep the full avatar translating while lower body isn't animated by the solver.
     
  4. Gruguir

    Gruguir

    Joined:
    Nov 30, 2010
    Posts:
    316
    What i was trying to say is that the transform position don't update anymore when locomotion is set to zero, and that i would like VRIK to keep changing the transform position when locomotion weight is disabled, maybe as an option. I hope it makes sense.
     
  5. Partel-Lang

    Partel-Lang

    Joined:
    Jan 2, 2013
    Posts:
    1,937
    So you'd need the root to follow the head without moving the feet like a ghost?

    Code (CSharp):
    1. void LateUpdate() {
    2. Vector3 d = ik.solver.spine.headTarget.position - ik.references.root.position;
    3. d.y = 0f;
    4. float mag = d.magnitude;
    5.  
    6. if (mag > maxHeadDistance) {
    7. ik.references.root.position += d.normalized * (mag - maxHeadDistance);
    8. }
    9.  
    10. }
     
    lauraaa likes this.
  6. Gruguir

    Gruguir

    Joined:
    Nov 30, 2010
    Posts:
    316
    That's exactly what i needed, thank you !
     
  7. AndyNeoman

    AndyNeoman

    Joined:
    Sep 28, 2014
    Posts:
    865
    Hi all, I've just seen this advertised on the unity sales and wondered whether it would be a fit for my project.

    I am currently looking at animating animals, mainly quadrapeds with some bipeds. Wildlife setting, hunting, eating, packs etc...

    If I expect there to be 20-40 animals in an area on occasion doing procedural things, walking,hunting, sleeping, eating etc do you think this would be a better/plausible solution.
     
  8. virror

    virror

    Joined:
    Feb 3, 2012
    Posts:
    2,961
    I want to block an arm with a collider (sword parry), whats the simplest way of doing this?
    I know i have made this work sometime in the distant past, but cant get it to work again : D
     
  9. Partel-Lang

    Partel-Lang

    Joined:
    Jan 2, 2013
    Posts:
    1,937
    Hi,
    Doing all that with animation is still an easier solution, although you might want to use IK for stuff like foot placement correction and other real-time adjustments. Here's an example.

    Hey, have you seen the "Motion Absorb" demo? Technically it could be used without a prop as well.

    Best,
    Pärtel
     
    AndyNeoman likes this.
  10. AndyNeoman

    AndyNeoman

    Joined:
    Sep 28, 2014
    Posts:
    865
    Thanks for the reply - it was that video that got my attention :). Its looks incredible. I need a climbing system for playable character can final ik help with that? (third person)

    Regards,

    Andy
     
  11. Partel-Lang

    Partel-Lang

    Joined:
    Jan 2, 2013
    Posts:
    1,937
    There is no climbing system included, it depends so much on the complexity of the environment that you have in your game, if you have just standard blocks, markers or fully organic environment, so I can not make a climbing system that works everywhere. But basically yes, IK can help your character climb with more accuracy.
     
  12. virror

    virror

    Joined:
    Feb 3, 2012
    Posts:
    2,961
    Ok, will have a look at that demo, thanx!
    Edit: This was exactly the demo i was looking for, perfect!
     
    Last edited: Nov 22, 2016
  13. Ascensi

    Ascensi

    Joined:
    Sep 7, 2013
    Posts:
    573
    @Partel-Lang Using your VRIK with Vive I'm wondering if I walked up to a helicopter then inside it would the legs automatically lift up inside? I was looking for a way to bypass the need for animating the character from the trigger of opening the door.. if I could attach some sort of targets were the legs would naturally position themselves correctly as climbing in VR. I'm also integrating the Virtuix Omni SDK, they released it very recently.

    I've recently setup my character using steps from the following video:



    In VRIK references area I assumed that I had to add all the bones to make everything work together but my character's arms are twisted and they don't line up with the Vive Controllers. I'm also using the asset Vive Grip I set up the Vive Grip hands and is aligned to the controllers. Are there any critical steps before the video that i might be missing? Also if I crouch the waist stretches, the top half doesn't follow.
     
    Last edited: Nov 24, 2016
  14. virror

    virror

    Joined:
    Feb 3, 2012
    Posts:
    2,961
    That demo works fine, but i would like to have the hitting object to stop directly when it hits an object.
    Been fiddling around with the options but did not really manage to make it work in a good way : /
    Edit: Works decently, but the elbow keeps moving until it almost hits the chin of the character, how do i tweak that?
     
    Last edited: Nov 22, 2016
  15. Cdngater

    Cdngater

    Joined:
    May 29, 2014
    Posts:
    58
    Hi, I bought FinalIK for VRIK, to use with my HTC Vive, liking it so far, except for the character seams to shuffle instead of walking, but that maybe a setting or two.

    Anyway, the reason I am posting is I am not sure how to do something. I did ask on the VR Forum, but got no response, so I guess nobody has done what I am trying to figure out, since I am using VRIK I figured someone here may know.

    Simply put, I am trying to get my vive headset to work with different character sizes. For instance, if I use a standard human with VRIK, everything works as expected, but if I use a smaller character like a gnome, then VRIK will streach the neck to match my HMD height thus the gnome looks like a giraffe.

    I guess the other way to think of it, if I have a human set to my height of 6', then someone else uses the vive and they are 5'6, the character crouches or if they are taller, then you get the neck stretch effect.

    Having a brain wave as I write this, it's like I need to apply a calculation to the vive inputs, something like (default player height / character height) * HMD height value = New HMD height value. Does that make sense? Not sure how to tie it into VRIK though.

    Please don't say examine example abc, or read chapter D of such and such. Sometimes I need to be hit on the head with a 2x4 for me to understand, and this is one of those times.

    Any ideas how to go about doing it?

    Thanks
    CndGater
     
  16. Lacvapps13

    Lacvapps13

    Joined:
    Oct 18, 2016
    Posts:
    6
    Hello, I found the best way to adjust for player height is to scale the camera rig.
    If you are using VRTK you need to modify the code to adjust the Simple Pointer after you scale your rig this PR is doing just that https://github.com/thestonefox/VRTK/pull/473

    here is the Code I am using to scale

    Code (csharp):
    1.  
    2.     public void adjustPlayerHeight() {
    3.         StartCoroutine(calculateHeight());
    4.     }
    5.  
    6.     public float height() {
    7.         return head.position.y - objectManager.cameraRig.transform.position.y;
    8.     }
    9.  
    10.     bool AlmostEquals(double double1, double double2, double precision) {
    11.         return (Math.Abs(double1 - double2) <= precision);
    12.     }
    13.  
    14.     IEnumerator calculateHeight() {
    15.         Transform player = objectManager.cameraRig;
    16.         while (!AlmostEquals(height() + heightOffset, playerHeight, 0.01)) {
    17.             //Transform player = objectManager.currentPlayerCharacter.transform;
    18.             float y = playerHeight > height() + heightOffset ? player.localScale.y - 0.01f : player.localScale.y + 0.01f;
    19.             playerHeight = (objectManager.headPosition.position.y - objectManager.cameraRig.position.y);
    20.             player.localScale = new Vector3(y, y, y);
    21.             yield return new WaitForEndOfFrame();
    22.         }
    23.         //StartCoroutine(calculateWidth());
    24.         //Swap to vrik animator
    25.         //anim.runtimeAnimatorController = Resources.Load<RuntimeAnimatorController>("Animators/Humanoid VRIK");
    26.         head = anim.GetBoneTransform(HumanBodyBones.Head);
    27.  
    28.         vrik = GetComponent<VRIK>();
    29.         vrik.AutoDetectReferences();
    30.         vrik.solver.Reset();
    31.         yield break;
    32.     }
    33.  
    34.  
     
    Partel-Lang likes this.
  17. Cdngater

    Cdngater

    Joined:
    May 29, 2014
    Posts:
    58
    Thanks, that the sledgehammer I needed, I'll examine this closer tomorrow, but wanted to say thanks tonight!
     
  18. AltaVR

    AltaVR

    Joined:
    Oct 16, 2013
    Posts:
    8
    Hi everyone,

    Is it possible to have a custom IK chain that still has bend goals? I'm trying to create a VR rig that takes the clavicle into account so it would have 4 bones in each arm (clavicle, shoulder, elbow and hand) but I still want to be able to control the bend direction of the elbow.

    Also is there some neat way to control a bones roll (Rotation about its long axis) without affecting its children? Ideally I'd like to be in control of how much the forearm rotates with the hand to avoid excessive pinching on the wrist.

    Thanks for your help!!!
     
  19. Partel-Lang

    Partel-Lang

    Joined:
    Jan 2, 2013
    Posts:
    1,937
    Hi,
    If you grab this patch, you'll be able to attach your character to a "platform" that lerps it to the helicopter seat. Then use the leg targets to put the feet on the pedals.

    About the arms, it depends on the bone orientations of your character. You probably just have to rotate the hand targets that are parented to the hand anchors.

    Hi,
    Try to also absorb the motion of the shoulder effector so it would not move that close to the stopped hand.

    Hi, thanks for the purchase!
    I'll be working making locomotion better for roomscale, right now it is designed for shuffling, as it was developed in Dead and Buried in which there is not much walking about.

    About the scale, you really only have 2 options.
    One is simply scaling your character to the player size, the other is moving the root of your anchors down. If the arms are too short, you can scale down their positions relative to the HMD, but that might give you problems elsewhere with accuracy. You could also scale the arms by multiplying the localPositions of the forearm and hand bones in LateUpdate.
    But basically, any way you approach this, there is nothing better than having the scale and proportions of the avatar as close as possible to the player.

    Hi, You could use LimbIK and set its bend modifier to Goal. If you want to solve 4 bones, there is a trick with using 2 LimbIKs. First uses the shoulder, forearm, hand. The second uses the upper arm, forearm and hand. Set the weight of the first to 0.5 and the second to 1.

    About bone roll, there is a tool included for that, check out the TwistRelaxer component. Here's a demo with it set up.

    Cheers,
    Pärtel
     
  20. relacon

    relacon

    Joined:
    May 8, 2013
    Posts:
    165
    been wanting to buy this for months but still working on own character controller and scripts but when I saw this on sale
    along with 4 other assets I had to buy. This is a one of a kind asset.
     
    Partel-Lang likes this.
  21. dwaldrum

    dwaldrum

    Joined:
    Jun 20, 2015
    Posts:
    48
    I have a question about Final IK in regards to the grounding. Is it possible to switch between biped grounding and quadriped grounding on the same character? For example, a normal character that can go from a standard walk to a crawl on both hands and feet and use grounding on all four limbs. I would be using the Full Body IK in this example.
     
  22. ksam2

    ksam2

    Joined:
    Apr 28, 2012
    Posts:
    1,001
    Hi, please look at below pic why it's not accepted? (CameraController script)
     

    Attached Files:

    • ee2e.jpg
      ee2e.jpg
      File size:
      18.7 KB
      Views:
      386
  23. Shokhov

    Shokhov

    Joined:
    Nov 28, 2016
    Posts:
    6
    i I also purchased Final IK thought to use it for my VR game for HTC Vive.

    I spend this weekend trying to adopt this set of script to my character but after all I think it's working completely wrong from the character point of view.
    Right now it use character position and tries to guess arms and head positions based on its targets.
    But in the reality we have quite opposite situation. We already know the position and rotation of arms and head and we need to guess the other body parts positions.(maybe based on history/gravity/constraints)

    We always know where is the Eye (not a Head!!!) is located and we can determine the head position correctly.
    Next we know the hand position and we can try to get shoulders positions based on these 3 points. (hands and arms).

    The character in my game can teleport, fly with Jetpack and walking on different surface.
    So, I tried VRIK - but It can't teleport player correct. The charactrer is moving very strange with it.
    Any grounder script doesn't work with it - so legs is always stay flat.
    Other problem is with character arms length. If it's not scaled a little bit - than controller aren't loopks like an arms.
    So, when you holding a gun in a hand and move controller forward - the actual position of the gun doesn't match your controller position and rotation. It's a big problem for FPS VR game.

    Tried to use FBBIK, but also didn't get good results with it.

    Most of demos(except VR ones) looks great and I thought I can use it simple in my game, but in reality it looks really bad right now.

    Not sure what to do next :(
     
  24. Unityraptor81

    Unityraptor81

    Joined:
    Nov 28, 2016
    Posts:
    17
    Hi @Partel-Lang

    Just bought FinalIK for a VR Game and I'm currently using VRIK (with the vive setup shown in the video).

    I have a little question :
    When you position the eye camera position "inside" the head (like at the end of the Vive setup video), the body position is perfect but the camera renders the head mesh.

    I've tried to move the camera slightly in front of the head with extra small clipping distance. this way, the camera view is perfect but the slight forward offset create a non natural body position.

    As my character doesn't have a separate mesh for the head, i can't "un-render" the head. Is there a way to compensate the forward offset throught code ?

    Thank you

    Jay
     
  25. Partel-Lang

    Partel-Lang

    Joined:
    Jan 2, 2013
    Posts:
    1,937
    Hey, I've heard it has been done again. Just blend the weight of one in and the other out to switch.

    Hi,
    does using InControl work in a new empty script?

    Hi and thanks for the purchase,

    About the eye, it is fixed to the head, so if you move your HMD anchor to where the avatar's eyes are, then parent a copy of your head bone to it and use it as the head target.

    About teleportation, there is a solution for it already, just not published yet. Please import this package and take a look at the demo inside.

    There is no GrounderVRIK yet, working on it. In the meanwhile, Set up 2 LimbIK components for the legs and use them with GrounderIK. You'll have to make sure those LimbIK components update after VRIK though which they don't by default. It can be done by disabling the IK components and updating their solvers manually in LateUpdate by ik.solver.Update();

    Character arms can be stretched by multiplying the localPositions if the forearm and hand bones in LateUpdate. any value greater than 1 will stretch arms longer, VRIK will adapt to that, but there is no automatic arm stretching yet.

    Anyway, if none of that helps and you still are not happy with the results, just PM your invoice number and I'll refund your purchase.

    Hey, there's no magic solution there, but just try adjusting the Spine settings, see if any of them improve the pose.

    Best,
    Pärtel
     
    Unityraptor81 and ksam2 like this.
  26. ksam2

    ksam2

    Joined:
    Apr 28, 2012
    Posts:
    1,001
    Yes it works with other scripts. I just can't find out why it doesn't work with camera controller script.
     
  27. Partel-Lang

    Partel-Lang

    Joined:
    Jan 2, 2013
    Posts:
    1,937
    Probably because my scripts are under Plugins and InControl is not?
     
    ksam2 likes this.
  28. Shokhov

    Shokhov

    Joined:
    Nov 28, 2016
    Posts:
    6
    That was the first problem I also discover. I solved it next way:
    - Create empty game object "EyePos" and place it under Head bone
    - Move it to the position between eyes. (on the top of the nose)
    - Create headTarget object (without parent) and set it as target for IK Head script.
    - On Update set the headTarget position in next Way:
    Code (CSharp):
    1. void Update () {
    2.         characterHead.rotation = viveHead.rotation;
    3.         offSet = characterHead.position - characterEye.position;
    4.         headTarget.position = viveHead.position + offSet;
    5.         headTarget.rotation = viveHead.rotation;
    6.     }
    It's just a quick hack to detect right head position of head.
     
  29. ksam2

    ksam2

    Joined:
    Apr 28, 2012
    Posts:
    1,001
    Exactly, thank you.
     
  30. Shokhov

    Shokhov

    Joined:
    Nov 28, 2016
    Posts:
    6
    Not sure I understand you. The eye usually a child of Head bone. Not sure what do you mean with "HMD anchor". Could you write an simple example? I solved it a little bit other way. (see my comments above)

    There are no demo inside. Just 3 scripts ) I updated it, but seems like nothing changed. I feel I have to say that I'm teleporting somehow to this script ))

    Thanks. Will try and write about results.

    I'm not sure that stratching the arms is a good solution instead of moving shoulders or body a little bit closer to it.
    I'll play more with this and maybe I'll have some solution for this.

    The package looks awesome for some other tasks in my game(like IK for enemy grounding etc...), so I'll try to adopt it anyway.
     
  31. Shokhov

    Shokhov

    Joined:
    Nov 28, 2016
    Posts:
    6
    Teleportation and flying is working now with next code:
    Code (CSharp):
    1.     public Transform vivePlatform;
    2.     private VRIK vrik;
    3.     private Vector3 oldPos;
    4.     private Quaternion oldRot;
    5.  
    6.     void Start()
    7.     {
    8.         vrik = GameObject.FindObjectOfType<RootMotion.FinalIK.VRIK>();
    9.         oldPos = vivePlatform.position;
    10.         oldRot = vivePlatform.rotation;
    11.     }
    12.  
    13.     void Update () {
    14.         IKSolverVR solver = (IKSolverVR)vrik.GetIKSolver();
    15.         solver.AddPlatformMotion(vivePlatform.position - oldPos, Quaternion.Inverse(oldRot)* vivePlatform.rotation, vivePlatform.position);
    16.         oldPos = vivePlatform.position;
    17.         oldRot = vivePlatform.rotation;
    18.     }
    (It wasn't easy to fill deltaRotation...)
     
    uwustudio likes this.
  32. ksam2

    ksam2

    Joined:
    Apr 28, 2012
    Posts:
    1,001
    Because of a shaking problem I set my Rigbody Interpolate to "None" can this cause any issue for Final Ik?

    It was on Interpolate by default now I changed it to "None"
     
  33. SamPav

    SamPav

    Joined:
    May 24, 2015
    Posts:
    13
    Hi,

    I bought the FinalIK few days ago and I just want to say thanks for the perfect plugin. I use it for VR, and it looks awesome. Thanks a lot!
     
    Last edited: Nov 28, 2016
    Partel-Lang likes this.
  34. Shokhov

    Shokhov

    Joined:
    Nov 28, 2016
    Posts:
    6
    So, I applied Grounder script (but I didn't do any changes in the code. Just configure a 2 Limb and a Grounder IK)
    The result is a little bit strange:

    As you can see when grounder is active it pull the body down. On the video above you can see the sphere = target position for head. So when real player move up - the character body is going down a little bit.
    Is there any way I can Lock the character head position to Vive Hmd position?

    At the end this model is looks ugly and maybe I'll search for other one which has more realistic movements.
     
    Last edited: Nov 29, 2016
  35. Unityraptor81

    Unityraptor81

    Joined:
    Nov 28, 2016
    Posts:
    17
    Hi @Shokhov ,

    I've tried your solution. The offset operation seems ok It's ok for the position part but for the rotation script lines, the head rotation is totally upside down.

    Could you please check my screenshot. The nearest flyingSword is the HeadTarget; The other one is the ViveEye position. Swords Handles point the look direction.
    So theses lines are OK :
    offSet = characterHead.position - characterEye.position;
    headTarget.position = viveHead.position + offSet;
    headTarget.rotation = viveHead.rotation;

    But for this one characterHead.rotation = viveHead.rotation; It's like the HMD rotation is not on the same axis as the head

    Any Idea ?

    Clipboard01.jpg
     
  36. Unityraptor81

    Unityraptor81

    Joined:
    Nov 28, 2016
    Posts:
    17

    I think i've figured it out... My character must have been built with the Z-axis as vertical instead of Y-axis. that's why everything is messed up. I don't know if i can transform this
     
  37. Shokhov

    Shokhov

    Joined:
    Nov 28, 2016
    Posts:
    6
    I'm also wait answer from @Partel-Lang about this. Seems like he know some simple design for it.
     
  38. Fletcher-Studios

    Fletcher-Studios

    Joined:
    Sep 25, 2014
    Posts:
    5
    Is there an issue with using an animator controller in the animator component with VRIK? If I try and add one, my character mesh moves down about 2 feet.
     
  39. AltaVR

    AltaVR

    Joined:
    Oct 16, 2013
    Posts:
    8
    Thanks for the help. The 2 LimbIKs are working great and the twist relaxer is also doing wonders for the pinching.

    Ive noticed that LimbIK does not apply rotation limits, would the best way for me to achieve this by having a LimbIK manager that forces both my LimbIK solvers to update in LateUpdate and then go through the bones and apply each rotation limit? or is there a more elegant solution?
     
  40. Arganth

    Arganth

    Joined:
    Jul 31, 2015
    Posts:
    280
    Considering purchasing final ik/puppetmaster. (using TPC from opsive and saw both integrations)

    I am mostly interested in nice (aka brutal :D) hit reactions (maybe some ragdoll stuff... :) )

    seeing that both assets would allow this I wonder what is the easier/stable/better one?
    (later i might get both but I wonder with which asset to start and also considering that fik is out of beta)

    In regards to puppetmaster, is there a demo/video/images of:
    - Joint breaking, blowing up puppets piece by piece.

    correct me i am wrong: for this to work one would have to have modeled the individual pieces (arms,legs?)

    currently my tendency goes to puppetmaster :) (or both)

    just bought final ik, probably later puppetmaster :) this stuff is just too good to not have :D
     
    Last edited: Dec 1, 2016
  41. AndersMalmgren

    AndersMalmgren

    Joined:
    Aug 31, 2014
    Posts:
    4,934
    Hi,

    We're having a problem with the FBBIK solver in some circumstances, and we haven't been able to figure out what could be causing this.

    Essentially, the problem is a Quaternion.LookRotation that has an input vector of 0, at line 294 in FBBIKHeadEffector:

    Quaternion chestRotationSolved = Quaternion.LookRotation(transform.position - leftShoulderPos, rightShoulderPos - leftShoulderPos);

    We realize we probably set some incorrect value or similar, but it would be great if you knew under what circumstances this could occur?

    We tried setting all inputs to 0 (Head, LeftHand, RightHand) but it doesn't produce the error. The error seems to be continuous, it doesn't ever recover.
     
  42. Partel-Lang

    Partel-Lang

    Joined:
    Jan 2, 2013
    Posts:
    1,937
    Hey, sorry for the missing demo, please try this package, also has a script for the deltaPosition/Rotation which you managed to figure out already.

    Hey,
    Can't think of anything that would cause a problem there..

    Hey, about the grounder, the only thing that would not move the head would be to set Lower Pelvis Weight to 0 in the Grounder, but that also means the character won't be able to step down any slopes or stairs properly, the foot would just not reach without lowering the character. You could use grounder.solver.pelvis.heightOffset to move your VR rig up/down to compensate perhaps.

    Hey,

    headTarget.rotation should match the rotation of the head bone, not the viveHead. Then parent headTarget to viveHead. All targets in FIK match the bone orientations of the character.

    Hey, I have not seen that, could you send me that animator controller with the animation and the character if its not a humanoid?

    Hey,
    LimbIK does not work with rotation limits, why exactly would you need to use them for the legs anyway? There are bend goals in LimbIK, have you tried that?

    Hey, thanks for the purchase!

    In the latest version of PuppetMaster, there is a demo scene about shooting bones off a skeleton character.
    The demo is called "Removing Muscles" (just noticed a bug with it, so please also import this patch).
    Here's a video.

    Hi,
    The only possibility I see for this to happen I think would be if the character had it's upper arm bones exactly at the same position as the head... Could you send me that character so I could try to reproduce this?
    Have you tried using VRIK instead of FBBIK already?

    Best,
    Pärtel
     
    Arganth likes this.
  43. AndersMalmgren

    AndersMalmgren

    Joined:
    Aug 31, 2014
    Posts:
    4,934
    Hi Pärtel. VRIK 1.5 is not really ready for our artifical locomotion game so we are still on FBBIK. We tried to reproduce by setting all 3 points to same value, did not reproduce the problem. We only tried positon though, will try with rotation also. I'll send you the model on your mail ASAP. Thanks.
     
  44. AndersMalmgren

    AndersMalmgren

    Joined:
    Aug 31, 2014
    Posts:
    4,934
    Maybe this can give you some hints? (Its a runtime error and only happens sometimes)

    error.png
     
  45. AltaVR

    AltaVR

    Joined:
    Oct 16, 2013
    Posts:
    8
    The 4-bone IK chains using two LimbIKs I have setup are for the arms, I'm using bend goals for the elbows but ideally I'd still like to control the rotation limits of the shoulder and wrist to avoid having impossible configurations. This is for a VR rig so I want this rig to look as realistic as possible with any hand position possible, so having rotation limits would go a long way in achieving this.

    Thanks for your help.
     
  46. Unityraptor81

    Unityraptor81

    Joined:
    Nov 28, 2016
    Posts:
    17
    Hey @Partel-Lang ,

    I've imported the package with the offset script. I think that maybe one file is missing (IKSolverVRFootsteps ?) in the package cause i've got compiling errors on IKSolverVRLocomotion.cs on lines 299/300 :

    footsteps[0].Update (stepInterpolation, onLeftFootstep);

    The update method in IKSolverVRFootsteps only take one param plus position, rotation and stepto variables from Footstep class are not accessible (private scope for Set)

    So i imagine that you've made some modifications in IKSolverVRFootsteps.cs too
     
  47. libra34567

    libra34567

    Joined:
    Apr 5, 2014
    Posts:
    28
    Hi, sir. I bought your asset a while ago, and I'm wondering how should I use it for the following application:
    My Idea is that for instance in the "Full body IK for bipod character" video, I want him to hold an object instead of his wrist fixed,So that the different weight of the object will have different effects on the original animation. Is it possible? If so, what's the best way for me to achieve it?
     
  48. Partel-Lang

    Partel-Lang

    Joined:
    Jan 2, 2013
    Posts:
    1,937
    Hi,
    You could add Rotation Limits to the shoulder bone, disable them and call rotationLimit.Apply() between the first and the second LimbIK update.

    Oh, bloody hell, sorry, its quite difficult to remember which files have changed. Try this one please.

    Hi,
    Yes, it is. Please take a look at the "Amplifier" demo scene. You could simply use effector positionOffset to move the hand lower for heavier objects, use the Amplifier to amplify/damper the motion of the hand and stuff like that.

    Best,
    Pärtel
     
  49. Deleted User

    Deleted User

    Guest

    I guess you answered this question like 1000 times but I wanted to ask if I buy animations and implement them to Final IK, what exactly can I do with it? Can I create a new animation using the bought animations (modifying them)? And what about VR IK, I saw a video where someone had a Vive and it looked like he could make Motion Capture with it? Is that possible?

    Thanks.
     
  50. dwaldrum

    dwaldrum

    Joined:
    Jun 20, 2015
    Posts:
    48
    I'm trying to do something which I think Final IK would be perfect for but not sure exactly how to go about it. I have a shopping cart, which I want a character to be able to walk up to, grab on to the handles and start pushing around.

    I looked at your video for grabbing the box and that makes sense for grabbing onto the carts handles using effectors. I can parent the cart to the player, the problem is it doesn't react realistically. If you jump the cart jumps, if you go over a bump the cart doesn't react properly obviously.

    How would I go about attaching the hands of the player to the carts handles, using this to push the cart but still allow the cart to react to gravity and the ground naturally?