Another thing people might consider is that when ledging to a moving platform, The character must set that moving platform as a parent. That is easy, the hard part is to get it to work right when jumping the ledge and other things. Great tutorial, it set a really good base for a solid work.
Already done that but unfortunately scrapped due to unity disaster last year ☹You can check the unfinished project at ua-cam.com/video/KQMBSO-GpjU/v-deo.html
Interesting. I was studying Eric Canela's parkour asset. So I decided to just look for an action without IK, to reduce complexity. Your approach was easy to understand, although GameKit made it a little difficult. Probably to add other actions such as "prevent the player from falling" or "fall and grab the edge" it will be more appropriate to get rid of the trigger and just use raycasts and more specific tags on the objects. Either way, these interactions are complex but generate great mechanics.
I use trigger instead of raycast since it simpler. Using raycast work wonder for basic ledge grab like this, but as the mechanic grow in complexity, it tend to create undesirable bugs down the road.
@@Brokencircuitboard I imagined. But as I'm more familiar with raycasts and triggers, but not with IK, this was useful to understand the basis of the thing. I'm going to try to gradually increase the difficulty, and then do it without a trigger and then with IK.
I wanted to thank you for doing this tutorial! I got it working perfectly, and i added two child objects on the ledge detection collider (wich was on a gameobject of his own) for IK hands and just used the OnLedge bool to handle the weight of the rig. I also run into a very nasty bug with the wallTarget raycast, becouse it reacts to everything, and when i was shot at (my game have enemies with bullets) it would get crazy. If anyone else run into this problem, you can select layers to wich the raycast don't react, and i put it on the LerpToLedge function, and it looked like this : private void FacingWall() { RaycastHit hit; int layerMask = 1
Ok, so i see that we still have to create colliders with Tags for every place we want to ledge. Correct me if i'm wrong, becouse I can instantiate the sphere with no problem, but i still only ledge on where i put the "ledge" tag.
Another thing people might consider is that when ledging to a moving platform, The character must set that moving platform as a parent. That is easy, the hard part is to get it to work right when jumping the ledge and other things. Great tutorial, it set a really good base for a solid work.
Already done that but unfortunately scrapped due to unity disaster last year ☹You can check the unfinished project at ua-cam.com/video/KQMBSO-GpjU/v-deo.html
Interesting. I was studying Eric Canela's parkour asset. So I decided to just look for an action without IK, to reduce complexity. Your approach was easy to understand, although GameKit made it a little difficult. Probably to add other actions such as "prevent the player from falling" or "fall and grab the edge" it will be more appropriate to get rid of the trigger and just use raycasts and more specific tags on the objects. Either way, these interactions are complex but generate great mechanics.
I use trigger instead of raycast since it simpler. Using raycast work wonder for basic ledge grab like this, but as the mechanic grow in complexity, it tend to create undesirable bugs down the road.
@@Brokencircuitboard I imagined. But as I'm more familiar with raycasts and triggers, but not with IK, this was useful to understand the basis of the thing. I'm going to try to gradually increase the difficulty, and then do it without a trigger and then with IK.
I wanted to thank you for doing this tutorial! I got it working perfectly, and i added two child objects on the ledge detection collider (wich was on a gameobject of his own) for IK hands and just used the OnLedge bool to handle the weight of the rig. I also run into a very nasty bug with the wallTarget raycast, becouse it reacts to everything, and when i was shot at (my game have enemies with bullets) it would get crazy. If anyone else run into this problem, you can select layers to wich the raycast don't react, and i put it on the LerpToLedge function, and it looked like this :
private void FacingWall()
{
RaycastHit hit;
int layerMask = 1
Ok, so i see that we still have to create colliders with Tags for every place we want to ledge. Correct me if i'm wrong, becouse I can instantiate the sphere with no problem, but i still only ledge on where i put the "ledge" tag.
True.