Replies: 2 (Who?), Viewed: 180 times.
#1 20th Jun 2022 at 7:43 PM Last edited by lizcandor : 20th Jun 2022 at 8:11 PM.
Using IK targets in-gameHello!
I'm trying to figure out a method for using IK targets in interaction animations and having them actually look about the same in Blender as they do in-game, and I was wondering if anyone had any thoughts on how to improve it further - what I've got now is better than I started with, but not quite good enough yet. Based on (A)'s information in this thread, what I've done (apologies if any of my terminology is incorrect/unclear, I'm not that experienced with Blender) is:
1) In Blender, create an IK target for the left hand bone of my interaction actor's rig (following TheSweetSimmer's steps for this)
2) Constrain the hand bone to the IK target with an IK constraint influence of 0.1
3) Apply 5 constraints to the IK target itself: 3 "copy transforms" constraints for the 3 slots on the interaction target's rig that I want the actor's left hand IK chain to target at different points in the animation, and a "copy location" constraint and a "copy rotation" constraint to apply the location and rotation of the actor rig's left hand slot offset bone (L_slotOffset) to the IK target as offsets
4) Insert keyframes at different points in the animation to modify the influences of the 3 "copy transforms" constraints on the IK target, so that at every time point one of them is much stronger than the other two
5) Copy the influence keyframes from those 3 constraints to the Z position keyframes of the L_Info1, L_Info2, and L_Info3 bones on the actor rig
6) Export the CLIP after some other steps specific to the exact thing I'm trying to do (I'm making animations for sims with different heights thanks to CmarNYC's height slider, so the animations need to be converted from the taller/shorter version of the adult rig I got from using the SimRipper on some saved sims, to the standard unmorphed adult rig)
7) Import the CLIP in and add IK target info, giving the left hand IK chain 3 targets
The result of this looks basically as desired in Blender, but has a few spots in-game where the actor's left hand seems to be in the right location but with the wrong rotation, and I'm trying to figure out why.
#2 20th Jun 2022 at 9:48 PM
The rotation is calculated depending on the rotation of the hand and the actual slot itself. So if you're adding IK to a Sim that's targeted to another Sim, the rotation values are inversed (because the two Sims have opposite rotations). I normally only add world IK to my animations which is the most easiest to add, but if I need to add IK between 2 Sims I invert the slot of which the IK is targetting. Let me know if you want to know more about IK targets!
#3 20th Jun 2022 at 10:24 PM
Fixing the inversion helped, thank you! My animations are now a lot more consistent between Blender and the game; I clearly still need to refine a little more (both the IK targeting method and the actual animation - so far I've been aiming for being consistent over being actually good) but this is very encouraging!