for anyone having issues with the ikfootsolver script, the solution that solved my issue of the legs just floating in place was to change the step distance, height, and length to smaller numbers like 0.4 and 0.2 instead of the default values of 1 and 4 because they were configured for the mech model unity used which is way bigger than a normal humanoid one
Awesome just moved my character to a new scene to start building that scene and noticed that the hand targets are being followed but the feet are floating in space. Your comment will likely help fix that for me. Thanks and thanks Valem. I am also noticing as I walk that my hands look like they are glitching or jumping a little as I walk forward. It may be something I’ve done outside of this video. I’ll figure it out at some point.
Thanks for the info! However, it still does not work for me, and both legs are floating around on the side of character's body. Any suggestion to fix this issue? Thanks a lot.
Hi I am facing a similar issue. The upper hands, the face torso Upto the hips are working great. The legs seem to be in air for sometime and then it begins to fold completely near the origin ( I.e the spot where the AVATAR was there prior to pressing the play button ). and have bent knees at 90 degrees far away from the origin. I am Having issues with the legs. Initially they float horizontally and later they bend in a slow manner. And the knee leg doesent lift when I lift my legs here. I got them to move front, back and towards the sides. Help me please. It’s quite urgent actually. The latest values are having the speed at 4 and the step distances covered in decimal values. Yet I am still getting the horizontal floating legs issue which folds up and doesent respond when I lift for knee flexion, thighs etc.
Thanks for the tutorial! For anyone struggling with floating legs when they are bent (while crouching), what helped me was setting Ray Start Y Offset to 0.5. It may be different for you. The problem is ray going under the ground and hence it doesn't hit the ground. To visualize and set your offset, you can use the following debug line right after new Ray object is created in Update function of IK Foot Solver script: ```Debug.DrawRay(ray.origin, ray.direction * rayLength, Color.red); ``` Then as you enter play mode, and go to Scene view, you can see two red lines under the Avatar's feet. So, adjust Ray Start Y Offset and also perhaps the Ray Length accordingly to make sure these lines start from above the ground and go over it.
Could you please do a tutorial on vr melee combat your tutorials have helped me a lot and I can’t find any other tutorials on melee combat I would be very grateful😊
@valem Tutorials please make another part to this video that shows how you can add this full-body VR setup to the full-body physics rig you completed previously. That way, we can create a full boneworks like experience. I am currently trying to implement it, and I run into an issue where my character's model glitches evetime I move forwards.
Doing a Two-Bone Constraint on a arm which has 3 bones? You can very well see that your shoulder bones does not move at all - stuck together with your neck, in physical real life body it does move 3 bones, try it :-) Try with Chain IK instead and limit that to 3 bones, where root = LeftShoulder and Tip = LeftHand, then source is Left IK Target = a whole different movement and lets us stretch the hands in VR without beeing limited by that unmoveable shoulderbones.
Thanks for covering such an important content for vr second time. I was always managing the mess up on the first tutorial this one is even simpler and faster
Hi I am facing a similar issue. The upper hands, the face torso Upto the hips are working great. The legs seem to be in air for sometime and then it begins to fold completely near the origin ( I.e the spot where the AVATAR was there prior to pressing the play button ). and have bent knees at 90 degrees far away from the origin. I am Having issues with the legs. Initially they float horizontally and later they bend in a slow manner. And the knee leg doesent lift when I lift my legs here. It got them to move front, back and towards the sides. Help me please. It’s quite urgent actually.
for those who are having trouble with its legs floating and not walking that means it is too close to the ground, If that dose not work then the ground probably needs a mesh collider
Thanks for the great tutorial. FYI, if the character IK is outside the VR rig and your character goes very fast (like say... your character is traveling with a jetpack), your visible body will be 1 frame behind your actual VR body and making a interesting out of body experience (seeing your body from above). To resolve this, I just moved the IK under the VR rig so that the late update is done at then end of that frame and not on the next frame.
8:30 My character doesn't want to walk with bent legs; if the character is in the air, it walks somehow, but when it bends its knees, the target stays in place and the legs start flying.
Great tutorial, very helpful and efficient. However, I struggle to find the version of the IKFootSolver script that you are using. The one I found does not have the option to change the foot rotation offset. Could anyone please share where I can find the correct version of the script? Thanks!
Hello from Japan. I was having the same problem with the player's feet not following. The foot was moving correctly up to a certain height, but from a certain height the target was not following and the foot was free. However, I set the value of RayStartYOffset in IKFootSolver to -0.5 and it worked correctly. I hope this helps someone. P.S. Mr.Valem. I'm always looking forward to your reference. Thank you.
Hi in this video there is a handmodel seems like already has been made with animations. SO in order to follow this video i need to do that first right. Is there a video for this
is it possible, to do the rig setup at runtime? Or at least the assignment of constraints? I'm trying to build a rig on a character model that I load at runtime out of an online db, so I can't pre-set-up the rig...
For anyone else that had a problem with the blue hands not moving the arm IK just instead of making an empty object in the origin tab just drag the Right Arm IK_Target and the Left Arm IK_Target into the target IK hope this helps somebody :)
Can't add script component 'AnimateOnInput' because the script class cannot be found. Make sure that there are no compile errors and that the file name and class name match.
@Valem Tutorials, I am wearing headset and then trying the control the body. My problem is that whenever I rotate my head in up and down my VR Body gets behind / Infront of camera means when i look down my body gets behind me and looking up my body gents infront of my camera. and in inclined rotation. staying straight it perfectly aligned
I am having trouble making the character walk. I added everything as in the video, and the character crouches when it touches the ground, but when i drag it forward, it floats. Any help?
no just lower the character body like the -0.64 value in the IK rig , change it to -1 or something , the feet is just not feeling the collision of the ground thats all
Great tutorial. I'm having issues with my character going through walls. My walls have box colliders. Should I be adding a Ragdoll to the character for collision detection? Or should add a Rigidbody to VR Character IK and then add capsule colliders to each body component - arms, legs, etc. Should be easy, but I'm just learning. Thanks for any help you can provide.
My view is from the bottom it's not following the exact position of head but i checked all the positions everything seems to be perfect. Please guide me in this
Great Video again @Valem!! How easy would it be to swap in a different character model. e.g. if you wanted male and female character choices. We have made a number of updates to the downloaded prefab so assume it would be quite tricky?
Tip for anyone using the script wondering why the ingame hands move fatser than your real cotrollers its because of lerp here is the late update function without the lerp void LateUpdate() { transform.position = head.ikTarget.position + headBodyPositionOffset; float yaw = head.vrTarget.eulerAngles.y; Quaternion targetRotation = Quaternion.Euler(transform.eulerAngles.x, yaw, transform.eulerAngles.z); transform.rotation = targetRotation; head.Map(); leftHand.Map(); rightHand.Map(); } }
I've been trying to get something like this working all day today, this is good timing. What I'm confused about is, what what if you are taller than your avatar? Surely your avatar will float above the ground? Update: After testing VRChat, it seems there's a few second delay where it must check if there's still a distance between your feet and the ground layer, and then automatically switches you from "seated" to "standing" to compensate for the distance.
@@SongLu-q3u I've sorted the issue. Calling a method every 5 seconds that checks the distance between the feet and the floor. If its more than X I then scale the avatar to make up for the difference.
Excellent tutorial as always @Valem . With a little tweaking in the inspector I got all my body parts to line up. I am using continuous movement provider action based for my locomotion and noticed there is jittering and lagging of the VR model toward the targets (I kept my renderers on to test) as opposed to when not moving with locomotion. I attempted a predictive update function and even a movement provider monitoring through XRNodeState but still got lag when moving. Do you have a method of fixing this or a simple setting solution I haven't tried? It seems like it should be reasonably easy to do but I spent all my brainpower on a Grappling gun yesterday and now I am bewildered. Any help would be great! or if anyone in the comments has a fix? Thanks again!
to anybody who is experiencing this, here is the solution. just switch the Update method in "IK Target Follow VR Rig" script from LateUpdate to just Update. your welcome
Help! I downloaded the scripts and imported to Unity, it warned "Assets\VR Body\AnimateOnInput.cs(10,12): error CS0246: The type or namespace name 'InputActionProperty' could not be found (are you missing a using directive or an assembly reference?)". Also I cannot find IK Foot Slover (scripts)
Hi, i have a problem, when i move the character , the feet target doesnt move, and stays in the position when they spawned, i already try ti change the step distance, etc but its still the same
Congrats for this tutos, amazing!!! One question, when create VRRig scrips there is missing VRMap functions and more, could you share the file, mine doesn't work copying exactli your script, Thanks a lot!
Great video, but when I grab objects with a straight hand, the arms arent long enough. Spent all last night trying to work around this but nothing worked (including increasing the bone scale). Any ideas?
You could try limiting the distance that its possible to pick things up to match the length of the characters arm when fully extended. That way, if that characters arm can't reach it, it can't pick it up
do you think you can help. for some reason my model just goes down and does the splits and everything else works but my model just goes down and does the splits and its just ruining it.
How about finger movement? Currently, I can't find any solution on how to make a finger movement in Oculus VR. In the video I can only see 4 pre-defined poses. What if i want the character hands to behave exactly like the blue hands?
This was very difficult for me too man. The oculus hands for example are very complex. But basically are a blend tree with various animations attached based on parameters. I did successfully animate single fingers to do things but man it was a ton of work. In the end I just bought a very cheap collection of animations that I picked and chose a few that I really wanted for my game. They are damn near at the same timing as the oculus hands but move more realistically which is what I wanted. Good luck on yours man.
@@1playfair Yeah, i did the same thing. But the problem with this approach is this: there are finite hand animation that i can show to user, and there is some latency.
@@XboxPlayerPL using UnityEngine; public class HandIKPose : MonoBehaviour { [System.Serializable] public class Retargetable { public Transform source; public Transform destination; public Vector3 offset; public Retargetable(Transform source, Transform destination, Vector3 offset) { this.source = source; this.destination = destination; this.offset = offset; } } [System.Serializable] public class Finger { public Retargetable bone1; public Retargetable bone2; public Retargetable bone3; public Retargetable bone4; public Finger(Retargetable bone1, Retargetable bone2, Retargetable bone3, Retargetable bone4) { this.bone1 = bone1; this.bone1 = bone2; this.bone1 = bone3; this.bone4 = bone4; } } public Retargetable wrist; public Finger[] fingers; // Update is called once per frame private void FixedUpdate() { for (int fingerIndex = 0; fingerIndex < fingers.Length; fingerIndex++) { Finger finger = fingers[fingerIndex]; //finger.bone1.destination.localRotation = finger.bone1.source.localRotation; finger.bone1.destination.rotation = finger.bone1.source.rotation; finger.bone1.destination.Rotate(finger.bone1.offset); //finger.bone2.destination.localRotation = finger.bone2.source.localRotation; finger.bone2.destination.rotation = finger.bone2.source.rotation; finger.bone2.destination.Rotate(finger.bone2.offset); //finger.bone3.destination.localRotation = finger.bone3.source.localRotation; finger.bone3.destination.rotation = finger.bone3.source.rotation; finger.bone3.destination.Rotate(finger.bone3.offset); //finger.bone4.destination.localRotation = finger.bone4.source.localRotation; finger.bone4.destination.rotation = finger.bone4.source.rotation; finger.bone4.destination.Rotate(finger.bone4.offset); } //wrist.destination.position = wrist.source.position; //wrist.destination.localRotation = wrist.source.localRotation; } } here you go mate align them over your rigs hands then remove their meshes if setup right it will follow every hand animation i use this for my zombie survival dayz vr clone you can use it if u like i found it long ago(it should be placed on each hand (left and right) it takes quite some effort to setup as you have to align the offsets by hand till it follows the original hands
It doesent even work for me. the whole model is like 500 feet in the air and when I try and put it where i need it all it does is not follow the same head position of the camera and Im getting like 400 errors
So I am trying to use this with the physics tuts and for some reason the hand are not conected with the body and still want to not move to the points and when I try to move the hand they start rocking back and forth
Hi I am facing a similar issue. The upper hands, the face torso Upto the hips are working great. The legs seem to be in air for sometime and then it begins to fold completely near the origin ( I.e the spot where the AVATAR was there prior to pressing the play button ). and have bent knees at 90 degrees far away from the origin. I am Having issues with the legs. Initially they float horizontally and later they bend in a slow manner. And the knee leg doesent lift when I lift my legs here. It got them to move front, back and towards the sides. Help me please. It’s quite urgent actually.
Hi, could u help me with animation inputs and XR rig from VRIF? It doesnt work. I did all steps from your video but this last part I cannot make it possible
Hi I am facing a similar issue. The upper hands, the face torso Upto the hips are working great. The legs seem to be in air for sometime and then it begins to fold completely near the origin ( I.e the spot where the AVATAR was there prior to pressing the play button ). and have bent knees at 90 degrees far away from the origin. I am Having issues with the legs. Initially they float horizontally and later they bend in a slow manner. And the knee leg doesent lift when I lift my legs here. I got them to move front, back and towards the sides. Help me please. ‼️
So I have an issue where if I I use the animator with the avatar bone setup that the hands won’t fallow the hands position(stuck in unity default animation) . But when I take off the avatar bones off the animator it would be perfectly fine
@@sivasakthinataraj4447 I fixed my issue by doing two things. updating unity from 2019 to 2022. The second thing is I reimported the model under a differnt name and replaced the prefab I already made. I don't know which one of those things fixed it.
Did the entire thing and got stuck in the hand animation part! I don't seem to have the same "Input action reference" assets in my project as shown in the video (i updated open xr) and none of the ones i place in the "animate on input"script seem to work
The walking animation does not work, I followed everything correctly and it still does not work. I know it is the IK Foot Solver being the problem since when I disabled it, the ik for the legs worked
hello valem i hope you see my message. i made a new game project yesterday the when i open my project today everything is deleted it says that removing file error and the document is empty how do i fix it.
Hi, I try to do as he said but when I trying to implement IK foot solver there is no walking annimation and me foot start on origin point Someone have a idea why ?
how did you make it so that the geometry of the model's head is invisible to you? I can't see anything past the inside of my model's eye socket. I can see through most of the head because it's mostly backfaces, but there are certain spots that can be seen by the camera. I tried moving the head offset so the camera was outside the head's geometry and now the rig swings around wildly when I turn my head and my model's arms don't reach the full extension of my controllers.
In the Main Camera, you'll find a setting called 'Clipping Planes' Set the value labeled as 'Near' to a larger number than 0.01. A value of 0.1 removes all geometry within 10 centimeters of the camera. A value of 1 removes all geometry within 1 meter.
Hi Valem! I have succesfully implemented full body in VR thanks to you! BUT I have an enormous issue -> the body can't be configured. So if a player stretches his/her arm the model's arm length fall too short. I tried writing scripts to calibrate it by extending the bones of the arm until they are aligned, but then everything breaks. What works is to enlarge the whole model, but then you get giant's hands, giant's body, and it's no good! I am now considering returning to simple hand model but it's such a shame. Do you have any ideas how can this be solved? Thank you for your tutorials, you have my support on Patreon :))
For some reason the head of my character is going to the feet (where my camera is). Basically the head is right on the camera but the rest of the body isn't following it. Any ideas?
When I try to follow the leg part and get to the 'IK Foot Solver > Other Foot', I can't drag the target into that area, only the parent object. The script needs to be updated or I'm doing something wrong.
I had this issue, Idk if you figured out but it was more than likely due to putting the script in the parent object in my case. :3 It has to be a component added under the actual target :o I hope this helps someone to save some time ^_^
Im trying to get the avatars hips to pull backwards when I crouch so that the hips dont go into the ground and the legs dont freak out, similar to how FinalIK does it. Anyone have any suggestions?
What I decided to do is add a offline rig script to the game so when the game starts its disables the rig without deleting it and in photon add the rig but put the Vr targets as the photon hands and head
for anyone having issues with the ikfootsolver script, the solution that solved my issue of the legs just floating in place was to change the step distance, height, and length to smaller numbers like 0.4 and 0.2 instead of the default values of 1 and 4 because they were configured for the mech model unity used which is way bigger than a normal humanoid one
I'm going to pin this comment because of the tips and the cute dog on the profile picture. :D
Awesome just moved my character to a new scene to start building that scene and noticed that the hand targets are being followed but the feet are floating in space. Your comment will likely help fix that for me. Thanks and thanks Valem. I am also noticing as I walk that my hands look like they are glitching or jumping a little as I walk forward. It may be something I’ve done outside of this video. I’ll figure it out at some point.
Thanks for the info! However, it still does not work for me, and both legs are floating around on the side of character's body. Any suggestion to fix this issue? Thanks a lot.
@@1playfair have you resolved this issue when i move my character is laggy or glitchy
Hi I am facing a similar issue. The upper hands, the face torso Upto the hips are working great. The legs seem to be in air for sometime and then it begins to fold completely near the origin ( I.e the spot where the AVATAR was there prior to pressing the play button ). and have bent knees at 90 degrees far away from the origin. I am Having issues with the legs. Initially they float horizontally and later they bend in a slow manner. And the knee leg doesent lift when I lift my legs here. I got them to move front, back and towards the sides. Help me please. It’s quite urgent actually. The latest values are having the speed at 4 and the step distances covered in decimal values. Yet I am still getting the horizontal floating legs issue which folds up and doesent respond when I lift for knee flexion, thighs etc.
Thanks for the tutorial!
For anyone struggling with floating legs when they are bent (while crouching), what helped me was setting Ray Start Y Offset to 0.5. It may be different for you. The problem is ray going under the ground and hence it doesn't hit the ground. To visualize and set your offset,
you can use the following debug line right after new Ray object is created in Update function of IK Foot Solver script: ```Debug.DrawRay(ray.origin, ray.direction * rayLength, Color.red); ```
Then as you enter play mode, and go to Scene view, you can see two red lines under the Avatar's feet. So, adjust Ray Start Y Offset and also perhaps the Ray Length accordingly to make sure these lines start from above the ground and go over it.
Valem do you have in plans to do some tutorials like: "Final IK" from assets store with VR in mind???
Support this question
Could you please do a tutorial on vr melee combat your tutorials have helped me a lot and I can’t find any other tutorials on melee combat I would be very grateful😊
😁 I second this motion
@valem Tutorials please make another part to this video that shows how you can add this full-body VR setup to the full-body physics rig you completed previously. That way, we can create a full boneworks like experience. I am currently trying to implement it, and I run into an issue where my character's model glitches evetime I move forwards.
Did you ever get past the issues? I'm looking to implement the full body physics to this as well.
by chance are the rigidbody bones using interpolation/extrapolation? that has to be off.
For those having issues with the wrist not rotation the forearm, which causes some jank, you can parent the "Hint" to the "Target"
By jank do you mean like your arm spazzing out?
the ik footsolver script doesnt show up
Doing a Two-Bone Constraint on a arm which has 3 bones? You can very well see that your shoulder bones does not move at all - stuck together with your neck, in physical real life body it does move 3 bones, try it :-) Try with Chain IK instead and limit that to 3 bones, where root = LeftShoulder and Tip = LeftHand, then source is Left IK Target = a whole different movement and lets us stretch the hands in VR without beeing limited by that unmoveable shoulderbones.
Thank you, i was dealing with this problem.
Thanks for covering such an important content for vr second time. I was always managing the mess up on the first tutorial this one is even simpler and faster
How about the leg problem? thanks!
Hi I am facing a similar issue. The upper hands, the face torso Upto the hips are working great. The legs seem to be in air for sometime and then it begins to fold completely near the origin ( I.e the spot where the AVATAR was there prior to pressing the play button ). and have bent knees at 90 degrees far away from the origin. I am Having issues with the legs. Initially they float horizontally and later they bend in a slow manner. And the knee leg doesent lift when I lift my legs here. It got them to move front, back and towards the sides. Help me please. It’s quite urgent actually.
would be great for hands tracking - and if the hands are lost from view for a moment - to ease the hands to sides so they dont suddenly disappear
for those who are having trouble with its legs floating and not walking that means it is too close to the ground, If that dose not work then the ground probably needs a mesh collider
(somtimes)
Thanks for the great tutorial.
FYI, if the character IK is outside the VR rig and your character goes very fast (like say... your character is traveling with a jetpack), your visible body will be 1 frame behind your actual VR body and making a interesting out of body experience (seeing your body from above).
To resolve this, I just moved the IK under the VR rig so that the late update is done at then end of that frame and not on the next frame.
i need a tutorial for the forearm twist
thats more blender based, its weight painting
This is a great video, but how would you add a body to a rig with hand tracking ?
Thank you, your tutorials are very valuable and have helped me avoid many pitfalls.
i have a problem that the camera doesn't start in the middle of the head its down
yea same did you find a solution for that ??
Worked Perfectly! I just needed to make some small changes to the right and left vr targets( because I'm using a different xr origin).
For some reason the main camera is in the legs how to move it to the head?
What an amazing tutorial, I love your energy too! THANK YOU! I could learn from you all day! Much love from Seattle!
8:30 My character doesn't want to walk with bent legs; if the character is in the air, it walks somehow, but when it bends its knees, the target stays in place and the legs start flying.
Happens the same to me. Did you manage to solve it?
@@ivanpardo7976 for me i had to keep the default settings for the foot solver
becase your character has collider set your character to a new layer call player
add a mesh collider for your surface
hey, i was wondering why the legs were so long, so i looked like i was crouching the whole time
Great tutorial, very helpful and efficient. However, I struggle to find the version of the IKFootSolver script that you are using. The one I found does not have the option to change the foot rotation offset. Could anyone please share where I can find the correct version of the script? Thanks!
how do you change the main cameras position?
Hello from Japan.
I was having the same problem with the player's feet not following.
The foot was moving correctly up to a certain height, but from a certain height the target was not following and the foot was free.
However, I set the value of RayStartYOffset in IKFootSolver to -0.5 and it worked correctly.
I hope this helps someone.
P.S.
Mr.Valem. I'm always looking forward to your reference. Thank you.
Thank you for this tutorial, it really helped me get things started! Do you have a list of sources that you used for this video I can reference?
Brilliant! Waiting for Part2
love your stuff valem! been using your tutorials since day 1 on unity
I even using his tutorials when I was born! It was so great!!!
Bloody great tutorial man + I love the passion in your voice. Very easy subscription + like. I told my friends about you 🤟🏾
YOU ARE A LEGEND!! A+++
after setting up the target and hints exactly the way you showed, my characters hands still wont budge.
hi, if i haven't the reference for the hands (XRI pinch/grab interaction/activate), how can i do for set the XR Hands on the Hands of my character?
Hi in this video there is a handmodel seems like already has been made with animations. SO in order to follow this video i need to do that first right. Is there a video for this
is it possible, to do the rig setup at runtime? Or at least the assignment of constraints?
I'm trying to build a rig on a character model that I load at runtime out of an online db, so I can't pre-set-up the rig...
Awesome tutorial very easy to follow great teaching style
For anyone else that had a problem with the blue hands not moving the arm IK just instead of making an empty object in the origin tab just drag the Right Arm IK_Target and the Left Arm IK_Target into the target IK hope this helps somebody :)
i don't understand
Can't add script component 'AnimateOnInput' because the script class cannot be found. Make sure that there are no compile errors and that the file name and class name match.
THANK YOU!!
full body system in your game, cool to know
yo, love your game!
I’m only realizing now how long it would have taken to make Bone Works or Bone Lab (I’m gravity gloves guy)
@Valem Tutorials, I am wearing headset and then trying the control the body. My problem is that whenever I rotate my head in up and down my VR Body gets behind / Infront of camera means when i look down my body gets behind me and looking up my body gents infront of my camera. and in inclined rotation. staying straight it perfectly aligned
Have you ever found a solution for this?
Hey did u figure it out? I’m having the same issue
Did you solve it?
same issue here, did anyone figure it out?
I am having trouble making the character walk. I added everything as in the video, and the character crouches when it touches the ground, but when i drag it forward, it floats. Any help?
I would suggest to play with the setting of the Leg IK and make sure that the raycast used by it has found something. I know they are a bit tricky. :/
no just lower the character body like the -0.64 value in the IK rig , change it to -1 or something , the feet is just not feeling the collision of the ground thats all
Did you ever find a solution to this, because nothing I'm doing seems to work
@@ArmedMicrowave nope
Great tutorial. I'm having issues with my character going through walls. My walls have box colliders. Should I be adding a Ragdoll to the character for collision detection? Or should add a Rigidbody to VR Character IK and then add capsule colliders to each body component - arms, legs, etc. Should be easy, but I'm just learning. Thanks for any help you can provide.
On the XROrgin, you can use a character controller with the “Character Controller Driver” component, which makes it more dynamic for VR use.
I have problems implementing this, when I move my body shakes and I have tried everything
My view is from the bottom it's not following the exact position of head but i checked all the positions everything seems to be perfect. Please guide me in this
Hey did I find the solution for this.
Great Video again @Valem!! How easy would it be to swap in a different character model. e.g. if you wanted male and female character choices. We have made a number of updates to the downloaded prefab so assume it would be quite tricky?
If both genders have the same mixamo rig you could try to switch out the meshes
Tip for anyone using the script wondering why the ingame hands move fatser than your real cotrollers its because of lerp here is the late update function without the lerp
void LateUpdate()
{
transform.position = head.ikTarget.position + headBodyPositionOffset;
float yaw = head.vrTarget.eulerAngles.y;
Quaternion targetRotation = Quaternion.Euler(transform.eulerAngles.x, yaw, transform.eulerAngles.z);
transform.rotation = targetRotation;
head.Map();
leftHand.Map();
rightHand.Map();
}
}
How about leg problem? Thanks~
is this the entire script
for the ik legs
@@Not_Axlson I dont know
@@Not_Axlson no only the late update function
I've been trying to get something like this working all day today, this is good timing. What I'm confused about is, what what if you are taller than your avatar? Surely your avatar will float above the ground?
Update: After testing VRChat, it seems there's a few second delay where it must check if there's still a distance between your feet and the ground layer, and then automatically switches you from "seated" to "standing" to compensate for the distance.
same problem for me it will float in the air
Can we just make the avatar taller?
@@SongLu-q3u I've sorted the issue. Calling a method every 5 seconds that checks the distance between the feet and the floor. If its more than X I then scale the avatar to make up for the difference.
@@piratemin_vr Thank u very much! Well done
Excellent tutorial as always @Valem . With a little tweaking in the inspector I got all my body parts to line up. I am using continuous movement provider action based for my locomotion and noticed there is jittering and lagging of the VR model toward the targets (I kept my renderers on to test) as opposed to when not moving with locomotion. I attempted a predictive update function and even a movement provider monitoring through XRNodeState but still got lag when moving. Do you have a method of fixing this or a simple setting solution I haven't tried? It seems like it should be reasonably easy to do but I spent all my brainpower on a Grappling gun yesterday and now I am bewildered. Any help would be great! or if anyone in the comments has a fix? Thanks again!
any problems getting the hand tracking to work?
please tell me you found a solution
@@fashvr9961 nope. still a mess
to anybody who is experiencing this, here is the solution. just switch the Update method in "IK Target Follow VR Rig" script from LateUpdate to just Update. your welcome
@@fashvr9961 will try tomorrow. thanks !
great Video! I Would just like to know how to add other Grab Poses. I cant seem to find any tutorial for that.
Help! I downloaded the scripts and imported to Unity, it warned "Assets\VR Body\AnimateOnInput.cs(10,12): error CS0246: The type or namespace name 'InputActionProperty' could not be found (are you missing a using directive or an assembly reference?)". Also I cannot find IK Foot Slover (scripts)
I wonder if this is preparing us for something coming up 😉
Thanks this was really helpful!!!
Is it possible with this setup to make it like in your old video How to Make Physics Hands in VR and have hands not go through physical objects ?
Hi, i have a problem, when i move the character , the feet target doesnt move, and stays in the position when they spawned, i already try ti change the step distance, etc but its still the same
Congrats for this tutos, amazing!!! One question, when create VRRig scrips there is missing VRMap functions and more, could you share the file, mine doesn't work copying exactli your script, Thanks a lot!
Great video, but when I grab objects with a straight hand, the arms arent long enough. Spent all last night trying to work around this but nothing worked (including increasing the bone scale). Any ideas?
have you figured it out? cuz I have same issue
You could try limiting the distance that its possible to pick things up to match the length of the characters arm when fully extended. That way, if that characters arm can't reach it, it can't pick it up
But my HMD rotates the entire body rather than the head alone. How to resolve it, Valem ? If anyone knows how to resolve the issue, help me.
Have you found the solution yet?
I'm also stuck on the same bit@@TurkiKAlqou
Same
do you think you can help. for some reason my model just goes down and does the splits and everything else works but my model just goes down and does the splits and its just ruining it.
How about finger movement? Currently, I can't find any solution on how to make a finger movement in Oculus VR. In the video I can only see 4 pre-defined poses. What if i want the character hands to behave exactly like the blue hands?
This was very difficult for me too man. The oculus hands for example are very complex. But basically are a blend tree with various animations attached based on parameters. I did successfully animate single fingers to do things but man it was a ton of work. In the end I just bought a very cheap collection of animations that I picked and chose a few that I really wanted for my game. They are damn near at the same timing as the oculus hands but move more realistically which is what I wanted. Good luck on yours man.
@@1playfair Yeah, i did the same thing. But the problem with this approach is this: there are finite hand animation that i can show to user, and there is some latency.
@@XboxPlayerPL
using UnityEngine;
public class HandIKPose : MonoBehaviour
{
[System.Serializable]
public class Retargetable
{
public Transform source;
public Transform destination;
public Vector3 offset;
public Retargetable(Transform source, Transform destination, Vector3 offset)
{
this.source = source;
this.destination = destination;
this.offset = offset;
}
}
[System.Serializable]
public class Finger
{
public Retargetable bone1;
public Retargetable bone2;
public Retargetable bone3;
public Retargetable bone4;
public Finger(Retargetable bone1, Retargetable bone2, Retargetable bone3, Retargetable bone4)
{
this.bone1 = bone1;
this.bone1 = bone2;
this.bone1 = bone3;
this.bone4 = bone4;
}
}
public Retargetable wrist;
public Finger[] fingers;
// Update is called once per frame
private void FixedUpdate()
{
for (int fingerIndex = 0; fingerIndex < fingers.Length; fingerIndex++)
{
Finger finger = fingers[fingerIndex];
//finger.bone1.destination.localRotation = finger.bone1.source.localRotation;
finger.bone1.destination.rotation = finger.bone1.source.rotation;
finger.bone1.destination.Rotate(finger.bone1.offset);
//finger.bone2.destination.localRotation = finger.bone2.source.localRotation;
finger.bone2.destination.rotation = finger.bone2.source.rotation;
finger.bone2.destination.Rotate(finger.bone2.offset);
//finger.bone3.destination.localRotation = finger.bone3.source.localRotation;
finger.bone3.destination.rotation = finger.bone3.source.rotation;
finger.bone3.destination.Rotate(finger.bone3.offset);
//finger.bone4.destination.localRotation = finger.bone4.source.localRotation;
finger.bone4.destination.rotation = finger.bone4.source.rotation;
finger.bone4.destination.Rotate(finger.bone4.offset);
}
//wrist.destination.position = wrist.source.position;
//wrist.destination.localRotation = wrist.source.localRotation;
}
}
here you go mate align them over your rigs hands then remove their meshes if setup right it will follow every hand animation i use this for my zombie survival dayz vr clone you can use it if u like i found it long ago(it should be placed on each hand (left and right) it takes quite some effort to setup as you have to align the offsets by hand till it follows the original hands
It doesent even work for me. the whole model is like 500 feet in the air and when I try and put it where i need it all it does is not follow the same head position of the camera and Im getting like 400 errors
me too i hope he can address this
So I am trying to use this with the physics tuts and for some reason the hand are not conected with the body and still want to not move to the points and when I try to move the hand they start rocking back and forth
Hi, where can I find the IK Foot Solver Script?, I didn't find it on the Robot Walk videos!
there is a drive link in Description
can u show me where to find that script
@@hafsa8010 drive.google.com/file/d/1eSaeMTLxWpRYo8ZYM6hprlMG-N716REL/view
which video did you make the FootSolver in?
edit: nvm I am dumb.
can you help? i cant find foot solver , edit : nvm i am dumb too
where did you get yall the code from ?@@hazelyokouji2005
where did u find it guys
@@hazelyokouji2005
Hi I am facing a similar issue. The upper hands, the face torso Upto the hips are working great. The legs seem to be in air for sometime and then it begins to fold completely near the origin ( I.e the spot where the AVATAR was there prior to pressing the play button ). and have bent knees at 90 degrees far away from the origin. I am Having issues with the legs. Initially they float horizontally and later they bend in a slow manner. And the knee leg doesent lift when I lift my legs here. It got them to move front, back and towards the sides. Help me please. It’s quite urgent actually.
Hi, could u help me with animation inputs and XR rig from VRIF? It doesnt work. I did all steps from your video but this last part I cannot make it possible
For some reason when i test it my camera is stuck by the legs can anyone help?
Whenever I start the game my model always looks to the left of instead look straight like the camera. How do I fix?
What about the blue hand models? Where did you get those and did you do any pre edits to them before incorporating them?
Those are the standard hands included in the oculus sdk i believe
Hi I am facing a similar issue. The upper hands, the face torso Upto the hips are working great. The legs seem to be in air for sometime and then it begins to fold completely near the origin ( I.e the spot where the AVATAR was there prior to pressing the play button ). and have bent knees at 90 degrees far away from the origin. I am Having issues with the legs. Initially they float horizontally and later they bend in a slow manner. And the knee leg doesent lift when I lift my legs here. I got them to move front, back and towards the sides. Help me please. ‼️
ayaklarım yerde kalıyor çok geç geliyor ve karakterim oturuyor yerde onu nasıl düzeltebilirim
help when i play my game my character just floats above the vr hands and it dosent stand up strait
So I have an issue where if I I use the animator with the avatar bone setup that the hands won’t fallow the hands position(stuck in unity default animation) . But when I take off the avatar bones off the animator it would be perfectly fine
me too the same issue.
@@sivasakthinataraj4447 I fixed my issue by doing two things. updating unity from 2019 to 2022. The second thing is I reimported the model under a differnt name and replaced the prefab I already made. I don't know which one of those things fixed it.
Fingers doesn't work for me ! Binding Warning Alert is Showing in Animator Component. How can I Fix it?
Did the entire thing and got stuck in the hand animation part!
I don't seem to have the same "Input action reference" assets in my project as shown in the video (i updated open xr)
and none of the ones i place in the "animate on input"script seem to work
hey, I have the same problem. Did you @shantistieglitz8355 managed to solve it?
@@Zofia21 No actually, i did a messy workaround...
The walking animation does not work, I followed everything correctly and it still does not work. I know it is the IK Foot Solver being the problem since when I disabled it, the ik for the legs worked
where did you find the foot solver? i cant see it
@@kneallian it's the google drive file in the description
I have the same thing did you figure it out
@@Stoleyourgirlbozo yeah I did, it's the unity version, you need to use the same as valems in this tutorial
@@Varrox oh all I had to do was import the whole thing (I was only using the script) And re adjust then step distance
i keep laughing at the arms in the intro lol
How would one go about making the arms stretch to match arm length of user?
hello valem i hope you see my message. i made a new game project yesterday the when i open my project today everything is deleted it says that removing file error and the document is empty how do i fix it.
Hi,
I try to do as he said but when I trying to implement IK foot solver there is no walking annimation and me foot start on origin point Someone have a idea why ?
Great. Thanks for sharing🥳
Brilliant!
when i make this avater walk around, the body and any held grabbables jitter very badly. any ideas?
That is amazing, but is there any chance you make some tutorial for VRIF please ?
The part of the legs animation doesn't work. They get stuck in one place and float arround while moving the character.
how did you make it so that the geometry of the model's head is invisible to you? I can't see anything past the inside of my model's eye socket. I can see through most of the head because it's mostly backfaces, but there are certain spots that can be seen by the camera. I tried moving the head offset so the camera was outside the head's geometry and now the rig swings around wildly when I turn my head and my model's arms don't reach the full extension of my controllers.
In the Main Camera, you'll find a setting called 'Clipping Planes' Set the value labeled as 'Near' to a larger number than 0.01. A value of 0.1 removes all geometry within 10 centimeters of the camera. A value of 1 removes all geometry within 1 meter.
Second Float always NaN - Blend Tree both Left and Right Hand Layer..... Occurs only Unity 2022.3.xx...please give one solution
It works with PUN2?
Hi Valem!
I have succesfully implemented full body in VR thanks to you! BUT I have an enormous issue -> the body can't be configured. So if a player stretches his/her arm the model's arm length fall too short. I tried writing scripts to calibrate it by extending the bones of the arm until they are aligned, but then everything breaks. What works is to enlarge the whole model, but then you get giant's hands, giant's body, and it's no good!
I am now considering returning to simple hand model but it's such a shame.
Do you have any ideas how can this be solved?
Thank you for your tutorials, you have my support on Patreon :))
Hello i have same issue, did you solve it ?
@@epoch2435 Yeah! I paid Rootmotion's FinalIK and have zero regrets :D
Why does my characters head rotate so much when I turn my head on the X or Z axis
Do one but with attaching avatar hands to SteamVR plugin
tysm!
For some reason the head of my character is going to the feet (where my camera is). Basically the head is right on the camera but the rest of the body isn't following it. Any ideas?
nvm it was just an offset problem i see
could you do this with a SYNTY character?
After i did the IK Foot Solver my character just floats to the sky D:
how do i get the xr thingys bc at 11:37 he messes with this thing called xr orgin i wnna know how to get it so i can finish the vr script
When I try to follow the leg part and get to the 'IK Foot Solver > Other Foot', I can't drag the target into that area, only the parent object. The script needs to be updated or I'm doing something wrong.
I had this issue, Idk if you figured out but it was more than likely due to putting the script in the parent object in my case. :3 It has to be a component added under the actual target :o I hope this helps someone to save some time ^_^
I cant find bone renderer or two bone ik or anything
i didnt install animation rigging lmfao sorry
Im trying to get the avatars hips to pull backwards when I crouch so that the hips dont go into the ground and the legs dont freak out, similar to how FinalIK does it. Anyone have any suggestions?
How do I do this on the Valve Index, with the hand animations
i got everything working but i have a pretty long wingspan and the character models arms don’t reach the length of my arms how do i fix this
@DannyboyRust please have you found a solution to this? I'm facing the same thing
same
@@ugochukwunwankiti6030
Hello Valem, Great Tutorial. I have a question, how can I send the rig data over photon network so all players can see it in realtime?
The rigs acts as if it was an animation so if your sending animation data over the network you should be fine.
What I decided to do is add a offline rig script to the game so when the game starts its disables the rig without deleting it and in photon add the rig but put the Vr targets as the photon hands and head