冯乐乐之六,基础光照模型

需要理清的概念:兰伯特,半兰伯特,冯模型,布林冯模型

高光反射specular,代表物体表面反射光线。漫反射diffuse,代表吸收然后散射出表面的光线。

环境光ambient,自发光emissive,

漫反射

漫反射从任何方向看都是一致的,漫反射只依赖于入射光线和顶点(像素)法线。

Lambert模型:漫反射点颜色 = (光照颜色强度*表面漫反射颜色)Max(0,dot(表面法线,顶点直线光源的矢量))

高光反射

反射矢量R,可以通过,表面法线N,光源矢量I(和入射方向相反)计算。R = 2*dot(N,I)*N - I

Phong模型,是一种高光反射模型

Phong模型:高光反射颜色 = (光照颜色强度*表面高光反射颜色)pow(max(0,dot(视角矢量V,反射矢量R)),高光反光度)

高光反射度,用来控制亮斑区域,高光反射越大,亮斑越小。

Blinn,提出一种新向量H,H为normal(V+I),经验表明,dot(视角矢量V,反射矢量R)与dot(表面法线N,布林向量H)取值类似,所以用后者代替前者得到布林冯模型。

Blinn_Phong模型:高光反射颜色 = (光照颜色强度*表面高光反射颜色)pow(max(0,dot(表面法线N,布林向量H)),高光反光度)

布林冯的好处:1避免反射的计算,减少了一次点乘的计算,即一次矩阵乘法。2在极远处,V,I是定值,所以H也是定制,可以继续节约计算。

逐像素和逐顶点

逐像素光照也称冯着色PhongShading,逐个顶点光照也称高诺德着色GouraudShading。顶点着色之后的像素颜色依赖于线性插值,对于非线性的高光反射,看起来会有明显棱角。

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
乐乐是著名的计算机图形学专家,他的研究领域主要是实时渲染和着色器编程。对于想要学习shader入门的人来说,以下是一些乐乐推荐的书籍资源: 1.《GPU Gems》系列 这是一系列由乐乐等人共同编写的图形编程经典书籍之一,涵盖了很多与shader相关的主题,例如高级光照、阴影算法等。这些书籍从实践的角度深入讲解了如何优化和实现各种shader效果。 2.《Real-Time Rendering》 这是一本权威的实时渲染书籍,由Tomas Akenine-Möller、Eric Haines和乐乐等人合著。书中包括了许多关于shader编程的内容,如基本着色原理、渲染技术和最新的图形硬件特性等。 3.《Unity Shader 全方位深入解析》 这是一本讲解Unity引擎着色器编程的书籍,由乐乐亲自编写。书中通过实例和案例详细介绍了Unity Shader基础知识和高级技巧,适合对Unity引擎感兴趣的开发者入门学习。 4.《OpenGL着色器语言概念与实践》 这是一本介绍OpenGL着色器语言(GLSL)的书籍,由Randi J. Rost、Bill Licea-Kane和乐乐等人合著。书中详细讲解了GLSL的语法和应用,以及如何使用GLSL实现各种shader效果。 除了以上推荐的书籍资源,乐乐还经常在学术会议和论坛上发布最新的研究成果。如果想要深入了解他的工作,可以关注他的论文和演讲录像。同时,还可以通过参加相关的培训课程和在线教育平台上的课程来学习shader编程,不断加强自己的实践能力。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值