Using geometry and normal constraints, we can force group nodes to follow the contour of the eyeball. With a point constraint, a controller’s translates move a group over the eye because of the geometry constraint. The normal constraint forces the group to rotate, giving us the arcs we need for opening and closing the lids. This should provide easy control and smooth arcs for any eye shape, plus naturally provide a fleshy eye effect.
Each group has a child joint which is part of the main skincluster. Adding a parent constraint to each joint from the controller driving its group will allow for extreme shaping. A simple 0-1 float attribute on each controller can control the constraint, turning it on to free the joint from its group.
Add-on ideas for future experimenting:
• Grouping all of this, including the eyeball, could allow for independent scaling of the eye rig.
• Grouping might allow for rotation of the eye rig as well, independent of the aim controller
• A grouped eyeball should be moveable in the socket, pushing it out or retracting it. The geo and normal constraints would still force the lids to stick to the eyeball.