高光反射Blinn-Phong光照模型

本文借鉴《Unity Shader入门精要》,算是对自己学习的总结,也希望分享下所学知识~~

是另外一种高光反射实现方法。
引入一个新的矢量,通过对视角方向和光照方向相加后再归一化得到的。

公式:

高光反射光线强度 = 入射光线颜色 * 高光反射颜色 * max( 0, 法线方向 · 归一化向量 ) ^ 高光反光度

传送门:Phong光照模型
只有一处区别:

//高光反射
fixed3 viewDir = normalize(UnityWorldSpaceViewDir(i.worldPos));
fixed3 halfDir = normalize(worldLightDir + viewDir);
fixed3 specular = _LightColor0.rgb * _Specular.rgb * pow(saturate(dot(i.worldNormal,halfDir)), _Gloss);
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 光源 我们可以使用光源方向L和表面法线n 之间的夹角的余弦值来得到。需要注意的是,这里默认方向矢量的模都为1 。图...
    李偌闲阅读 1,031评论 0 0
  • 光照是3D游戏中一个必不可少的部分,场景氛围的渲染需要光照来表现: 上面是巫师3中的夜景,如果没有光的画整个表现力...
    ZeroTryTryTry阅读 5,777评论 0 9
  • 一、Surface Output (表面着色器的标准输出结构)Surface Shader的标准输出结构-第一要素...
    CarlDonitz阅读 970评论 0 1
  • 转载自VR设计云课堂[https://www.jianshu.com/u/c7ffdc4b379e]Unity S...
    水月凡阅读 1,071评论 0 0
  • 若可以回到以前的某个阶段去弥补现在内心的遗憾,毫无疑问我选择大学时期 大学四年 对得起图书馆的资源、对得起选学的每...
    银河投递员阅读 414评论 0 0