Download the Maya Ascii version.
This is an eye that I use for personal art pieces. Everything is procedural from the size and shape of the cornea to the vein textures. Normally I set the detail lower than what you see above but the detail is there if I need it.
This was inspired by Alex Alvarez's free tutorials: http://www.thegnomonworkshop.com/store/category/167
The backgrounds / light probes are from Paul Debevec.
Rendered turntable of eye.
The file consists of: A control node, eye geometry with history, eye shaders, eye textures, reference spheres, ibl node and camera with a lens shader.
Control NodeThis is where you access and set the attributes for the eye's shape.
- char_hi_side_eye_ctrl.iris = The size of the iris. The number corresponds to the isoparm of the main spheres.
- char_hi_side_eye_ctrl.pupil = The size of the pupil.
- char_hi_side_eye_ctrl.cornea_bulge = How far the cornea bulges out from the natural curve of the eye. 10 = typical human bulge, 0 = no bulge. Negative numbers will make the cornea concave.
- char_hi_side_eye_ctrl.iris_concave = How much does the iris scoop inwards/outwards. 10 = concave, 5 = flat, 0 = convex.
Iris and Pupil Size
Iris Convex/Concave and Cornea Bulge
- make a sphere.
- detach at an isoparm.
- connect control node value to detach node.
- create a node that rides at the detach point in Z.
- parent a deformer to that rider, in our case a lattice.
- connect control node value to the deformer.
- scale the deformer based on the detached piece's radius.
ShadersNotes on shaders and textures
- All shaders are mia_material_x, exception is the pupil which is a surface shader.
- All textures are converted to linear color space with a gamma node.
- All "noise" is fractal noise. Fractals repeat cleanly at the uv borders so we don't see a seam, the noise node does not.
Nodes in the network:
- char_hi_side_sclera_vein_noise_threshold = Tells where the veins start and stop. White = 0% veins, Black = 100% veins.
- char_hi_side_sclera_vein_noise = The fractal that makes the shape of veins. Set the color gain to 0 and the color offset to 1 to turn off the veins.
- char_hi_side_sclera_vein_col_ramp = The color of the veins.
- char_hi_side_sclera_combo_col_ramp = The red color and the proportion to white of the sclera.
- char_hi_side_sclera_noise = The fractal for the white of the sclera. Set the color gain to 0 and the color offset to 1 to turn off the noise.
- char_hi_side_sclera_bright_col_ramp = The color for the companion part of the bright section of the sclera. I have it set to bright blue.
- char_hi_side_sclera_bump = The bumpiness of the sclera.
- char_hi_side_sclera_vein_noise_bump_md = Multiplier for the vein bump. Set it to 0 to turn it off.
- char_hi_side_sclera_bump_ramp = Tells where the bump on the sclera starts and stops.
- char_hi_side_sclera_shd = The sclera shader.
Veins On and Off
Nodes in the network:
- char_hi_side_iris_base_col_ramp = The deep, background color of the iris.
- char_hi_side_iris_noise = The fractal for the brighter, radial lines in the iris. Reduce the frequency ratio to simplify. Set the color gain to 0 and the color offset to 1 to turn off the bright lines.
- char_hi_side_iris_col_ramp = The color of the bright lines.
- char_hi_side_iris_shd = The iris shader.
Detailed to Simplified Eyes
Nodes in the network:
- char_hi_side_cornea_noise = A continuation of the sclera fractal into the edge of the cornea. If you edit the sclera fractal ( char_hi_side_sclera_noise ) do the same edits to this texture.
- char_hi_side_cornea_col_ramp = A continuation of the sclera bright color into the edge of the cornea. If you edit the sclera bright color ( char_hi_side_sclera_bright_col_ramp ) do the same edits to this texture.
- char_hi_side_cornea_trans_ramp = The transition from opaque sclera to clear cornea.
- char_hi_side_cornea_shd = Cornea shader.
How to add it to your characterWithout knowing how you rig and deform your characters, it's a little tough to give a definitive answer. This is how we integrate the eye for our characters.
- Import the eye template.
- Rename all of the nodes to match the current character.
- Cluster: char_hi_side_sclera, char_hi_side_cornea, char_hi_side_iris an char_hi_side_pupil.
- Move and scale the cluster to the character's eye location. Note that the eye is 1cm in diameter, so if you need your eyes to be 2.4cm ( human size ) you scale the cluster to 2.4.
- Bind the eye to an eye joint.
- Lattice the same nodes as above if you need non-spherical eyes. We make non-spherical eyes all the time.
- Deform the lattice to the desired shape.