# Why are my model's eyes deforming so badly?

Hi this is my first time here. Here's a link to my blender file: https://drive.google.com/file/d/15_xVOwmepXe2CiXFKlFMJegP9Y9e_Ay0/view?usp=sharing

So my problem. I have been trying to weight paint the eyes of my rigify-ed character for way too long and it feels like nothing works the way I'm expecting it to. I'm not sure how to explain it, but when I move the controls to test "blinking" the mesh deforms way way too much, as if it's being affected by somewhere else that I can't find? I'm also finding it impossible to get the upper eyelid to deform evenly between the three vertex groups. I feel like I've checked a million tutorials and can't figure out where I'm going wrong.

If anyone could help me out I would be eternally grateful because this is really driving me insane. Thank you!!

Yes, the weight paint is messed around the eyes and brows. The top eyelids have too little influence and the bottom brow bones have too much. That's normal, more or less. Furthermore, the mirroring is messed up. But it can be fixed with some manual weight painting.

Topology fix
Before you start weight painting you should have a look at the mesh first. Because there is still some asymmetry going on, a little weird shading, and the horizontal edge loop of the top eyelids goes zigzag. The reason could be the extra edge you have there. (I had only noticed it afterwards when I had finished the weight painting.)

Your mesh has an extra edge "loop" (marked pink). Actually, it's not a loop just a few edges. Because of this, the top eyelids have 6 and the bottom lids have 5 edge loops. And the top lids have an N-gon (yellow).

For a clean topology, the top and bottom eyelids should have the same number of vertical edge loops. You can make that extra "edge loop" a full loop. This should improve the deformation.

Last but not least, check the size of your model. She is tiny, 2 cm tall. I am not sure if this is intended and she is a pixie?

Preparation
I would start over, drop all vertex groups of the mesh. These groups contain the messed-up weight painting. Then re-parent the mesh to the armature with With Automatic Weights. It will be still messed up but it will symmetrically messed-up ;-)

To fix the mess make a little animation and pull down the main eyelid controller (in the middle) to close the eyes (in Pose mode). It might be necessary to pull down the tweak controllers (left and right) as well a little bit. This depends on the model. Pull up the bottom lids a little. Finally, all 6 controllers (on layer 3, 3 tops + 3 bottoms of one eye) should be approximately on top of each other. The mesh of the lids will be messed up.

Weight paint
Switch to Weight Paint mode. In the Object Data Properties tab, expand the Vetex Group section. If you hover the mouse over the list you can scroll through it with the arrow up and arrow down keys. Find the eyes and brows.

Note: There are 3 top brow bones for each eye and 4 bottom brow bones. 4 bones for the top eyelid and 4 for the bottom eyelid around the eye. The top brow bones are ok, but the rest need some corrections.

Settings
Before you fix the weight paint, make sure you have Mirror X turned off, Vertex Group X turned on, Topology Mirror turned off, and Auto Normalize turned on. Note: These settings are for Blender 2.92 and look & behave differently in older versions.

Settings for Blender 2.92.

If the brush doesn't work make sure that Vertex Selection is turned off:

Painting
Start with the top eyelid of one eye. Give the bones more influence and the brows bones less. Mirroring should work for most of the time but the opposite brows might still be messed up. The reason could be the n-gons (see below). Finish one eye then you can correct the weights by painting the opposite eyelids/brows.

With help of the timeline, you can open and close the lids as needed.