Experimenting with New Transform Constraint
Thanks for the credits Nate! I just extended Erika's version, so half the work was her's .
Also played with the same thing but in a slightly different way.
Nate I finally had time to open the project, and honestly—it's brilliant. It’s definitely more complex and a bit intimidating, especially since everything in Spine so far has been pretty easy to grasp. Building rigs used to feel predictable, but now there are so many new ways to approach certain constructions that it feels overwhelming. I can only imagine how other newcomers might feel.
We really need to put a lot of resources online to help others catch up quickly. I'm planning to share this project on YouTube with a step-by-step tutorial, if you don’t mind @Harald. I think it does a great job covering many aspects of the latest transform constraints
Agreed, as Spine projects get more complex they feel like magic at first! It can be OK if the complexity is truly warranted, but as you said we should help people understand and achieve the most common goals so they can apply that to their more unique scenarios.
Using a transform constraint like this and leveraging the wrapping of world rotation 0-360 to achieve modulo is very clever, but probably not the simplest solution. Now that we have sliders, you should be able to get a much more straightforward solution. It's also more powerful, as you can animate the walk however you like.
Ah lol Yes! we can just move hip and call all the legs to move by binding hip to sliders. I am trying that next!
For the spider to pause between steps, you'd just animate it!
Here's a neat one:
Loading Image
There's only a single bone rotating here. The seconds hand is controlled be an animation, so there is full control of the tick-to-tick movement. Also note the shadows.
You have to share this project with us! I only need the images though want to find out the way myself
Good luck!
- 수정됨
Hi @Nate ,
is it possible to share the solution, how it works? I have done an animation for the "minute hand"-bone (10frames) with one tick. Then i created a slider constraint with "second hand"-bone rotation for "minute hand"-bone-animation, limitation 90 to 89. So when the second hand-bone passes through the 12, the "minute hand" ticks one further, but once it hits "3" (on clock, 90° more) it snaps back. Frame-counter of slider constraint jumped back from 900 to 0 in this moment --> It jumps back, when it hits 0° rotation. What steps am i missing?
Do i have to use the 180°-360° rotation split, what Harald has written above to avoid the snap? Or is there another solution with the slider?
Sure, I can post the finished project, but that ruins the fun a little so I'll wait a while. If I post it, there would be a strong temptation to just look at the solution rather than figure it out. Better not to tempt!
Probably you are running into "world rotation wrapping". World rotation is defined as the direction the bone is pointing in world space, which in the Spine editor is screen space, ie your monitor. There are only 360 degrees in a circle. As a bone rotates, at some point its world rotation has to jump from 359.999 back to 0. That jump can wreak havoc with your slider or transform constraints, since it will cause the target bones to jump.
0 world rotation is pointing right, which would be 03:00 on a clock. That's why you see a jump at 03:00. As as you rotate clockwise past 03:00 you jump from 0 to 359.999 degrees world rotation.
To prevent jumps with your constraints, use local space by checking Local
on the left (source bone) side of the transform constraint properties. In local space the local rotation is defined so 0 degrees is pointing in the direction of the parent bone and any other value is how far from 0. In local space you can go > 360 or < -360, around and around, without any jumps back to 0.
It's so common to use local space on the source side, maybe it should be the default.
Ok, local was already a solution option, but then my constraint couldn't move anymore. I could see i still used the world coordinates instead of local coordinates. So one step further . Thanks for the hint. So don't share the project.
Nate Nothing seems to be working properly
I used the motor bone to rotate all the hand and added a tick animation (a slider bound to the motor bone) for the second hand, which ticks but doesn’t move forward. I can’t figure out how you manage the stepped movement of the minute hand.
For the shadows, I use transform constraints to just move them locally from -20 to 20 on the Y-axis during the 0–180° rotation. But when I duplicate the constraint for the other half, the constraint overrides the previous one.
Any tips for us?
the shadows also can be done with sliders but I really want to see if there is an option with transform constraints
my shadows work but only half the cycle