Note: This is our preliminary documentation for the Avastar 2.0-beta23 update. If you are looking for the ongoing test report of Avastar-2.0-beta then please proceed to the Avastar-2.0 test report.
The Bento Project is available...on the SL main grid (Agni) since a couple of months (you need the Bento viewer, see below). The new skeleton has been finalized and many issues have been fixed.
The most important changes...are on the face, especially the Mesh eyes now behave exactly in the same way as the System Eyes do. They even scale with the eye size slider!
Avastar fully supports Bento...and all the related Appearance sliders, for human characters as well as for non human characters. We made Avastar behave just like the SL viewer does, so you now get true "What You See Is What You Get" character editing in Blender.
Please use this Avastar version with care and report back any issues! We appreciate any feedback!
Important Note: The Rig Upgrade Tool still has issues when the Origin and the root bone are displaced. We are working on a fix for this.
PreparationsIf you want to test the propsal then you need:
- The newest Bento Viewer from the Official SL Alternate viewers page
- Avastar-2.0-23 from your Download folder
The knowledge DepartmentHere you find some important informations which can help you to understand how things are working.
Some Bento Gotchas
The source of all issuesAnimations can possibly affect your Avatar shape while the animation runs. The main reason for this is that sliders and animations both are allowed to modify bone locations (translate). This can cause a conflict:
- The user edits the Shape by using the appearance editor.
- The Shape sliders place the bones at specific locations.
- A creator publishes an animation with Translation components.
- User plays the animation on top of their shape.
New Bones for better Animations
- Optimize the system to allow an easy creation of good reusable animations.
- Minimize the influence of animations on the character shape.
Sidenote from the developersHere we have a situation where we can not make things right. we have 2 choices:
Use only scale on the slider definitionIn this case rotation-only animations will work regardless of the slider settings. This makes animations reusable. But the downside is that the bone chain can not easily be reused for different purposes, especially when the bone chain length shall not depend on the Avatar height.
Use only Offsets for the slider definitionIn this case we can easily reuse the bone chain by adding a joint offset to the bones in the chain. This detaches the bone chain from the slider influence and now changing avatar height has no longer any influence on the reused bone chain. But now we have a problem with animations: translation based animations will spoil the slider settings, and rotation based animations will spoil the shape (depending on the slider setting)
The final developer decisionAt the end we only had a choice between disabling sliders entirely for the wings and tail, or add offsets which can be disabled on purpose by the creators. We decided to use offsets as that is better than nothing at all. So at least for simple cases the avatar height sliders can influence the bone chains when wanted. (This note was added by Matrice)
Alt Eyes parented to mFaceRootIn the original Bento proposal the alt eyes have been added to the exact same location as the system eyes and they have been parented to mHead. Now the alt eyes still are located at the same location as the eyes, but they have been parented to the face root. This has been done to better support creators of non human heads.
Alt Eyes are auto animated
Scaling for custom mesh eyes (Eye Size)When you weight your custom eyes to the mEye or the mFaceEyeAlt bones, then scaling the eyes with the eye Size appearance slider now also affects the size of custom mesh eyes (right side of image).
Eye Lid Joints (mFaceEyelid...)
The Jaw (mFaceJaw)
The Jaw Angle (mFaceJawShaper)
Side note from the developers:The Jaw Shaper bone can be parented either to the Jaw or to mFaceRoot. Both solutions work but parenting to mFaceRoot has 2 advantages:
- If we parent to the Jaw bone, then you can see in the left image how the Jaw Shaper rotates together with the Jaw (when mouth opened). This can cause a sinking of the neck into the mesh, see between the jaw and the neck. Of course this depends largely on how the neck and jaw have been weighted. When the Jaw Shaper is parented to the Face root (right image), then the bone remains at its position independent from the Jaw rotation. Hence parenting to the face root seems to be the more stable solution.
- The Jaw Shaper bone can be easy reused for different purposes, like for example unicorn horns. So the decision to parent to mFaceRoot seems to make the system more flexible.
Lower Teeth (mFaceTeethLower)
Lower Lips parented to lower Teeth
Upper Lips parented to upper Teeth
More about Lips
Side note from the developersSome creators have proposed to get rid of the teeth bones because they are anatomically not necessary. In principle one could attach the upper teeth to the Face root and the lower teeth to the jaw bone. But when you do that, then you no longer can shift the mouth up/down/left/right by using the mouth appearance sliders. Hint: To get good slider behavior you should weight the lower teeth to the lower teeth bones and the upper teeth to the upper teeth bones. If you decide to weight the teeth to other bones, the sliders can possibly damage the teeth shape. (This note was added by Matrice)
Nose Size and Nose Width
Head LengthOriginally Bone offset was used to shift the teeth forward/backward. The Teeth Bones now use scaling to get into position. The new behavior is much more comparable to what the system character does:
Egg HeadThe Egg Head Slider can not be set up to reproduce exactly the same changes on Custom meshes as it does on the System Character. To get this done we needed at least one more bone on the top of the head. However after a lot of time and experimenting the custom meshes now look at least somewhat comparable to the system character:
Tongue Bones moved upwardsThe Tongue of the system character is placed very deep inside the mouth, well below the lower teeth. Originally the tongue bones where adjusted to the system tongue. But this looked somewhat wrong. Now the tongue has been moved upwards, see image (right). It is unclear if this is a better choice or not. Feedback for this is wanted.
Tongue Parented to Lower TeethThe tongue should move along with the mouth for the mouth shift slider and the mouth position slider. Therefore the Tongue Base has been parented to mFaceTeethLower (ionstead of the original mFaceJaw).
Additional Sliders for Eye Brows (Hair Style Editor)Following Hair Style Sliders have been attached to the Bento Bones:
- Eybrow Size
- Arced Eyebrows
- Lower Eyebrows
- Pointy Eybrows
- minor tweaking of the lips (lip fullness, thickness, ratio now more appealing)
- Lip Cleft Depth now mostly based on Scale
- Chin Depth now only uses the Chin Bone
- Wide Eyes now uses scale
- Egg head reworked (made much less complex)
Posing Sliders and Shaping SlidersWhile working on the changes above it turned out that some sliders seem to be more useful for defining specific poses like the upper eyelid fold slider. While other sliders are purely made for changing the Shape like the head size for example. It looks like the Posing Sliders are more troublesome when combined with animation. Here is a list of Posing sliders which should not be used for shaping the character if the user intends to apply facial expression animations:
- Outer Eye Corner
- Upper Eye Lid
- Mouth Corner
Posing Bones and Shaping BonesWe also seem to have Bones which are dedicated to be used for Animations only (not weighted), while other bones are weighted, but mostly used for Shaping. Here is a list of affected Bones :