When people move their eyes, the upper and lower lids tend to follow the eye such that the upper lid goes upwards when the eye moves upwards, and the lower lid moves downwards when the eye moves downwards.
The above images illustrate the 'softeye' effect. On the left, the character is looking downward. Without softeyes, the character's lids remain at their original position. On the right is a character using the softeye correction - the upper eyelid is lowered to just above the iris.
SmartBody leverages the blinking mechanism in order to adjust the eyelids. The softeye effect is produced by activating the blink expression until the upper lid falls to the proper eye level. Thus, characters that use softeyes must have a Face Definition and FACS unit 45 left and right define. Please see the section on Configuring Visemes and Face Animations for more detail. Since SmartBody regulates the FACS unit 45 for both blinking and softeyes, blinks will work appropriately when the softeye feature is enabled. For example, eyes that appear half-closed will only perform half-blinks, etc.
In the future, SmartBody will enhance the softeyes feature to include movement of the lower eyelid. This is important when the eyes are looking downward, where ordinarily the lower lid would drop slightly to accomodate such a movement. Since SmartBody can only modulate the amount by which an eye is fully or partially closed with a blink, a character's eyes might appear to be closed when they are looking downward, since the lower lid would be instructed to move upwards (when blinking) instead of moving downwards to make room for the eye.
The following attributes on the character can be set to adjust the softeyes:
Attribute | Description |
---|---|
eyelid.softeyes | Determines whether to use the softeyes feature or not. Default is set to True |
eyelid.rangeUpperMin | The minimum pitch of the eyelids in degrees. Default is -30. |
eyelid.rangeUpperMax | The maximum pitch of the eyelids in degrees. Default is 30. |
eyelid.tightWeightUpper | Lid tightening. How far down the eyeball to to drop the pupil, from 0 to 1. Setting this value to > 0 will result in a 'sleepy' or 'drunk' look to the character. A value of 1 means that the eyelid will drop to the level of the pupil. Default is 0. |
eyelid.delayUpper | Delay between the movement of the eyes and the movement of the eyelids, from 0 to 1. A zero value indicates that the lids will respond immediately to the movement of the eyes. A one value indicates significant delay before the lids adjust to the eye location. Default is .3. |
eyelid.closeAngle | The angle at which the eyelid is considered to be closed in degrees. Default is 30. |
Attachments:


