Very cool. I'm glad you thinned out the fingers in your model, the current rigged hand is a bit too meaty for me.
If you have the latest skeletal assets, there should be a GetArmRotation() function inside the HandModel.cs script. You can use that to set the rotation of the forearm in your rig. So it's similar to the public palm Transform in the RiggedHand.cs script, you should have a public Transform for the forearm, and only set the rotation of it in the Update function. Here's a modified version of the RiggedHand script that does this, though you will need to set the foreArm transform to that part of your rig in Unity's inspector.
public class RiggedHand : HandModel {
public Transform palm;
public Transform foreArm;
public override void InitHand() {
UpdateHand();
}
public override void UpdateHand() {
if (palm != null) {
palm.position = GetPalmPosition();
palm.rotation = GetPalmRotation();
}
if (foreArm != null)
foreArm.rotation = GetArmRotation();
for (int i = 0; i < fingers.Length; ++i) {
if (fingers[i] != null)
fingers[i].UpdateFinger();
}
}
}
If it complains that you don't have GetArmRotation(), you don't have the latest Unity assets and you should update: https://www.assetstore.unity3d.com/en/#!/content/17770
Also, if you update make sure you delete the Plugins/x86 folder to delete the old plugins.
Hope that helps