此图取至ue官方网站在shader里面我们还是需要使用英文,中英文对照:
巩膜:sclera
角膜缘:limbus
虹膜:iris
瞳孔:pupil
角膜:cornea
渲染效果。
模型方面:
使用一个突出的眼球模型来模拟整个的效果。内部的虹膜和瞳孔使用技术去实现凹陷下去的感觉。
uv的排布是以眼球瞳孔的中心点作为0.5 0.5来进行排列。
贴图方面:
巩膜的颜色贴图
巩膜的法向贴图
虹膜的颜色贴图
虹膜的法向贴图
这四张贴图主要为了实现眼球表面的效果。
然后还需要一张虹膜的mask贴图,来标记巩膜和虹膜的范围。
角膜是一个凸起并且半透明的结构。所以不需要相应的贴图,只需要使用虹膜的mask来确定角膜的范围即可。角膜是一个凸起的结构,我们可以想象一下放大镜,那么,虹膜的显示结果将会被角膜的厚度所影响,实现那种放大的效果。
所以,角膜需要额外的贴图来确定角膜的厚度。这里我们使用一张高度图,这是一张HDR贴图,意味着里面的值是可以超过1的。使用这张贴图,配合虹膜的mask,我们可以通过角膜位置高度-角膜缘位置高度,来获取到角膜距离虹膜的距离。
这张高度贴图生成是一个和眼球同朝向的平面,然后烘焙出前半球到平面的距离得出。
关于AO方面,采用在眼球前面额外的添加一层面片的处理方式,这层面片不会跟随这眼球的渲染而移动,用于模拟烘焙出来的眼球的环境光遮蔽效果。
后面,还需要添加眼部周围的结构,比如眼袋,眼睫毛,泪腺。相对来说比眼睛实现简单了很多。
效果查看:https://www.bilibili.com/video/BV19d4y127Mv