Make your animations dynamic using Control Rig

Поделиться
HTML-код
  • Опубликовано: 8 сен 2024

Комментарии • 64

  • @alex-qn5xp
    @alex-qn5xp 4 месяца назад +5

    The amount of comments on this channel expecting full tutorials on anything they ask for is saddening, do people even want to make games or just like the idea of it lol. Great tutorial, I could figure out how to implement it quite quickly just from figuring it out.

  • @akzork
    @akzork 7 месяцев назад +7

    That was cool. I'm gonna go press some buttons now.

  • @AttakuStudio
    @AttakuStudio 6 месяцев назад +4

    This is pure Gold! And you are a master of tutorials! I'm impressed, thank you!

    • @2slick4u.
      @2slick4u. 5 месяцев назад

      very true, what a big brain O:

  • @emintaskirunreal
    @emintaskirunreal 7 месяцев назад +6

    What a game changer tut bro. Thanks for it.

  • @michaelderosier3505
    @michaelderosier3505 4 месяца назад +3

    You can set rotation limits in the details panel under "Transform" ; set the Min and Max to your specs.

    • @driftmirror
      @driftmirror 21 день назад

      Been looking for 30 minutes and I can't find this. Details panel is contextual, so details panel after clicking on what? This comment could be so helpful for people but it's lacking context.

    • @michaelderosier3505
      @michaelderosier3505 17 дней назад

      Select “Set Transform” node, it refers to the bone you want to manipulate. While the node is selected look at the “details” panel. In the video it’s to the right. Look for the section “Transform”, this is where you set the min/max. I will be away from my computer for a few days. Let me know if you need more information.

  • @ChezComics
    @ChezComics 7 месяцев назад +1

    Hey man just wanted to say, your procedural step-by-step video got me to take the plunge from animation straight into UE5 tech-anim. Currently making my own solo game and been watching every vid since. thanks for sharing the knowledge, much appreciated

  • @hirojiokada3899
    @hirojiokada3899 4 дня назад

    Thank u so much so much man u helped me a lot and solve many problems love u bro

  • @eivenhoe
    @eivenhoe 7 месяцев назад +1

    Such valuable and high skilled, thanks very much

  • @LimitedPerfection
    @LimitedPerfection 7 месяцев назад

    Control Rig King. 👑

  • @Ghuur
    @Ghuur 7 месяцев назад +1

    Thanks for sharing, great tutorial. Thinking that this could used for two-hand grips as well (2 hand sword, etc). Currently using two-hand IK for it but this seems much more natural-looking.
    Could you possibly do a follow-up tutorial for that as well? As it seems that not only you have to account for the handle's transform but you have to adjust the secondary hand's rotation to the primary hand.

    • @LincolnMargison
      @LincolnMargison  7 месяцев назад +2

      Its maybe something I'll cover, but making one transform relative to another isn't too difficult. There's a MakeRelative node, to make one thing relative to another (eg. left hand relative to the right) giving you an offset transform, and then once you move the right hand, you can re-apply this offset by multiplying the transform of the right hand, with the offset of the left.

    • @Ghuur
      @Ghuur 7 месяцев назад +1

      @@LincolnMargison Thanks! Will try that.

  • @user-kb2qz3gj6k
    @user-kb2qz3gj6k 7 месяцев назад +1

    Thank you bro

  • @kenalpha3
    @kenalpha3 7 месяцев назад +6

    17:08 Thanks. Can you do a vid on how to implement this for actual use (how to feed goal loc with BP? into different anims).
    I.e. character needs to be about 100 units from the button?
    So for a door example, can you show how to use a collision box on door BP, to detect player is close enough.
    Then which node to use to make Player step to exactly 100 units? (This is what I havent found an answer to, esp for Player Controller since we cant use AI move nodes which are more precise.)
    And then how to you communicate from doorBP to PlayerBP to AnimBP? to feed Goal - BPI? (hopefully not castTo any PlayerBP)
    Can you show what works please. Ty

    • @2slick4u.
      @2slick4u. 5 месяцев назад +1

      Bro at some point you need to figure some things out yourself. He's handing out the biggest part of the puzzle for you right there. That sounds really lazy from you

    • @alex-qn5xp
      @alex-qn5xp 4 месяца назад

      Ever heard of unreal engine documentation?

  • @RictorScale
    @RictorScale 5 месяцев назад

    This is fantastic thank you

  • @post1440
    @post1440 7 месяцев назад

    This is amazing!

  • @FPChris
    @FPChris 2 месяца назад

    Cool. I want to do something similar for archery

  • @YuuJer
    @YuuJer 7 месяцев назад

    awesome! more rig math pls!

  • @gotagamee
    @gotagamee 6 месяцев назад

    Thank yout for the great video. I'm curious about setting the Initial Target though. Since the Initial Target would generally be different for each animation, would that also need to be fed into the control too in order to get the correct quaternion multiplication value? Or another way would be to create different InitialTargets for types of animations and have them already set up (ButtonPressInitTarget, PunchInitTarget, etc). In terms of management I think the latter method sounds better but it doesn't seem as robust as the first option (if it works).

  • @enzonova2379
    @enzonova2379 6 месяцев назад +4

    How can i transfer this red point reference to a socket bone in other skeletal mesh?
    I need to adapt my character animation e a interaction between two skeletal mesh.

    • @Bakahira
      @Bakahira 4 месяца назад

      Its also a big question for me...do you find a solution?

    • @enzonova2379
      @enzonova2379 4 месяца назад

      @@BakahiraI haven't had time to try anything yet😕

    • @RogueSheep4VR
      @RogueSheep4VR Месяц назад

      Just in case you're still looking for this: using GetSocketTransform you can get the location of a bone or socket in the other mesh.

  • @WPSSSR
    @WPSSSR 7 месяцев назад

    yeah I'v looked for it))

  • @alexrybin3798
    @alexrybin3798 5 месяцев назад

    Awesome tutorial! I have asked on forum, but maybe you know how to copy rotation value in control rig, from z axis and connect it to y axis? Can’t find function for this…

  • @koko-nl5tp
    @koko-nl5tp 6 месяцев назад

    @11.13 . As I watched that Quaternion video , on and on, if I understand right, the inverse of quatanian means just rotate opposite direction. So if we use the bottom one(B) to time the top one(A) instead of the other way around, we don't need to use the inverse node... Maybe... Just wonder!!!

  • @brunotorrao
    @brunotorrao 7 месяцев назад +1

    Hey man.. great tutorial.. do you think I can leverage that to make the sword attack animations follow the camera up and down like Elden Ring does?

    • @LincolnMargison
      @LincolnMargison  7 месяцев назад +4

      Sure. You'd basically just pass it a raw value (so the first part of this tutorial) for the pitch. EG: you'd get the view angle of the character, and take the pitch value only, and input that as a float into control rig, and use it to control the up/down angle of the spine rotation.
      Keep in mind with the pitch values, you might have to manipulate them a bit to get them nicely useable. It won't just give you a 0->180 value by default.

  • @Dankfrankest
    @Dankfrankest 7 месяцев назад

    Struggling through a use case with this technique today. I'm trying to use the AimMath idea to point two different bones at the same world location. Both of the bones point just fine on their own, but when combined, the spine rotation compounds and influences the second bone (hand_r). I've been trying to "unrotate" the hand using the aimed spine rotation, but I just can't seem to get the result I'm looking for

  • @AlessandroCristoffer
    @AlessandroCristoffer 7 часов назад

    Hello, sorry for the apparently stupid question, I'm completely new to animations and Control rig, but I believe it's possible to use this method to correct the position of the character's hand on the weapon's mag? This is clear considering that the weapon is performing the Reload animation and so is the character.

    • @LincolnMargison
      @LincolnMargison  7 часов назад +1

      You can yeah, ordinarily the weapon would be attached to one hand (eg. the right hand) so making adjustments to the left hand wouldn't impact the position of the weapon, so you could for example offset the distance it reaches to or something like that if the mag was in a different place.

    • @AlessandroCristoffer
      @AlessandroCristoffer 6 часов назад

      @@LincolnMargison thank you very much. Do you happen to want to create some content about true fps? There is a lot of content just using Modify transform bone, and very few with controll rig as it should be I believe.

  • @tylercathey8848
    @tylercathey8848 7 месяцев назад +4

    is it possible to make the attack animation completely procedular too? like no animation file its all code?

    • @adamisme9176
      @adamisme9176 7 месяцев назад +1

      It is. It is a lot of work as every moving thing in the body needs a transformation to make it look realistic.

    • @TheNSJaws
      @TheNSJaws 7 месяцев назад +2

      yep, but it's a lot more trouble than it's worth I wager

    • @LincolnMargison
      @LincolnMargison  7 месяцев назад +4

      As other's have said, its possible but perhaps more difficult than just animating. What kind of attack/character were you thinking?

    • @tylercathey8848
      @tylercathey8848 7 месяцев назад

      @@LincolnMargison im trying to make a fully produceral combat system so bosses can sync with music, weapons clip though walls, etc

    • @LincolnMargison
      @LincolnMargison  7 месяцев назад +2

      @@tylercathey8848 Ah, well it's definitely doable, but will be easier if it's non-human characters

  • @MGInspiration
    @MGInspiration 3 месяца назад

    Will it work if i locate the socket in enemy , then set the target snap on socket. by that will it hit or grab with multi size character

  • @user-li7ce3fc3z
    @user-li7ce3fc3z 3 месяца назад

    Больше туториалов нужно на эту тему, особенно что нибудь на тему динамической анимации юбки брони например, когда приходится управлять костями юбки динамически

  • @Hawaiianspawn
    @Hawaiianspawn 6 месяцев назад

    How would you reassign another target spot. Say you had a second punch that punches lower.

  • @dobrx6199
    @dobrx6199 7 месяцев назад

    Nice 👍

  • @user-nl2kj2ys1n
    @user-nl2kj2ys1n 5 месяцев назад

    awesome……

  • @MrYoucantsay
    @MrYoucantsay 4 месяца назад

    Hi Lincoln.
    I followed this tutorial, but I found out quite quickly that if the animation has root motion enabled, it can quickly break down if you use this method. Especially if you use it on pelvis bone. Breaking down means that the limb/character goes haywire towards the end of the animation. Disabling root motion fixes the issue instantly. The aim math seems to work in the controlrig view, but when you look the resulting animation in game or even in the animation blueprint, you see that it's not quite right.
    I wonder if you would know how to solve the issue. Keep the root motion intact on the animation while still getting the aim math to work.
    Thanks.

    • @LincolnMargison
      @LincolnMargison  4 месяца назад

      I'm not sure why that would be the case, it isn't something I've tried it with, but presumably it will be related to where the origin of the character mesh is. So when the character walks away (with rootmotion) they may be separated from the 0,0,0 rigspace point? I'm not exactly sure of the exact interaction or impact of that but it's my best guess as to why this wouldn't work with rootmotion.

    • @MrYoucantsay
      @MrYoucantsay 4 месяца назад

      ​@LincolnMargison Thank you for your reply.
      That is my intuition as well. I can report now that I did find sort of a workaround. Since you really only need to calculate the rotation offsets once at the start of the animation, I made it so that the controlrig logic only calculates it at the start, so even if the root motion does crazy things, the calculation is still correct and the root motion does not start to affect the whole thing.
      Well maybe it's also more realistic that way, since your attack is not homing like a missile and the updated trajectory is calculated only once and not every single frame.
      It does however feel a bit hacky. I wonder if there is a way to do it fully inside controlrig cleanly. Otherwise I guess I could take all the logic out of the controlrig and do the offset calculations in the character blueprint and supply those offsets to the controlrig.
      I also guess you could replicate the results with IK nodes too and maybe that works better with root motion.
      Anyway thank you for the tutorial. I will keep experimenting and learning the controlrig system. Your videos have been very inspiring.

  • @Deculayn
    @Deculayn Месяц назад

    How can we transfer the target to crosshair?

  • @lospe85
    @lospe85 7 месяцев назад

    nice! would this be the correct approach for left hand grip when holding different rifles (rotating the lowerarm so it grabs the specific end of the gun) ... or is it overkill and I should search for a simpler solution?

    • @LincolnMargison
      @LincolnMargison  7 месяцев назад +1

      For that you'd likely want to use IK. So either FullBodyIK (but only applied to the arm) or BasicIK, if you were to use control rig. Little more complex to set up, but a similar approach, where you'd just be adjusting the underlying animation by moving the IK goal from where it is by default in the animation, and offsetting it to where it needs to be for the specific weapon.

  • @maskwaGaming
    @maskwaGaming 2 месяца назад

    Would hipfire and ADS make sense with control rig?

    • @LincolnMargison
      @LincolnMargison  2 месяца назад +1

      It would, but I'd maybe suggest doing it by creating a pose for those states if possible, then modify it as needed with controlrig. EG for different weapons/scopes/whatever else, you'd adjust it in control rig, but maybe start from an approximately correct pose.
      You could do the whole thing in control rig, and reposition the weapon to the right spot, but it might just be a little more work to get it positioned in a way that looks good, to not much benefit over using a pose.

  • @pranjalbhattacharjee5601
    @pranjalbhattacharjee5601 5 месяцев назад

    I want to edit the lyra rifle animations using control rig so that the legs are a bit more spread apart and the knees are a bit more bent.....how would I do that ??

    • @LincolnMargison
      @LincolnMargison  5 месяцев назад

      A simple way would be to make a control rig which just gets the position of the foot bones (create an array with the two feet), and whatever their location is on X & Y, just scale it up by some amount (eg. by 1.2) and use IK to position the feet at the new spots. This would have the effect of separating the feet further away from 0,0,0 rigspace.
      To make the knees more bent, the easiest way would be to use a FullBodyIK node, where you move the pelvis down slightly, but also have effectors to keep both the feet in place.

    • @pranjalbhattacharjee5601
      @pranjalbhattacharjee5601 5 месяцев назад

      @@LincolnMargison That makes sense but I have no idea how to actually do that.....If you could please make a tutorial that would be great

  • @hernanacks
    @hernanacks 4 месяца назад

    i cant do to work in game....can you explain how setup the goal and init parameters in anim graph?

  • @CosmicComputer
    @CosmicComputer 2 месяца назад

    I wish so badly they wouldn’t call it global space, and instead call it local or rig space officially, makes it so confusing.

  • @Valorodrigo
    @Valorodrigo Месяц назад

  • @user-qw4qh4fk7g
    @user-qw4qh4fk7g 4 месяца назад

    Can i transfer this target to mouse?

    • @LincolnMargison
      @LincolnMargison  4 месяца назад

      Sure, just pass in the info you need into control rig