Blinn-Phong模型像素着色原理

Shading着色

定义:对不同物体定义不同材质的过程

Ambient lighting 环境光

定义一个像素点

Diffuse Reflection 漫反射

 漫反射原理

接收光

Lambert’s余弦定律:接收到的能量和光照方向与法线方向的余弦值成正比

 反射光

如下图,在密封的求壳,若对第一个壳(半径为1)中任意点光照强度为l,则总能量应为4πI,根据能量守恒,越外层的点,光照强度最低,对于最外层的壳(半径为r),则点能量应为:I'=4πI/4πr2=I/r2

根据接收光和反射光原理,最终光照结果应该为如下公式

反射率×接收到的光照×反射的光照

式中:

Kd是指一个反射率,当吸收所有光时,反射率为0,应该是黑色,当反射所有光时,反射率为1,应该为白色

I/r2是接收光

n·LLambert’s余弦定律反射的光,当小于0时没有物理意义

高光

当镜面反射R与实际反射V足够接近时,就会产生高光(R为镜面反射,V为实际反射)

 

演化为镜面反射法线n与实际反射法线h足够接近时,就会产生高光

演化的原因是h好算,只要向量相加除模长即可

 

如下图,Ks与高光亮度成正比,p与高光大小成反比

环境光

环境光因为过于复杂,所以通常用常量来表示

Ka为颜色,Ia为一个光照的常量

blinn phong模型三种光相加后的结果

 

 

 

 

 

posted @   邢韬  阅读(221)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
点击右上角即可分享
微信分享提示