Make your animations dynamic using Control Rig

  Рет қаралды 23,156

Lincoln Margison - Game Development

Lincoln Margison - Game Development

Күн бұрын

Пікірлер: 86
@MashaBear-g8f
@MashaBear-g8f Ай бұрын
This guy is literally the genius of our time when it comes to animations and rig!
@AttakuStudio
@AttakuStudio 8 ай бұрын
This is pure Gold! And you are a master of tutorials! I'm impressed, thank you!
@trumpisbackboi
@trumpisbackboi 8 ай бұрын
very true, what a big brain O:
@emintaskirunreal
@emintaskirunreal 10 ай бұрын
What a game changer tut bro. Thanks for it.
@akzork
@akzork 10 ай бұрын
That was cool. I'm gonna go press some buttons now.
@michaelderosier3505
@michaelderosier3505 7 ай бұрын
You can set rotation limits in the details panel under "Transform" ; set the Min and Max to your specs.
@driftmirror
@driftmirror 3 ай бұрын
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 3 ай бұрын
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.
@Lorecastapendragon
@Lorecastapendragon 19 күн бұрын
ok now how do I use all that and make him punch at my characters head, I tried inputing the world transform of my player camera which is located at the player pawns head into the goal target node by the enemy ai was punching off to the right, tried the vr origin and they were still punching right, not at my head.
@MaceWindoo77
@MaceWindoo77 15 күн бұрын
It will be cool to work on a hand-to-hand fight sequence to apply this knowledge. Personally, I'm gonna try to with your 2 Udemy animation courses in a 80's Hong-Kong martial art/action movie style project.
@RomanTimm
@RomanTimm 2 күн бұрын
Awesome video! Do you have any notes on how to make the movement of the spine to look better in terms of how the hips move? As you can see i nthe video, the bending of the body when clicking the button looks rough because the hips are way to stiff. Any pointers here would be awesome!
@inkorporeal204
@inkorporeal204 4 күн бұрын
As an addition to my other comment, if your actor isn't looking forward properly, I'd suggest you check that the initial target controller doesn't have the from world node. At least that worked for me
@ChezComics
@ChezComics 10 ай бұрын
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
@gotagamee
@gotagamee 9 ай бұрын
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).
@Ghuur
@Ghuur 10 ай бұрын
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 10 ай бұрын
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 10 ай бұрын
@@LincolnMargison Thanks! Will try that.
@kenalpha3
@kenalpha3 10 ай бұрын
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
@trumpisbackboi
@trumpisbackboi 8 ай бұрын
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
@Lorecastapendragon
@Lorecastapendragon 19 күн бұрын
@@alex-qn5xp i'm stumped too mate, I used the event graph to make the transform of the goal target and fed that into the target goal, but it wasn't punching in the right direction
@eivenhoe
@eivenhoe 10 ай бұрын
Such valuable and high skilled, thanks very much
@koko-nl5tp
@koko-nl5tp 8 ай бұрын
@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!!!
@cconnecta
@cconnecta Ай бұрын
Heya! Love your tutorials, very clear and fun!:) Random question I've been struggling with trying to adapt this setup: Is it possible to use this for a character that's running? I.e the hip will be translating and rotating but I still want the attack to hit the same spot as when it's in the reference animation.
@LincolnMargison
@LincolnMargison Ай бұрын
It would be a little more complex, as you wouldn't know where the landing spot will be ahead of time. For that, I would probably recommend some use of IKing to the target rather than just adjusting the angles.
@Dankfrankest
@Dankfrankest 9 ай бұрын
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
@alexrybin3798
@alexrybin3798 7 ай бұрын
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…
@Nudtanun
@Nudtanun 2 ай бұрын
W instruction! helped me alot! (as a student)
@enzonova2379
@enzonova2379 9 ай бұрын
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 6 ай бұрын
Its also a big question for me...do you find a solution?
@enzonova2379
@enzonova2379 6 ай бұрын
@@BakahiraI haven't had time to try anything yet😕
@RogueSheep4VR
@RogueSheep4VR 4 ай бұрын
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.
@Pietrasy
@Pietrasy Ай бұрын
Hi, I managed to create the whole setup and in the control rig view everything works as expected. The problem arises when on Begin Play I give the player the transform of other actor at the level where the player is to turn, but the player keeps looking (from the waist up) at the point 0,0,0. I take the “FromWorld” node when dragging the GoalTarget transform and make sure that the given location goes to the input of the Control Rig node in the animation blueprint. Do you have any ideas? Thank you for this tutorial!
@brunotorrao
@brunotorrao 10 ай бұрын
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 10 ай бұрын
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.
@inkorporeal204
@inkorporeal204 4 күн бұрын
Hi, is there a way to make the punch land the hit if the goal target is closer to the character? I'm guessing using an Ik for the arm would be needed to flex the arm accurately
@inkorporeal204
@inkorporeal204 4 күн бұрын
Ok, so kinda figured it out, you can use a basic ik to make the hand move toward the same goal controller, though for the animation itself you might need to animate the alpha with a curve so that it doesn't affect the animation startup
@무방스튜디오
@무방스튜디오 Ай бұрын
What is difference between rotation multiplication and additive? The result is similar but I can't undetstand the difference
@hirojiokada3899
@hirojiokada3899 2 ай бұрын
Thank u so much so much man u helped me a lot and solve many problems love u bro
@Hawaiianspawn
@Hawaiianspawn 9 ай бұрын
How would you reassign another target spot. Say you had a second punch that punches lower.
@AlessandroCristoffer
@AlessandroCristoffer 2 ай бұрын
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 2 ай бұрын
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 2 ай бұрын
@@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.
@LimitedPerfection
@LimitedPerfection 10 ай бұрын
Control Rig King. 👑
@lospe85
@lospe85 10 ай бұрын
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 10 ай бұрын
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 5 ай бұрын
Would hipfire and ADS make sense with control rig?
@LincolnMargison
@LincolnMargison 5 ай бұрын
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.
@FPChris
@FPChris 5 ай бұрын
Cool. I want to do something similar for archery
@TheTylerCathey
@TheTylerCathey 10 ай бұрын
is it possible to make the attack animation completely procedular too? like no animation file its all code?
@adamisme9176
@adamisme9176 10 ай бұрын
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 10 ай бұрын
yep, but it's a lot more trouble than it's worth I wager
@LincolnMargison
@LincolnMargison 10 ай бұрын
As other's have said, its possible but perhaps more difficult than just animating. What kind of attack/character were you thinking?
@TheTylerCathey
@TheTylerCathey 10 ай бұрын
@@LincolnMargison im trying to make a fully produceral combat system so bosses can sync with music, weapons clip though walls, etc
@LincolnMargison
@LincolnMargison 10 ай бұрын
@@TheTylerCathey Ah, well it's definitely doable, but will be easier if it's non-human characters
@MrYoucantsay
@MrYoucantsay 6 ай бұрын
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 6 ай бұрын
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 6 ай бұрын
​@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.
@kirur132
@kirur132 2 ай бұрын
@@MrYoucantsay changing goal target location in control rig to 0 0 0 fixed the issue with math being not right outside the control rig for me
@hujjaj4
@hujjaj4 5 күн бұрын
@@kirur132 You are an actial hero! I tried everything and all I got was a twisted up guy. Zeroing the target initial position fixed the issue, and now when updating target position in anim blueprint everything works! :)
@post1440
@post1440 10 ай бұрын
This is amazing!
@MGInspiration
@MGInspiration 5 ай бұрын
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
@อีลอนคาร์ก
@อีลอนคาร์ก 10 ай бұрын
Thank you bro
@RictorScale
@RictorScale 7 ай бұрын
This is fantastic thank you
@YuuJer
@YuuJer 10 ай бұрын
awesome! more rig math pls!
@seanlake7404
@seanlake7404 25 күн бұрын
@3:45, your character, as you note, twists when you connect it to the translate. However, mine does not. That doesn't occur until I hook up the later system you build. Weird.
@seanlake7404
@seanlake7404 24 күн бұрын
This may have something to do with the actual SKM you used vs mine. I'll attempt it with old manny and see if I can repeat the issue.
@pranjalbhattacharjee5601
@pranjalbhattacharjee5601 8 ай бұрын
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 8 ай бұрын
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 8 ай бұрын
@@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
@mymyChannel771
@mymyChannel771 Ай бұрын
Cool tutorial, maybe i'm missing something but once you play in game, the control rig will override the animation and it will not work, only in preview in control rig.
@LincolnMargison
@LincolnMargison Ай бұрын
If the animation is being passed into it, the control rig should be modifying the source animation the same as in the preview. Make sure you have the animation path plugged in to control rig in the animgraph
@mymyChannel771
@mymyChannel771 Ай бұрын
@@LincolnMargison but a set transform node in control rig is overriding any animation input
@LincolnMargison
@LincolnMargison Ай бұрын
@@mymyChannel771 Are you doing the set transform, or getting the transform -> modifying -> set transform? Because if you're getting the current transform and changing it, it should just be adjusting it based on whatever source is being passed into the controlrig node. If you *just* do a set transform and don't base it on the current value, it will override it.
@mymyChannel771
@mymyChannel771 Ай бұрын
@@LincolnMargison thank you, now i understand. what is a good way to add controllers transform to an existing state machine? so it can run in-game as an additional layer? offset node breaks things completely
@LincolnMargison
@LincolnMargison Ай бұрын
@@mymyChannel771 I'm not too sure I understand what you mean when you say add controllers transform
@Deculayn
@Deculayn 4 ай бұрын
How can we transfer the target to crosshair?
@seanlake7404
@seanlake7404 25 күн бұрын
Where did you get the punch animation>
@LincolnMargison
@LincolnMargison 25 күн бұрын
I can't remember, I might have made it for this video, or it might be in the animset pro pack. By the foot movement/sliding I think it's a mocap from that pack.
@WPSSSR
@WPSSSR 10 ай бұрын
yeah I'v looked for it))
@曾馨辉
@曾馨辉 8 ай бұрын
awesome……
@hernanacks
@hernanacks 7 ай бұрын
i cant do to work in game....can you explain how setup the goal and init parameters in anim graph?
@dobrx6199
@dobrx6199 10 ай бұрын
Nice 👍
@CosmicComputer
@CosmicComputer 4 ай бұрын
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 4 ай бұрын
@АнтонБашаркевич
@АнтонБашаркевич 7 ай бұрын
Can i transfer this target to mouse?
@LincolnMargison
@LincolnMargison 7 ай бұрын
Sure, just pass in the info you need into control rig
Control Rig - Tips & Tricks Speedrun
22:02
Lincoln Margison - Game Development
Рет қаралды 7 М.
Control Rig Tutorial: The basics of creating procedural animations in UE4 & UE5
22:13
Lincoln Margison - Game Development
Рет қаралды 39 М.
Муж внезапно вернулся домой @Oscar_elteacher
00:43
История одного вокалиста
Рет қаралды 7 МЛН
Quilt Challenge, No Skills, Just Luck#Funnyfamily #Partygames #Funny
00:32
Family Games Media
Рет қаралды 22 МЛН
Why Solo Developers Should Use Unreal
9:51
Thomas Brush
Рет қаралды 435 М.
Introducing EasyRain for Unreal Engine 5
12:40
William Faucher
Рет қаралды 94 М.
Unreal Engine 5 Tutorial: Move Arm with Mouse
15:53
M3D
Рет қаралды 4,1 М.
The 36 Best Blender Tutorials for Beginners
12:54
Film Stop
Рет қаралды 13 М.
The Right Way to Spawn Objects in Unreal Engine | UE5
18:03
Ali Elzoheiry
Рет қаралды 33 М.
Every 2D Node Explained in 9 Minutes !
9:19
Lukky
Рет қаралды 372 М.
Physics-Based Procedural Animation
3:57
Lincoln Margison - Game Development
Рет қаралды 1,6 М.
Unreal Engine 5: Adding Secondary Animation with Control Rig
10:43
Why Unreal Engine 5.5 is a BIG Deal
12:11
Unreal Sensei
Рет қаралды 1,2 МЛН
Edit Animations Using Control Rig | Unreal Engine Tutorial
8:28
Муж внезапно вернулся домой @Oscar_elteacher
00:43
История одного вокалиста
Рет қаралды 7 МЛН