FlailingFog / KK-Blender-Porter-Pack

Plugin pack for exporting Koikatsu characters to Blender.
307 stars 29 forks source link

Questions about different deformations between imported KKBP and exported FBX models #490

Closed SingularityF closed 6 months ago

SingularityF commented 6 months ago

Hi, sorry if I'm asking a dumb question, I don't have too much knowledge on this topic, and the wonderful YouTube tutorials have been VERY helpful to help me learn!

I understood that when importing a model using KKBP armature, I get IK constraints. And when I export the model to FBX, the IK constraints won't be exported. I'm exporting a model to FBX to be used in Unity, and I'm seeing that knee bend deformation is not consistent between the imported KKBP model (posed using IK) and the exported FBX model (posed using FK). You can see screenshots of the comparison below.

I've been experimenting a lot to understand what's causing this discrepancy but to no avail due to my limited knowledge. Could you help me understand if the discrepancy is a result of how the IK constraints are controlling the bones, or how the bones are controlling skin weights, or something else for that matter? Because my small brain is telling me that IK constraints are only indirectly rotating the knee bone so it should be doing the same thing as rotating the knee bone in FK, clearly I'm misunderstanding something.

And if possible, may I have some suggestions on how to give the FBX model better deformations? Your help would be much appreciated!

blender_leg unity_leg

FlailingFog commented 6 months ago

Hi, this is because of the joint correction bones. These bones automatically move around to make the mesh look better when some arm or leg bones rotate. They work using the driver and copy rotation features in blender, but they're not preserved when exporting to fbx. If you want them to work in unity you'll have to figure out how to apply the same automatic bone movements in that program.

SingularityF commented 6 months ago

Hi, this is because of the joint correction bones. These bones automatically move around to make the mesh look better when some arm or leg bones rotate. They work using the driver and copy rotation features in blender, but they're not preserved when exporting to fbx. If you want them to work in unity you'll have to figure out how to apply the same automatic bone movements in that program.

Thank you so much for your help! Based on your suggestions, I'll be able to do more research.