Hello!
Are you referring to this tweet? https://twitter.com/AkinariShibata/status/1104396832908558337
just yesterday another user asked the same thing via mail, here's a breakdown I made for them:
Akinari Shibata's works are indeed amazing! They didn't share the process, so I can only guess, I don't see other bones besides the upper and lower body, so likely they used mesh deformations to simulate the 2.5D deformation.
Surely they used at least 2 images (front and back) and possibly a patch image underneath the two of them for the middle part.
My thought is that they rigged the front body to be bound to the upper and lower bone as seen from the front, then rigged the back as seen from the back.
The backface culling setting, which can be enabled in the editor and needs to also be enabled at runtime in case it's used, allows a mesh vertex to be hidden if backwards. Settings - Spine User Guide: Backface culling
This means that Spine will automatically hide the back of the body while the front is showing and vice-versa if things are done correctly.
In a perfect setup that makes parts of the rig reusable and optimized for performance, one would use at least one bone, or better 2, to control the 2.5D deformation.
Here's an example of how this sort of setup can be achieved: Mix and Match example: Face control
If that were the case of the tweet, then there would be one bone and no constraint as the two body bones seem to act as pivot of the body rotation.
(you can see the difference in the 2 setups in these two rigging tips: Spine: Tips: 5 cube1 and Spine: Tips: 6 cube2 )
Therefore a bone would be placed on the side that faces us, in animate mode this bone would be animated to do a right-left movement like in the tweet, and the body meshes would be weighted to follow it.
This is a good workflow as it allows to change the weights while directly seeing the results.
This allows rigging the front body without issues, as the bone is placed in the correct position from the start. But to rig the back of the body the bone needs to be in a different position.
This is where the last feature needed to achieve this comes in place: Weights - Spine User Guide: Update bindings
Clicking this button stores the current position of the bones bound to a mesh and the mesh distortion as the mesh own setup pose.
So to use this to rig the back of the body we would work as follows:
- create the body back mesh as seen normally from the back, bind it to the two body bones, and the 2.5d distortion bone, plus a bone that we know doesn't move such as the root bone.
- change all the weights to the root bone so that in animate mode we're sure the mesh didn't get distorted.
- in animate mode rearrange the body bones to match the back body mesh exactly how it needs to appear at the extreme of the distortion.
- press update bindings at that frame to store this setup pose in the mesh (perhaps save a backup animation to make sure you don't accidentally move these bones accidentally while tweaking the animation)
- at this point you can edit the weights to get that perfect seamless movement you see in the tweet
This was quite a long explanation, but I hope it's clear 😃 don't hesitate to ask if you're curious to know more, we also offer lots of learning material in the learn section of the website.
I'll likely do a new skeletember tip for twitter in September about this since it's an interesting setup to break down!