romanalerif

Hello!

I can't figure out why bones scale works differently in Setup and Animation modes. In my project main bone is controlled by IK target bone, other bone and slots are parented by that main bone. There are two paths and many bones that have path constraint.

The question is why when I'm moving target IK bone in Setup mobe, all paths and bone chains constrained by them are scaling correctly (just as I expext) and in Animation mode bones on one of the paths scaling differently? I already tried rearranging constraints and it didn't help. Am I missing something?

Setup mode:




Animation mode:


romanalerif
  • Messages: 11

Nate

It's hard to say, we'd need to see the project file (and probably images). You can post or send them, if you like: contact@esotericsoftware.com
Avatar de l’utilisateur
Nate

Nate
  • Messages: 11386

romanalerif

Thank you for reply, I sent you the project
romanalerif
  • Messages: 11

Søren

This one was a little tricky to debug, but there are a few things to take care of here.

First of all, the parenting is important. When beam_main is stretched or compressed the bones parented to it will be affected by this, as well as the stretching or compressing that is happening on the path they are constrained to.

To fix this, I created a root bone for each of the bone chains. At the same time I made sure that all the path constrained bones had the same parent.

The reason you are seeing such a different between Setup mode and Animate mode, is that when switching to Animate mode, the length of the bones is "locked", so any stretch or compression is based on the the values from Setup mode.

In Spine 4 you will see a warning when using Chain Scale on nested bones. Maybe Nate can give a more technical explanation as to why this is?

I've emailed you a project that should hopefully allow you to continue with the rig
Avatar de l’utilisateur
Søren

Shiu
  • Messages: 2444

romanalerif

Sadly, your setup didn't help me to achieve needed result and behavior. I need all bones to be scaled with main bone controlled by IK in order to scale "beam". With your tweaks length of the parts of the beam became totally fixed and just "fold" when I try to downscale it with IK moving.

Can I somehow create scaleable "beam" with paths and IK for targeting?

UPD: And I can't figure out why bones on one path (flow) works as I expect and another (beam path) work incorrectly

UPD2: Looks like a solution was easier and simplier: "Constant speed" was uncheked on the beam path. Thank you anyway for your active support!
romanalerif
  • Messages: 11

Nate

Ah well, glad you figured it out!
Søren a écrit:In Spine 4 you will see a warning when using Chain Scale on nested bones. Maybe Nate can give a more technical explanation as to why this is?
It's due to the way the path constraint needs to scale the bones for chain scale mode. When bones are nested, scaling a bone scales all its child bones. The path constraint doesn't compensate for this, so the first bone will be correct, but subsequent bones will have the wrong scale. The path constraint would need to do a lot more math to compensate for the scale from each parent bone, but that would be wasted effort -- it's better to just not nest your bones. The result is the same, but with a lot less math, and nobody likes math.
Avatar de l’utilisateur
Nate

Nate
  • Messages: 11386


Revenir vers Bugs