Need advice on how to implement a certain animation in Unity

Scenario
A first person view of two arms with a clipboard and a pen. What im trying to do is make this into a user interface for a game. The player will see a set of options displayed on the clipboard which he can select, once selected the right arm with the pen has to put a check mark next to the selected option.

Animating it in Blender wouldn’t work because it would be a fixed animation, but according to which option selected the hand has to have a different position (sometimes higher sometimes lower).

Question 1
How do I achieve this? Do I split up the model and make a standard checking animation, then I could alter the position of the right hand to conform with the position of the selected option in Unity itself?

Question 2
I have put the hands into the correct default position in Blender (pose mode) but when I quit Blender the pose is lost. This is a little aggravating because I’m expecting to come back to a working environment that had left previously, which is not the case. So how do i put them in this default position so i always come back to it?

Thanks in advance

Attachments


I’m not really aware of the topic but you might be able to blend different Animations, but I think it would be best to work with Inverse kinematics in Unity.

Did you keyed the posed bones? otherwise I can’t tell why it should reset…
btw. you can reset positions and roations by pressing ALT+G or ALT+R

Edit: I just realised that you better move this thread to support>>animation and rigging :wink:

It was too difficult and impossible in unity free so i made set animations.

I’m not sure if it helps because the question kind of confused me, but if you want some bones to have fixed animations, you can change which bones an animation affects in the script. Its something like

animation[“animation_name”].AddMixingTransform(“bone”);

So that could be useful if you want to make the hand holding the clipboard have a fixed animation while the other doesn’t. Then for the other hand you could probably just move the IK bone to move the arm. You can find it in the script with a line similar to this (I used example bone names to show the format, obviously use your actual transform names)

gameObject.transform.FindChild(“Armature/Torso/Hand_IK.R”);

I hope that helped, and sorry if I just told you a bunch of stuff that you already know.