Animating a human hand for use in UE5

Hello,

I would like to animate realistic human hands in Unreal Engine 5. The hands should be able to perform various complex poses in real time on external input.

Unfortunately, I have no experience with animations so far. How would you approach this topic systematically?

Many thanks in advance.

If you have no experience in animation, I would say the most important thing is to have video reference of whatever you are animating, especially if its for a character. Film your hands doing the action. Then, try replicating the poses and timing in Blender.

I would try importing the video on a plane, that way I can easily compare the animation with the reference frame per frame. Every few frames, copy the pose from the video (no need to be pixel perfect or to do it on top of the footage, it’s mostly for the timing and the rough pose).

Once you have completed this task, go back and fix any mistake in the animation such as the character clipping through objects, or for an entire character, feet sliding on the floor. Also make sure the limbs move in smooth arcs and not in jagged linear trajectories like a robot.

2 Likes

Thank you for your answer.

I think I have not made myself clear. The animation of the hands is done in real time. So I have no influence on the speed of the animation. This parameter is determined externally.

How would you approach this topic?

  • Model and texture the hands in Blender.
  • Create the rig for the hands in Blender.
  • Create the individual poses for the hands in Blender. (Or directly in UE)?
  • Export to Unreal Engine?
  • Have a programmer make the connection between the data coming in externally and the corresponding poses?

Going by what you are writing, it sounds like you have little experience in this kind of task. I can try explaining it, but what you are trying to do is not a begginer’s project and I can only help to a limited extent if you don’t know Blender or Unreal well.

1 - Modelling the hand.

There are some options here. You could make the hand by yourself if you have the skill. If you don’t know how, you could search for some hand modelling tutorials, but a hand is not easy to do well and you would ideally need a few months of experience in 3D art before even attempting that. If you don’t have the time to learn, then you could try finding or buying an existing 3D model of a hand.

2 - Texturing.

Usually, this would be done using sculpting and painting for an organic model like a hand. Those are large parts of the 3D process and I can’t just explain them in a post like this. However, If you have found or bought an existing model like I mentionned, it might be already textured.

3 - Rigging.

You would need to know Blender’s armature system. This part won’t be that hard for a hand as it’s one of the more straightforward parts of the body to rig (you just need to be careful to place the joints in the correct spot, the base of the fingers starts a bit inside the hand).

4 - Creating the poses.

Most people who animate for game engines create some pre-defined animations and the game engine blends between them depending on what the character is doing. Unreal does have this ability too, usually using animation blueprints (I am assuming you know how to make characters in Unreal, if not, then you have a lot of learning to do before you can even think about doing this project).

I would animate the hand in Blender so that it stays still in the first pose for a few frames, then change to the second pose, hold the second pose still for a few frames and so on with every pose staying still for a few frames as part of a single long animation. Then you can export that long animation to Unreal and chop it into short sections there, with each pose actually being stored as a short animation without any movement.

5 - Exporting

Unreal can take animated characters in the .fbx format. Just make sure you check the options to export animations. You will have to re-do the materials, as the 2 softwares are not compatible in that aspect.

For everything to work correctly, Unreal expects characters of a very specific scale. If I recall correctly, The units should be set to meters in the scene settings, but the “unit scale” slider should be set to 0.01 (you may have to readjust the clip start/end values of the viewport too after this drastic change of scale). Then, you adjust the size of the model so its size values are plausible.

(I hope I got all that correct, that part of the process isn’t exactly intuitive)

6 - Programming

For that one, you should get the help of a programmer (especially one who knows Unreal), as I won’t be able to help. It sounds like you want to make something that isn’t quite standard, so you may need some more advanced programming done to make it work.

1 Like

It sounds like you’re using some kind of hand motion capture, like Rokoko gloves? (I assume that’s what you mean by “animation is done in real time”, because animation is definitely not done in real-time.) So something like this:

Might help?

1 Like

Thank you all for your help. This was helpful for getting started.

Now, i have finished a hand model and created the armature for it. It works quite well although I suck at animation:).

I still have a question regarding the armature setup. If e.g. the index finger should type for example different keys on a computer keyboard. The typing of the finger will always look the same, but the position of the wrist will sure change. How would you set it up for posing? Should the hand have an armature which is parented to an armature of the arm so both armatures can have independent poses?

This is an area that I don’t know that well, but Unreal has ways to have part of an armature do one animation and part of it do an other animation. So, you could animate the arm and wrist to have different possible poses and then override the finger’s animation so it does its own thing on top of that. Though I don’t know how well it would work in your case.

This is a technique that’s usually used so characters can do different actions and look around while walking: the legs do a walking animation and everything from the spine up is overriden to show an other animation.