Very looking forward to it. Have you guys considered Constraints management with this? I definitely want to see if I can apply this to hairs, but I am concerned about managing Constraints when each Hair Skin contains at least 4 strands (each with their appropriate physics profile).
4.2-beta status update
We know organizing many constraints is a pain, but let's not add too much to the release that is taking extra long! We do want to get to that soon though.
No, it's our own physics. A 3rd party library would be overkill for what we need to do, plus we need it to be very lightweight and run in all game toolkits and languages. It's relatively simple to get basic physics going, though the devil is in the details.
I just have to say the sneak peek looks dope! You guys are doing amazing things, I wish you all the best!
The good thing that you left as with pretty neat 4.1 Spine editor version which is bug free and works amazing. I would struggle with 4.0 honestly would rather work with 3.8 than 4.0
So take your time.
A little informal update: we've been doing an internal beta and it's looking good. We hope to have the 4.2-beta available in a week or two.
Below is a smattering of examples, done quickly and a little roughly, but they show some of what is possible.
First here is the old alien animation:
Here it is with physics on the head:
It works really well for any hanging parts or accessories, like Spineboy's hair. Here all of Spineboy's hair keys have been deleted and physics constraints added. Note how the hair is dynamic and responds similarly to how it was keyed (but without all that work!). It also responds across animations changes and there is now dynamic hair movement during the aim animation:
Here the platform from our Wave Principle - Animating with Spine #4 video, but without keys on the platform tail:
Here's a chain of bones that behaves similar to a whip when rotated. The bones near the end are also scaled using physics. There are tons of interesting effects that can be squeezed out of the physics! This one could maybe be used for flames in a fire. All of this movement comes from just rotating the one bone.
Here's a quick test on the mix-and-match hair, physics giving some rotation and some translation lag:
It's not limited to just accessories, it can be used on major character features, like the raptor's tail. Here is the raptor with all the tail and gun keys deleted for walk, jump, and roar. 317 keys were deleted! The tail is straight and the gun doesn't move.
It took 12 mouse clicks to setup physics on the tail and gun, giving this:
More time could be spent refining the physics settings, but this is already great. The amount of time physics saves animating things is huge AND the results are better and react dynamically. Plus since your animations have hundreds fewer keys, the data files are smaller.
Anyway, back to work we go to get it finished up. It won't be too long now!
Nate Will the the runtimes be ready when 4.2 beta debut?
There's no guarantee that all the runtimes are ready during a beta. To start, only spine-libgdx will be ready. spine-unity and the others will be ready shortly afterward, roughly in popularity order.
Nate How did your team redesign the physics differently this time around?
Just to show my excitement, but not really expecting a response to this:
I'm wondering if we'll be able to key the bones affected by physics nonetheless, kind of overriding the procedural animation, or it's either one or the other.
I guess I'll see as soon as 4.2 stable comes out
Instead of nodes with springs between them, the bone's transform properties are offset based on the bone's movement, then return to the unconstrained pose using physics. This allows you to specify the pose as normal, but have physics give you automatic overlap and follow through.
You can indeed key the bone properties constrained by physics. Physics offsets the unconstrained transform values, so you can manipulate the transform values yourself even when mix is 100%. Like other constraints, you can mix between the physics (constrained) pose and the unconstrained pose.
If all that sounds complicated, don't worry, it's quite intuitive in reality.
Looks bloody amazing!
Nate Will there be nodes with springs in-between type of physics? I have started to add that type of physics to my Vtuber application but I am not sure if I should keep that physics system.
Currently we have removed the node/springs in favor of the new system. I'm not sure they'll come back. They were useful for a few particular things, but otherwise the new system is much easier to get good results. A lot of that comes down to the unconstrained pose being what the user wants and the physics just offsetting that. With nodes/springs they often fall down or end up in a straight line.
Nate Alright, thank you for the insider info. I will keep it to benefit from both types of systems.
Makes me so happy with having picked Spine up so recently to see this coming soon. Looks like a better baked and polished version of the physics motor/dynamic physics features that were in Creature2D (seems to have been discontinued ) which I used in the past for a bunch of game animation stuff, but I can't wait to get to play with this stuff with Spine's way better runtimes compared to anything else I used prior.
Was just watching Armanimation's stream and this looks more amazing than I could have imagined. V4.2 seems like it could make so much marketing bait material to advertise Spine to 2D game artists and 2D animators, and I mean this in the best way possible. Hope you get a bunch more new people pick it up for this awesome update.
A question, will third party runtime developers be able to support the beta features while this version is in beta? I know you said that the features would come to the (official I presume) runtimes in order of popularity (aside from libGDX runtime dropping first for obvious reasons) but I don't know how well this translates to runtimes that are not maintained by Spine team?
Can I somehow become a beta tester? I would love to try out and experiment and help with the process!
FatalExit Third-party runtimes will have to implement the physics constraints That is a whole issue to worry about.