- 已编辑
Avatar Body Size Customization
Hey everyone,
Coming from an After Effects background in animation, I'm fairly new to spine.
I have a client who is wondering if Spine might be the best solution for augmenting previously created artwork for an Avatar.
They have a Party Creator game, too which they're adding an Avatar Creator and Customization feature. My client asked if it's possible to add new body shapes which would impact a whole lot of existing illustration assets (outfits and the avatars themselves). They're wondering if using Spine to deform the existing avatar and clothing illustration to a new body shape (ie: bigger midsection or heavier-looking kid) is a good solution.
Is that something that having multiple skins would work with? Where the body is deformed and the skin along with it to make a new avatar? Or is that something that just simply having new art assets would be a better solution.
You could possibly deform the body proportions using the latest beta of Spine. For example, if you use several constraints to deform the proportions and add them to a skin (only possible in beta for now) you could get this result:
Here just the length of the arms and legs, and the hips position was changed, but imagine what you could achieve with a little more work on changing the proportions (:
Thanks Erikari!
If the character doesn't actually have to move at all is using the constraint and deformation still the best route to go? I don't need to rig this character for movement, I just need to rig it to have clothing swap in and out with skin attachments.
Then to have the torso size change, is it possible to have one setup for say, 50% bigger, and have it affect all clothing skin attachments?
Or would it actually just be easier to deform each of the 16 pieces of clothing to be 50% larger with deform meshes, and then have them as skins that overlay the character?
Erikari showed how you can use skin constraints to move bones by applying a skin. You could also move, rotate, scale, etc bones with code at runtime. If you want bigger in all directions, just scaling the root bone is easiest. As mentioned, you can also scale individual bones. However you manipulate the bones, it will work the same even if the character is not animated.
You don't usually want to use deform keys on meshes. It's better to weight them to bones, then move the bones. This is because each deform key stores all the vertices for each bone the mesh is bound to (eg 100 vertices weighted to 6 bones means each deform key stores 600 values), and each of those vertices needs to be interpolated to compute its position between keys. By using bones to deform the meshes via weights, you only need to key the bones, which is much less data and processing. Also you can swap out the mesh with a different weighted mesh and still benefit from the bone movements (or bone positions in your case, if you don't animate the bones).
BTW, your image links are broken (private).
Erikari :Here just the length of the arms and legs, and the hips position was changed, but imagine what you could achieve with a little more work on changing the proportions (:
I just noticed skin bones and constraints
feature and trying it out. but with no success. I add same bone under 2 dif skins wherever I change properties of that bone it affects of the main bone.
Maybe you have any video showing it? or project for download?
Hello warmanw! The trick to achieve those two different body proportions above was not to edit the bones themselves, but to add skin specific constraints to alter them differently for each skin.
An example:
in the first skin, I can add a transform constraints that scales the bones up mimicking for example the root bone scale, and change the hips location with another constraint.
In the second skin I have them scaled less, and have the hips positioned differently thanks to another skin transform constraint.
You can download the project I was experimenting with here:
mix-and-match-different-proportions.zip
(please note it is not the final version, as it was just done for tests)
if you try to open the skins panel and activate one of the two tall or short skins, you'll see it in action
Thank you for sharing it.
so what basically we have. Skin is just showing and hiding a bone from runtime. which we can use very well as constrains. bone modification is not saved in the skin.
was thinking about it as this feature.
https://github.com/EsotericSoftware/spine-editor/issues/8