(总结整合几篇blog和一些国外图书的内容)

常见的反射类型分为:Lambertian反射、理想镜面反射、Lambertian反射与镜面反射相结合

1.Lambertian反射(也叫理想散射)

Lambertian表面是指在一个固定的照明分布下从所有的视场方向上观测都具有相同亮度的表面,Lambertian表面不吸收任何入射光.Lambertian反射也叫散光反射,不管照明分布如何,Lambertian表面在所有的表面方向上接收并发散所有的入射照明,结果是每一个方向上都能看到相同数量的能量.

维基百科的解释:http://en.wikipedia.org/wiki/Lambertian

在计算机图像学中,Phong光照模型:http://www.cnblogs.com/dosomething/archive/2011/10/20/2218369.html

SurfaceColor = Emissive + Ambient + Diffuse + Specular

最终表面   = 放射光  + 环境光  +  漫反射 + 镜面反射

放射光:

  Emissive = Ke               

  Ke为材质放射的颜色

环境光:

  Ambient = Ka * GlobalAmbient       

  Ka为材质环境光反射系数;GlobalAmbient为全局环境光的颜色

漫反射:

  Diffuse   = Kd * LightColor * max( dot(N, L), 0)

  Kd为材质漫反射颜色;LightColor为漫反射光的颜色;N是规范化后的表面法向量;L是规范化后指向光源的向量;

  max(x, y)函数返回x和y的最大值;dot(x, y)函数返回x向量和y向量的内积

镜面反射:

  Specular = Ks * LightColor * pow( max(dot(N, H), 0), fShinines )

  Ks是材质镜面反射的颜色;LightColor是镜面反射光的颜色;N是规范化后的表面法向量;H是规范化后的L和V的中间向量(即规范化后的L+V),其中V是规范化后指向视点的向量

  pow(x, y)函数返回x的y次方;

  这里dot(N, L)如果小于等于0,即Diffuse为0,则Specular为0。确保了镜面反射的高光不会出现在背向灯光的地方

  

Lambertian 反射(也叫理想散射)相关推荐

  1. 光度立体法检测原理讲解

    光度立体法检测 图像辐照度 决定场景表面片辐射的因素有两个: 1.在场景表面片的照明 投在某一特定表面片上的照明量取决于该表面片在场景中相对于光源的分布位置 2.表面片反射的入射照明部分 在某一特定方 ...

  2. 实时高清渲染:全局光照(Global Illumination)[1]

    目录 基础知识: Radiance: Irradiance: Radiant flux: Radiant Intensity: Solid Angle: Lambertian surface: Lam ...

  3. games101:作业7+Microfacet微平面理论+cook-torranceBRDF方程计算+作业7拓展

    games101:作业7+Microfacet微平面理论+cook-torranceBRDF方程计算+作业7拓展 一,作业7 1.1 代码部分 1.2 加入多线程 二,Microfacet微平面理论 ...

  4. TransMVSNet阅读笔记

    ------------------ 写在前面:本人研一小白,处于懵懂,潜心向老师师兄师姐学习的阶段,第一次发博客,也是一时兴起(向师兄学习,很羡慕师兄师姐们的能力和水平),因为是个人的笔记,当时记得 ...

  5. PBR:双向反射分布函数(BRDF)介绍与Cook-Torrance模型的实现

    PBR:双向反射分布函数(BRDF)介绍与Cook-Torrance模型的实现 BRDF简介 再介绍BRDF之前我们要引入渲染方程这个东西: 其中L表示辐射率,其公式为: 它表示了一个拥有辐射强度Φ的 ...

  6. antlr 语言 库_关于ANTLR的通用库的需求:使用反射来构建元模型

    antlr 语言 库 我是一名语言工程师:我使用多种工具来定义和处理语言. 在其他工具中,我使用ANTLR:它简单,灵活,可以围绕它进行构建. 但是我发现自己围绕ANTLR为不同的项目重建了类似的工具 ...

  7. 关于ANTLR的通用库的需求:使用反射来构建元模型

    我是一名语言工程师:我使用多种工具来定义和处理语言. 在其他工具中,我使用ANTLR:它简单,灵活,可以围绕它进行构建. 但是,我发现自己围绕ANTLR为不同的项目重建了类似的工具. 我看到两个问题: ...

  8. Deep Non-Line-of-Sight Reconstruction:深度非视域重建

    点击上方"视学算法",选择"星标" 干货第一时间送达 作者:坐化 | 来源:知乎 https://zhuanlan.zhihu.com/p/157348690 ...

  9. Context Based Face Spoofing Detection Using Active Near-Infrared Images(论文翻译)活体检测相关

     摘要 - 在本文中,借助可控的有源近红外(NIR)光,我们构建了近红外差分(NIRD)图像.基于反射模型,NIRD图像被认为包含具有和不具有活动NIR光的图像之间的光照差异.基于NIRD图像的两个主 ...

最新文章

  1. 染成茜色的坂道 汉化版攻略
  2. 跳出误区:Java程序员进阶架构师真的没你想象的那么简单......
  3. 推出了底层代码chatbot开发工具,Rulai获650万美元融资
  4. 干货!华为AutoML助力AI开发效率提升攻略
  5. CodeForces - 1408D Searchlights(思维)
  6. HDU - 4135 Co-prime(容斥原理)
  7. mysql索引实现原理_Mysql索引原理
  8. php168 discuz论坛贴子调用设置,Z-blog调用Discuz论坛最新帖子的方法
  9. w3cschool离线手册
  10. 海量数据搜索——搜索引擎
  11. TCP通讯中发送文件
  12. MATLAB数据降维工具箱drtoolbox
  13. 三步搞定 vscode 代码格式化
  14. [Linux] 读书笔记之:Linux程序设计(第4版)(ch1-7) [ 学如逆水行舟,不进则退 ]...
  15. ie开始屏蔽旧的java插件_IE将开始屏蔽旧版ActiveX控件
  16. python如何读取weboutlook内容_用Python通过MAPI读取Outlook中的电子邮件
  17. Python字典经典例题-key,value灵活运用
  18. 【noi.ac#1771】ball
  19. 软件工程小组课程设计项目
  20. 在cmd中使用python3指令打开.py文件无响应,也没有报错的问题

热门文章

  1. html制作国字布局,各种经典布局--“国”字布局
  2. 你运营的公众号文章阅读量上不来,怎么回事?
  3. 20考研 | 2020考研全程规划,19上岸复旦学长。各科各阶段复习规划。
  4. 【求助】如何在移动固态硬盘上装一个完美的移动系统
  5. RS485,uart串口加瑞芬68协议
  6. 开源项目Krita学习(一)
  7. 如何用ps把照片变成白底
  8. 迅雷协议分析–多链接资源获取
  9. 智能客服机器人的场景应用及功能有哪些
  10. 婚礼上可用的 八荣八耻(大全)