Using Gamepad Input in an AnimationBlueprint

I need to use a gamepad to control the rotation of the bones of a skeletal mesh (different parts of a robotic arm), I was told I need to use an animation blueprint for that, but I can’t access the gamepad input from there.
Is that possible, and if so, how?

The animation blueprint is used to animate a skeletal mesh.
Input is normally handled inside your pawn/character or player controller.
If you want to access the input inside the animation blueprint you have to either call an event of the animation blueprint from the pawn/character or you save the input/state inside your controller/pawn and access it with the TryGetPawnOwner node from the animation blueprint by casting the return value to the respective class.

Will I it work? Meaning, will the skeletal mesh be able to phisicaly interact with other objects (grab, move, etc).
And can you point me to a tutorial or something explaining how to do it? How to save the input to access in the other blueprint or how to create the animaiton event.

Check out this tutorial.

At the timestamp he shows how to pass input to the animation plueprint from a pawn. For your example of cause you have to interpret the input as some kind of rotation.

What you are planing to do is possible but you will probably have a hard time doing it if you don’t know the basics of the engine.

I tried to do just like in the video but it isn’t working yet
this is what I did

When I manipulate the values of the variables the mesh responds correctly, so I assume the issue is with casting the Input values from the other Blueprint

Yep, it has been hard already, but I’ll figure something out… eventually lol
Do you think I should use another platform/engine to make this project? It is a robotic arm, controlled by a gamepad to make it manipulate objets around. I have no experience with unreal, but i do have experience programming in C.
I dont mind the challenge of figuring out how to use Unreal, I learned a lot already, I just wanna make sure that I’m doing what is best for the project.

Looks fine to me what you did there.
Probably there is something not working right when setting the axis values inside of your Pincal_Blueprint. Did you check if it works with a keyboard? Maybe the engine is not receiving your controller input. Make sure that your input is setup correctly and also that the input is interpreted to a rotation.

Sorry but i have no idea if there are better solutions for simulating a robotic arm. But you can definitely do it with unreal engine as well you just have to learn some parts of the engine.

It is receiving the controller input fine, I’m using the left stick/mouse to move the pawn, when I used tried to send that input tho the other Blueprint it didnt work.

I got the float value of the input and used “Make Rotator” to put in “Transform (Modify) Bone”, like in the image I sent before.

It seems like it is failing to cast, is the “Object” correct?

Yea the cast is failing.
Are you casting to the correct blueprint?
Is your blueprint a child of pawn?
Did you set the animation blueprint inside of your mesh component?

Make sure that your “Transform (Modify) Bone” node has its rotation mode set to add to existing.

You meight also want to multiply your axis value by a rotation rate scale value for better rotation speed control and the delta time to keep it frame rate persistant.


That was the issue
Its finally working!!
Thank you very much for the help.