tuatec / TTToolbox

TTToolbox provides useful helper scripts to automate your character integration workflows in Unreal Engine
MIT License
107 stars 29 forks source link

constraint solver seems to have issues with VBs #21

Open AchimTuran opened 2 years ago

AchimTuran commented 2 years ago

Describe the bug Somehow constraining these VBs seem to impossible with the current implementation of the constraint solver.

To Reproduce Steps to reproduce the behavior:

  1. Add those VBs to the skeleton asset
    ((VirtualBoneName="VB foot_root",SourceBoneName="root",TargetBoneName="root"),(VirtualBoneName="VB foot_l",SourceBoneName="VB foot_root",TargetBoneName="foot_l"),(VirtualBoneName="VB foot_r",SourceBoneName="VB foot_root",TargetBoneName="foot_r"),(VirtualBoneName="VB hand_l_to_hand_r",SourceBoneName="hand_l",TargetBoneName="hand_r"),(VirtualBoneName="VB hand_r",SourceBoneName="VB hand_l_to_hand_r",TargetBoneName="hand_r"),(VirtualBoneName="VB hand_l_to_ik_hand_gun",SourceBoneName="hand_l",TargetBoneName="ik_hand_gun"),(VirtualBoneName="VB ik_hand_r",SourceBoneName="VB hand_l_to_ik_hand_gun",TargetBoneName="hand_r"),(VirtualBoneName="VB hand_r_to_hand_r",SourceBoneName="hand_r",TargetBoneName="hand_r"),(VirtualBoneName="VB hand_l",SourceBoneName="VB hand_r_to_hand_r",TargetBoneName="hand_l"),(VirtualBoneName="VB hand_r_to_ik_hand_gun",SourceBoneName="hand_r",TargetBoneName="ik_hand_gun"),(VirtualBoneName="VB ik_hand_l",SourceBoneName="VB hand_r_to_ik_hand_gun",TargetBoneName="hand_l"))
  2. Try to use these constraint settings in the IK rig
    ((ConstraintBone="root",ModifiedBone="ik_foot_root"),(ConstraintBone="foot_l",ModifiedBone="ik_foot_l"),(ConstraintBone="foot_r",ModifiedBone="ik_foot_r"),(ConstraintBone="root",ModifiedBone="ik_hand_root"),(ConstraintBone="hand_r",ModifiedBone="ik_hand_gun"),(ConstraintBone="hand_r",ModifiedBone="ik_hand_r"),(ConstraintBone="hand_l",ModifiedBone="ik_hand_l"),(ConstraintBone="ik_foot_l",ModifiedBone="VB foot_l"),(ConstraintBone="ik_foot_r",ModifiedBone="VB foot_r"),(ConstraintBone="ik_foot_root",ModifiedBone="VB foot_root"),(ConstraintBone="ik_hand_gun",ModifiedBone="VB hand_r_to_ik_hand_gun"),(ConstraintBone="hand_l",ModifiedBone="VB ik_hand_l"),(ConstraintBone="hand_r",ModifiedBone="VB hand_r_to_hand_r"),(ConstraintBone="hand_l",ModifiedBone="VB hand_l"),(ConstraintBone="hand_r",ModifiedBone="VB hand_l_to_ik_hand_gun"))

Expected behavior VBs are constrained correctly.

Screenshots image

Desktop (please complete the following information):

Additional context Issue was found in #20.