User Tools

Site Tools


pidi_pbr_skin_legacy

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision Both sides next revision
pidi_pbr_skin_legacy [2019/09/06 05:12]
irrsoft [Dynamic Wrinkles Tracking]
pidi_pbr_skin_legacy [2019/09/06 05:32]
irrsoft [PBR Eye Shader]
Line 541: Line 541:
 ---- ----
  
 +###
 +Starting with version 1.2 of this package an advanced Eye shader has been included. This shader is designed for a specific workflow where the movement of the eye is controlled through the shader itself rather than through rotation of the eye object. However, it can be used in that workflow as well.
 +###
  
 +###
 +This eye shader is in active development to add more features and, in version 1.3, a small script system that handles object tracking in an easy to implement way. 
 +###
 +
 +###
 +The main textures used for these shaders are :
 +###
 +
 +
 +  * Eye Data Map that has Eye Occlusion information on the green channel and a pupil area shaped like a gradient-circle to allow for dilation on the alpha channel
 +  * Albedo + Iris Map that contains the main texture and, marked as full transparency, the iris area that will change colors when we modify the Eye Color variable in the material.
 +  * Normal map, to add details to the eye's surface
 +  * Reflection cubemap to add more realistic reflections to the eye itself
 +
 +
 +Example textures for this shader are provided to show how the material looks when set up properly. 
 +
 +\\
 +{{ :pbr_eyes.jpg?direct&600 |}}
 +\\
 +
 +###
 +The eye occlusion in this shader stays still when the eye moves by using the shader's Eye Direction variable. This adds a very high level of realism to the eye by adding the shadowing produced by the eyelids of the character. However, if you are rotating the spheres to perform your Eye tracking it is recommended to turn this occlusion down so it doesn't break the immersion.
 +###
 +
 +
 +
 +
 +The shader's properties are mostly self explanatory :
 +
 +\\
 +{{ :pbr_eyes2.jpg?direct&600 |}}
 +\\
 +
 +###
 +The eyes direction variable controls the direction in which the eyes point. A positive value on the X axis turns them to the right, a negative one to the left. A positive Y value turns the eyes down while a negative one turns them up.
 +###
 +###
 +The Sclera Gloss value controls the glossiness of the white part of the eye while the cornea gloss controls the glossiness of the iris and cornea areas.
 +###
 +###
 +Specular and Color control the specularity and overall color of the eye (white and iris)
 +###
 +###
 +The Albedo texture has the main texture for the eye. The iris area should remain as a grayscale with no actual color. The alpha value of this texture defines the iris zone, for which we will set the Eye Color value later.
 +###
 +###
 +The normalmap texture is a standard normalmap used to add detail to the eye's surface.
 +###
 +###
 +The eye color controls the color of the irises while eye occlusion controls the intensity of the eye's shadowing. 
 +###
 +###
 +Cornea distortion adds some depth to the eye to make it resemble more closely the real shape of an eye.
 +###
 +###
 +Pupil dilation controls how open/closed the pupils are in the eye. This can be used to simulate the eye's reaction to strong and dim lights and to produce interesting effects during close ups.
 +###
 +###
 +Night Vision effect allows you to make the pupil of the eye emit light which is useful when working with night vision-like effects. 
 +###
 +
 +\\
 +{{ :pbr_eyes3.jpg?direct&600 |}}
 +\\
 +
 +###
 +Finally the Eye Data Map, the Eye Reflection Cube and reflection intensity control the specific properties and final appearance of the eye as described above.
 +###
 +
 +###
 +To better use the eye shader, a new component is available for you called PIDI_EyeShaderManager. 
 +###
 +
 +\\
 +{{ :pbr_eyeshadermanager.jpg?direct&600 |}}
 +\\
 +
 +###
 +This component allows you to set up the eye color per-instance independently from the color set in the material itself, as well as to select if you want to use the integrated eye-tracking system.
 +###
 +
 +###
 +If you set the **Eye Motion Type** to **Shader Vector Motion** and assign either a Transform as a target or a global position, either through code or directly in the inspector and the eye will automatically follow it.
 +###
 +
 +###
 +If you use code, you need to assign the value of the variables transformTarget for a Transform component or pointTarget for a global position.
 +###
 +
 +###
 +If you would rather use another system or to do the eye tracking on your own, or if you will rotate the eyes directly using the transform component then you must set the Eye Motion Type to either None or the preferred and recommended way, Transform Direction Motion and use the Eye Shader labeled as High Quality (Dynamic).
 +###
  
pidi_pbr_skin_legacy.txt ยท Last modified: 2019/09/06 07:30 by irrsoft