ZBrushCentral

Ma, he's makin' eyes at me... now with cat's eyes

Only done one even remotely decent head, and already bored with using other people’s eyes. So I decided to experiment with textures prepared in Paint Shop Pro and applied to a model in ZBrush. Although the same principles can be followed completely within ZBrush, I prefer to use PSP because:
(a) it’s easier to get a clean rectangular brush stroke
(b) using the alpha channel to store selections, it’s simplicity itself to create any number of eyes based on an original PSP image with two layers.

I know there have been several tutorials, scripts and tools on eyes in the past, but I did work this one out for myself from scratch without (recent) reference to any of those, and like the fact that having done the PSP bit once, you have a template that you can very simply vary in any respect (except pupil shape - may look at that for cat’s eyes) to generate an infinite number of different eyes without having to load and run a script or save a tool as well.

In Paint Shop Pro:

  1. Open a new image, 256x256, background white.

  2. Set the Selection tool to rectangular, no antialiasing or feathering.

  3. Double click on the rectangular seslection icon in the tool bar and set the coordinates to Left = 0, Right = 256, Top = 0, Bottom = 19. Use the Floodfill tool to fill this area with sold black. Save the selection to the Alpha Channel as Pupil.

  4. Double click the selection tool icon again and change Top = 19 and Bottom = 48. Choose a colour for the main part of the iris and floodfill this selection. Save the selection to the Alpha channel as Iris.

  5. While still selected, apply Effects Noise at about 8% Uniform and/or apply a light spray-can effect in a contrasting colour for a more variegated iris.

  6. Double click the selection tool icon again and change Bottom = 23. Choose a slightly darker or contrasting colour than the main iris colour for the inner part of the iris around the pupil and floodfill this selection. Save the selection to the Alpha channel as Inner Iris.

  7. While still selected, apply Effects Noise at about 18% Uniform.

  8. Double click the selection tool icon again and change Top = 43 Bottom = 48. Use the same or another contrasting colour for the outer part of the iris furthest from the pupil and floodfill this selection. Save the selection to the Alpha channel as Outer Iris.

  9. While still selected, apply Effects Noise at about 18% Uniform.

  10. Now duplicate the layer.

  11. Load the Iris selection from the Alpha Channel.Apply Effects, Motion Blur, setting the length to 17 and the angle to 0. Repeat this with the angle set to 180.

  12. Now apply Edge Enhance.

  13. Still with the Iris selected, on the layer palette change the mode to Overlay. If the iris appears too dark, adjust brightness and Contrast and/or gamma to your liking. Save the image as a PSP file. Then flatten the layers.

  14. If you want any bloodshot veins in the eyeball, deselect the iris at this point and scribble some faint squiggly lines in pink on the white of the eyeball.

  15. Deselect the iris and Flip the whole image Vertically. (I’ll explain why below in the ZBrush section.) Now save as a BMP or PSD file and leave PSP.

You should end up with something like this:

In ZBrush:

  1. New document. Select the Sphere tool. Set the colour to white, material to Toy Plastic.

  2. Using the Drag Rectangle stroke, draw a sphere of the required size.

  3. Import the BMP or PSD texture file saved at #15 above. Select the texture.

  4. Nothing happened? Well it did, but you can’t yet see it, because the pupil is on the opposite side of the eyeball, so rotate it through 180 degrees horizontally.

  5. If you would like a slight bulge to contour the lens, on the Texture pallete click Make Alpha. Now on the tool Modifiers, Select palette, click Alp, then Invert the mask. Now on Tool, Modifiers, Deformations set Inflate to about 16.

  6. You’re done, so save the tool.

You should have something like the first figure below.

If you had not flipped the texture vertically at step 15 above, the pupil would have mapped to the front of the eyeball, BUT you would have an annoying little artefact of a tiny white dot in the centre of the pupil which JPG compression permitting, you should be able to see in figure 2 above. (Why didn’t I build the texture the other way up in PSP and avoid the need to flip - simply felt more natural to do it that way up! Important bit at the top. Sorry.)

By saving the PSP file, you now have a template for all future eyeballs, with all the key areas saved as instantly retrievable selections in the Alpha Channel, and the texturing of the flat pattern in a separate layer from the underlying flat colour. So it is a doddle to change any part of it in terms of colour or pattern using any of the usual tools or filters. Instant infinite eyeballs. :rolleyes:

:+1: :+1:
good tutorial flycatcher i messed with lots of eye maps there Fun :smiley:
i think you can go to (tools) modfyers/deforamtion (rotate)and roll the eye up to get rid of the white center dot.

Flycatcher,

Thank you for the tutorial.

I’ve been modifying Mentat7’s Blue Eye tutorial to get a seamless eyeball texture within ZBrush (use the ~ when making the rods with the fiber brush), and noticed that annoying blank spot in the center of the pupil. My solution was to push the black rectangle up (with the ~ pressed), onto the bottom of the texture (leaving a tiny black dot on the back of the eye ball).

Anyway, do you know why flipping the texture upside down works? I know its not terribly important, but it’s annoying not to understand :smiley: .

Interesting FC :warning: I am looking forward to the face with those eyes :smiley: :smiley: :smiley: Thanks for sharing the information :+1: :+1: :+1:
DeeVee,
Joe.

Interesting to see the PSP approach thanks for the info Flycatcher. :+1: :+1: :+1:
Dave

Thanks for the feedback, guys. Looking again at the example I posted, I should have put a bit more contrast into the iris area. The JPG compression has made the radial striation rather difficult to see. But it’s there, I promise you, and it’s easy to add more emphasis to this feature by increasing the noise level or using the spray can as explained in the tutorial, or other effects.

DeeVee: I haven’t used these eyes yet… but I did also post my first modelled head yesterday on EZ’s useful Begin Clay Modelling thread. You might like to check it out - if only for the amusement value. Masterpiece it ain’t! :smiley:

Havran: Nice eyes. I see you created the map for at least the blue and green ones in ZBrush.

EZ: I’ve tried using the rotate deformation, but it doesn’t seem to be consistent. The white dot remains in most non-extreme positions, but disappears in others closely proximate. Flipping the texture appears the better bet, as it puts the white dot at the back of the eye, which is not only out of sight, but is normally white anyway so the dot becomes “invisible”.

DentureCream: A good question. I don’t know why it works, I’m afraid, I just found out by experimenting. I have deduced an explanation, but it is only a working hypothesis and may be well off the mark. I think there is a singularity where the mesh becomes ever denser at the poles of the sphere, such that there exists a single pixol where all the adjacent vertices meet but with no enclosed polygon and that therefore cannot be mapped with a texture. The result of this is that there is a “pin-hole” through which the back of the sphere can be seen. With the texture unflipped, that means you are looking through a tiny hole in the black pupil at the white back of the eye - hence the little white dot. This seems to be borne out by the fact that if you change the white of the eye to red, with an unflipped texture the dot is now red, not white. By flipping the texture, it effectively means that the pupil is mapped to the opposite pole of the eye. Now for the weakest part of my argument. It seems as though the unmappable pixol is, perhaps surprisingly, a true singularity - i.e. that the meshes at the two poles are anisometric. For some reason there does not seem to be such a corresponding “hole” at the other pole, so no artefact appears on the pupil. This would appear to be true, because otherwise presumably what you would see, with the texture flipped or not, would be the background colour through two directly aligned pinholes. This hypothesis also explains why your method worked, as it places a black dot at the opposite pole, so you really do still have the hole in the pupil, but since you’re looking at a black dot on the opposite surface, it is undetectable. Also why no similar artefact appears on a sphere painted with a single colour. The geometry of why this should be so is way beyond me, but the hypothesis does appear to be consistent with the facts. Best I can come up with, I’m afraid; maybe Aurick can confirm the theory or supply the real explanation.

This afternoon I spent some time working on a texture map for cat’s eyes, trying to get the pupil shape right. For simplicity, I didn’t bother flipping the texture until I’d got it right. Having got almost there (the precise dimensions proved trickier than I expexted), I decided to try flipping the texture for a test render. I then got quite a surprise! It’s not just the pinhole that appears to be different at the two poles. In the following diagram, the eye on the left was drawn with the best texture map I had so far, but without the texture being flipped (the pinhole should just be visible). This was snapshotted to the canvas and the eye moved to the right, where the texture was rotated through 180 degrees. I double-checked this - the effect was the same whether the texture was flipped first in PSP before import into ZBrush, or not flipped in PSP but then rotated after import to ZBrush.

As can be seen, not only is there no pinhole in the second eye, but the geometry has significantly changed. This is immediately evident in the width and degree of median constricture of the pupil. I don’t know whether this is just down to the different geometry I have postulated to exist at the two poles (in which case it is more extreme than I imagined), or whether there is something else going on here that I do not understand. The moral certainly seems to be that if you are working on eye textures with only bilaterally symmetric pupils or similar maps, then you should test the map drawn in the orientation in which it will be applied. Failing to do so in this instance has taken me back several steps in trying to get the pupil outline smooth.

Flycatcher,

:cool:

Nice Hypothesis. More evidence suggesting the geometry at the poles is different:

Paint a cube with the edit tool mirrored along the z axis, and you’ll notice one side always applies more paint than the other, reguardless of brush size and intensity.

While we’ll both have to wait to see if Aurick wants to spend time on this to be sure, at least now I have some idea. Thank you! :slight_smile:

In addition to being an excellent all-around content creation tool, ZBrush provides us with endless brain teasers. I must learn not to get so absorbed in these irregularities, and post more work. :slight_smile:

Phew! But not tonight. Now I’m sleepy :smiley: .

i threw a guess on the post above.
but anyways if you Rotate it the texture it still stays over the hole.
if you INFLAT it you will see the hole.
what could cause this problem well lets say you have 40 curser on in symmerty were do they all meet? at zero point in the middle were the texture white dot is could the symmery not meet zero point and leave a fraction of the center of the eye not colored in but cant be seen with the naked eye?
could the texture be pulling appart at the center were the zsphere hole at?
here is a fixer and i beleave its the Hole the 2 points on a sphere.

do a test color the hole thing black then look at your texture and in LARGE it to see if there is a white dot.
could the texture be sunk into the hole?


if you look in my pic the post up i made the hole crinkle and if you look at the eye it has a few white spot right were the crinkle at.
my second guess when the texture sunk in the hole the toy plastic material could be reflecting making it look white that im not sure of but im pretty sure its the hole in the SPHERE.
THAT or the symmerty is not meeting dead center and your not coloring the middle.
zero point

OK i think ive found the problem.
the shiney the material is the more likeley you will get a white dot all i did was INFLAT and click on the canvas which contract the sphere watch how the white circle shows up.
mine will show up differnt because i inflat it.
go here LOOKIE.txt i dunno by contracting it if its collecting light or the material is spueing ill guess Light.
and Toy Plastic Material.
i took a inflat crinkle zsphere it seams to only show when toy plastic on it.
i imported the crinkle obj sphere added texture and it looked good till i put toy plastic on it
:rolleyes:

Thx Éz, great tutorial as always… :+1:

The Toy Plastic material has an extremely high specularity, which will cause any imperfections in the mesh to be much more visible.

There are several ways to get rid of this.

One is to rotate the mesh 90 degrees on the X axis before you start texturing. This places the poles at the top and bottom, where they are unlikely to be seen when the eye is in its socket. (Over 2/3 of the eye is hidden when it’s properly placed).

Alternatively, you can use the smudge and blur brushes to hide the imperfection. This is normally most effective as a post render effect. Do your final render. Export the image. Clear your document layers. Select the Flat Color material. Use Document>Import to import the image again. It will now be in a format that doesn’t have depth, but is very easy to use the 2D enhancer brushes on to not only fix imperfections but also bring out a lot of details like better highlights and shadows.

aurick have you ran the LOOKIE.txt ?
you see how the circle appears when the canvas is pressed Sevral times which make the sphere expand and contract if you face the hole right on the light it seams to be gatering Lighting by contracting and expanding.
a qiucker fixs would be once when youR done with the hole image color a black dot over the white dot and be done with it LOL
:smiley:

Wow! - that certainly stirred up a few theories. :smiley: Thanks for all your time EZ and Aurick - I haven’t had a chance to study them properly yet or run the script but I will over the weekend.

Well, after a further session, that’s about as much time as I really want to spend on cat’s eyes - it was only started out of curiosity as to what form the texture map should take. So, warts and all, here it is - a texture for making cat’s eyes. No animals were hurt during this experiment. :smiley:

Sorry, no details of how it was created between ZBrush and PSP - too long and tedious a process of trial and error, mostly error. However, the principles for making variations of it are the same as for the human eyes. You will need to load the file in PSP and use the Magic Wand to select the black pupil area. You should copy this to a new layer in the same position at the bottom of the image. Back to the background layer and deselect and save the PSP file for future use as a template. Now use the Magic Wand to select the white area, then invert the selection. You now have the iris area selected which you can treat as for the human eye above. I did the iris of the cat’s eye slightly differently. I selected two colours and created from them a foreground-to-background gradient which I edited to give the darker rim a much narrower area. Then I added noise as before, but this time did Effects, Edge Enhance More to give stronger striations. As before I then applied Effects, Blur Motion Blur just once at direction 0 somewhere around 20 pixels. I then applied a slight Effects, Geometric, Ripple to make the lines slightly wavy. Finally I used Effects, Edge Enhance More to give stronger definition to them. There are infinite permutations you can play on the iris with noise, spray can and various effects - the only limit is your imagination. In ZBrush just import the texture, select Toy Plastic material and set the colour to white, draw a sphere and rotate it so that the pupil comes to the front.

This is the result of my iris manipulations as above:

Flycatcher-excellent eye tips here-and Matthew-I’ve always rotated my spheres
and have never encountered this hole problem
so until I saw your explanation I could not understand the problem they were having-now I know why I was spinning my balls.

here are some eye link and tools http://www.pixolator.com/zbc-bin/ultimatebb.cgi?ubb=get_topic&f=1&t=004598
and http://www.pixolator.com/zbc-bin/ultimatebb.cgi?ubb=get_topic&f=1&t=004060