Joint Parameters for Eyes
                                                                                                              by Bloodsong

This tutorial uses my Amazing Wonder Sphere (and Wonder Eyes). It is designed to use longitudinal and latitudinal lines to make up the mesh. If you have a sphere made in another program that is geodesic or some other triangular deal... you can use it, but lining up the center will be harder.


In this demonstration, I have created a head with a simple Wonder Sphere eye. The spheres are placed in eye sockets and rotated to about 45 degrees, so the 'front' of the sphere faces the natural direction of the pupil.

Now, here's how to create the Joint Parameters for your eyes in such a way that they move naturally, and don't distort the head even with bending turned on. Cool!

Step One: Centering

First, you need to find the center of the eye sphere. Does Poser give you a readout of the body part's coordinates? No! Oh well.

Open your figure and the JP window, and set the display to Outline. Zoom in and select the first eye. Then go to Object:Display and set the eye to Wireframe.

Here is a closeup of the left eye. Use Top, Front, and Side views to line the center markers up with the front and back convergence points of the sphere. Go through each view twice; sometimes changing the locators in one view nudges them out of alignment in another view.

Here is the top view. When you have the centers in place, hit the Align button in the JP window. This will make the centers face each other through the center of the eyeball.

Read the XYZ coordinates for both centers in the JP window. Find the difference of each coordinate and split it between them. For example, my Green Center's X was .112 and the Red was .104. 112-104=8. 8/2=4. 112-4 and 104+4 both equal 108. So the X coordinate for both should be .108 (remember the decimal). If you have trouble, use the fool calculator accessory! :)

Enter the new central coordinates for each axis, and the two centers should be centered in the eye, as shown here, in top view. At this point, double check to make sure the arms of the axes are pointed in the proper direction. Use the JP Window X/Y/Z rot dials to rotate the centers around by hand. The front/back axis should point to the two convergent points on the sphere, and the lateral axis should cut straight across, following the latitudinal lines. (It's kinda hard to tell with the sphere at a slight angle like this and the lines showing as ellipses.) Check from the Side and Front, too.

Also, note down the XYZ coordinates and Rotation numbers.

Step Two: Joint Parameters

Once you have the center down, you can work on the actual rotating. This is the trick to make the eyes work right. Turn off the Bend property (hit CTRL-I), and use Spherical Deformers shrunk down inside the eyeball. Here's the quickie method of how to do that:

First, in the JP window, go through the XYZ settings and check Use Spherical Deformers for each. The Inner and Outer Mat Spheres unhelpfully appear in the middle of the body. Don't worry about that right now.

Start at the top rotation (X, in this eye's case), and select the Inner Mat Sphere (use the drop down body part list if you can't see it in your view). The MatSpheres have XYZ Trans dials. Double click each dial and plug in the XYZ coordinates of the Center JP.

You can see here that the center point XYZ's are the same as the Sphere's XYZ Trans's. (Don't be confused that the picture shows the OuterMatSphere, we'll get to it.)

Once the Sphere is lined up, shrink it waaaaay down inside the eyeball, to about 1-2%.

Now here's a nifty trick. While the Xrot InnerMatSphere is selected, hit CTRL-C to copy it. In the JP window, go down the rotation list and hit CTRL-V to paste all the InnerMatSpheres in the same place. (Note: In P4 (non-patched), the InnerMatSphere stays selected as you go through the JP's, but it is the InnerMatSphere of whichever JP you have selected. In otherwords, it automatically switches you. Don't know if it works the same way in P3 or with the P4 patch. Test it!)

Now go back to the first rotation and select the OuterMatSphere. CTRL-V to paste it to the Inner's settings, too. Then just Scale it up to about 2-3%. Copy it, then go down the list and paste it to all the other OuterMatSpheres.

Note on the illustration that the MatSphere's are well within the inside of the eyeball. Also, you can ignore the Red and Green X and Twists, you don't need to set them.

Step Three: Check It Out!

Now we can test the eyeball centering. Select the eyeball (not any MatSpheres), and zip it's X Y and Z Rot dials around. (Make sure you use Full Tracking mode for this). Note the edges of the eye's circle and make sure that the eye doesn't wobble outside it's lines. If it does, that means your center is a bit off, you might want to tweak it a bit. Check Top and Side views.

You can see how the eyeball is working by setting the figure to one of the Display settings that show the wires (Lit Wireframe is fun). Remember to change the eyeball's Display back to "Use Figure Style." Then slowly rotate the eye around. If you have a tiny bit of wobble, you can see if it pokes your eye out of it's eyelid or anything drastic. If not, you can leave it.

But wait, there's a whole 'nother eyeball! (Unless your figure is *really* weird.) If your figure is symmetrical and perfectly centered (and so are the eyes), you can use the coordinate information you wrote down for the first eyeball.

Set the other eye's X Y and Z centers (remember to change the X value from positive to negative, or vice versa, but don't change the Y and Z values). You can also copy the center's Rot values. Just click on the numbers in the JP window to type in values. Use the same X, but negative Y and Z Rot values. Also, double check to make sure things look all right.

Then just go through and do the MatSphere Pasting bit, and remember to turn off the eyeballs' Bend.