您的位置:首页 > 移动开发 > Unity3D

Shader 学习笔记 20151121

2015-11-21 11:26 429 查看

Segment 1 阅读

今天啥也不重要,只要看下面几个就好了,必须看的。

lit sphere 光照制作 https://vimeo.com/14030320

工具:http://www.taron.de/ MaCrea v0.15 (windows only)

建模工具

Sculptris 和 Zbrush,真的是吊到爆炸

lit sphere lighting model 和 模型简直绝配,请看下组图。

1,原始模型



2,lit sphere ligting model



3, 选择刚建好的lit sphere lighting model



4,实际效果



Segment 2 追加理解

什么是lit sphere lighting model?



提前bake一个很花哨的2D texture,然后直接通过顶点的normal向量(在world space)去查这个2D texture,就完了。

lit sphere 唯一的缺点是啥?



书里面说到一点,因为lit sphere是提前bake好的,如果要换的话就只能整个texture都换。

我觉得还有一个,就是当你的视点不动的时候,这个东西好用,如果你的视点要前后左右的看obj,给人的感觉就有点假了。

cube map reflection 和 lit sphere有啥区别?

从算法的本质上看,并没有区别。都是通过向量和顶点normal去求一个坐标,然后去查图。区别是cube map reflection是用视点向量和normal先求出反射向量,然后拿这个反射向量当作坐标去cube map查color值;lit sphere是直接使用顶点的normal向量(需要从切平面坐标系转换到world坐标系)去查lit sphere map。

从实际上看cube map在我们变换视角的时候(前后左右上下六个面),的的确确可以看到不同角度的反光,让你感觉到obj是真的在世界里面,它的表面真的在反射世界的景色。而lit sphere因为只拿normal向量当坐标去找color,所以给人的感觉就好象光源方向(这个光源是light dir,不是玩家看到的真实光源,因为我们可以在画lit sphere的时候把光斑随便放一个位置,玩家看到的真实光源就在光斑那个方位)就是视点方向一样。

那么他们之间的优缺点也就显而易见了,cubemap模拟的更全面一些,特别在视点移动的时候。而lit sphere好处就是不耗资源但是效果也挺好,特别在模拟材质和反光的时候。见下图。



normal 分别在cube map reflection 和 lit sphere里面起到了什么样的关键作用?

无比关键,每一个点用于查图的坐标都是有normal参与的。cube map使用normal和视点向量去计算反射向量,而lit sphere更不用说,直接用normal和坐标轴夹角去算坐标了。

另外从人类的视觉直觉上看,normal就是一个特定的obj对光影和反光最最决定的因素!!!!!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  shader unity