unity3d Realistic eye shading 真实的眼睛渲染
先放上效果
人皮都做了,当然要来研究下眼睛,眼睛要比人体皮肤简单一些(实时模拟人皮在此)
一看是不是很复杂
这是眼睛的解构,但是,我们只需要模拟出虹膜巩膜和角膜就能达到相当真实的眼睛
巩膜就是白眼球
虹膜就是黑眼仁,欧洲人的巩膜颜色较浅,为蓝色,绿色都有。想做吸血鬼或者黑化的,就可以把巩膜渲染成红色
有点渗人啊。。。。
角膜就是巩膜上的一层凸起,最亮,最光滑,最反光的一层膜
这是一张眼睛放大的图片,清楚地表明了这种结构,是不是很漂亮?
其实眼睛的渲染也是很简单的
稍微讲解下思路吧
巩膜部分比较粗糙,所以要用漫反射加上粗糙的高光,白眼球也有高光,但是存在血管等东西不是特别平滑,但是却很光滑,所以有一张细节法线贴图来控制高光,高光强度也要保证,
晶状体就是在巩膜上的半球体,用球本身的normal求出高光,加在巩膜上即可,
最后一步就是反射周围的景物,需要一张cubemap,但是不能直接加,颜色都被眼球吸走了,所以反射出来的是没有颜色的“亮度”
说完思路大家是不是都豁然开朗?
本次的重点其实还是基于物理的着色,弄出亮晶晶的高光效果
如何区分虹膜与巩膜呢?一张圆形的遮罩贴图就好,如果大小不合适就调UV
好了就这么简单
这是用在最终幻想13中塞拉眼睛的效果,皮肤是之前的皮肤shader,感觉还不错
这是她本来的眼睛,为了要凸显这种略带卡通的风格,ff13把眼仁做大,也确实显得可爱很多
由于博主要做游戏参加GDC所以八月份之前可能不会像这个月这样频繁的更新博客了,
全部代码已共享至GitHub链接
----- by wolf96
unity3d Realistic eye shading 真实的眼睛渲染的更多相关文章
- 剖析Unreal Engine超真实人类的渲染技术Part 2 - 眼球渲染
目录 三.眼球渲染 3.1 眼球的构造及理论 3.1.1 眼球的构造 3.1.2 眼球的渲染理论 3.2 眼球的渲染技术 3.2.1 角膜的半透和光泽反射 3.2.2 瞳孔的次表面散射 3.2.3 瞳 ...
- 剖析Unreal Engine超真实人类的渲染技术Part 1 - 概述和皮肤渲染
一.概述 1.1 数字人类的概要 数字人类(Digital Human)是利用计算机模拟真实人类的一种综合性的渲染技术.也被称为虚拟人类.超真实人类.照片级人类. 它是一种技术和艺术相结合的综合性模拟 ...
- 剖析Unreal Engine超真实人类的渲染技术Part 3 - 毛发渲染及其它
目录 四.毛发渲染 4.1 毛发的构造及渲染技术 4.1.1 毛发的构造 4.1.2 Marschner毛发渲染模型 4.1.3 毛发的间接光照 4.2 毛发的底层实现 4.3 毛发的材质解析 4.3 ...
- unity3d Hair real time rendering 真实头发实时渲染(转)
惊现塞拉酱 算法是Weta Digital根据siggraph2003的论文加以改进,改进之前使用的是Kajiya and Kay’s 模型,它能量不守恒,也就是说不是基于物理的,不准确 电镜下真实头 ...
- unity3d Hair real time rendering 真实头发实时渲染
先放上效果 惊现塞拉酱 算法是Weta Digital根据siggraph2003的论文加以改进,改进之前使用的是Kajiya and Kay’s 模型,它能量不守恒,也就是说不是基于物理的,不准确 ...
- Unity3d 真实的植物渲染
好久没写shader了,有些生疏,刚弄了个植物shader,分享一下. 先上图片: 重点需要注意的是fragment shader的透明部分 需要如此声明 Tags{ "LightMode& ...
- Unity3D光照前置知识——Rendering Paths(渲染路径)及LightMode(光照模式)译解
简述 Unity supports different Rendering Paths. You should choose which one you use depending on your g ...
- [react] 什么是虚拟dom?虚拟dom比操作原生dom要快吗?虚拟dom是如何转变成真实dom并渲染到页面的?
壹 ❀ 引 虚拟DOM(Virtual DOM)在前端领域也算是老生常谈的话题了,若你了解过vue或者react一定避不开这个话题,因此虚拟DOM也算是面试中常问的一个点,那么通过本文,你将了解到如下 ...
- Unity3D事件函数的执行顺序 - 包含渲染等模块的完整版,中英文对照
原文地址: http://www.cnblogs.com/ysdyaoguai/p/3746828.html In Unity scripting, there are a number of eve ...
随机推荐
- C#调用cmd程序,读取结果
示例,调用cmd执行PING命令,读取结果,代码如下: using System; using System.Collections.Generic; using System.Linq; using ...
- JAVA 函数式接口与c#委托对应关系(一)
C# Action委托 VS JAVA Action 接口函数 1.c#:Action 封装一个方法,该方法不具有参数并且不返回值. 构造实体类类 using System; namespace Ac ...
- C#中检查网络是否连通的二种方法
using System; 2 using System.Collections.Generic; 3 using System.Text; 4 //方法一 5 using System.Ru ...
- php 连接mysql数据库并显示数据 实例 转载
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...
- DB2 WIN7 WIN8在指示的文件系统中找不到数据库目录
前言:win7下一些软件的不正常,跟win7的权限有很大关系. 在win7下安装db2 9.7客户端后,在cmd中运行db2cmd启动clp,输入db2的任何命令都显示:SQL ...
- 【python】dir(__builtins__)查看python中所用BIF(内置函数)
dir(__builtins__)查看python中所用BIF(内置函数)
- 基于python做的抓图程序1.0.00版本
#coding=gbkimport urllibimport urllib2import reimport osimport time# import readline def getHtml(url ...
- CENTOS elasticsearch plugin install:Failed: SSLException[java.security.ProviderException,解决
安装Elasticsearch插件时总报SSLException yum upgrade nss 解决
- Log4Net配置注意点
log4Net的配置文章一搜一大把,配置使用还是有一些点花费了很多时间,这里整理一下,添上坑,让Developer走的更稳. 编程式配置路径 新建一个配置文件,通过写代码来动态加载log4Net的配置 ...
- Spring(一)——总体介绍
spring框架,是进行对象管理,对象关联,解耦的一个中间层框架.SSH(Struts+Spring+hibernate)三大Spring在中间就起着一个承上启下的作用.好,首先我们先来 ...