计算边缘光照

简介: 原理简单说一下,主要是用来计算边缘光照的,首先通过视线与法线的夹角来找到模型的边缘,然后再根据距离的远近来控制发射光的强度。   [cpp] view plain copy   half rim = 1.0 - saturate(dot (normalize(IN.viewDir), IN.worldNormal));   o.Emission = _RimColor.rgb * pow (rim, _RimPower);     IN.viewDir是当前视角向量,IN.worldNormal是物体的法线。

原理简单说一下,主要是用来计算边缘光照的,首先通过视线与法线的夹角来找到模型的边缘,然后再根据距离的远近来控制发射光的强度。

 

[cpp]  view plain  copy
 
  1. half rim = 1.0 - saturate(dot (normalize(IN.viewDir), IN.worldNormal));  
  2. o.Emission = _RimColor.rgb * pow (rim, _RimPower);  



 

IN.viewDir是当前视角向量,IN.worldNormal是物体的法线。dot是计算视角和法线的点积,等于视角和法线夹角的cos值,Cos的值域是1-0,1-cos就成了0-1,在夹角90度时达到最大值,正好用来模拟侧光的强度(与视角成90度的部分光线最强,就是边缘光了)
把这个值的变化率用一个pow函数(rim的_rimPower次方)进行放大,就能强化边缘发亮的效果。

 

 

http://blog.csdn.net/silangquan/article/details/39580631

相关文章
|
4月前
[贴装专题] 基于halcon的最小二乘法计算吸嘴或机械轴旋转中心
[贴装专题] 基于halcon的最小二乘法计算吸嘴或机械轴旋转中心
57 0
|
4月前
|
算法
[贴装专题] 基于halcon的拟合矩形边缘验证贴装精度
[贴装专题] 基于halcon的拟合矩形边缘验证贴装精度
29 0
|
4月前
[Halcon&拟合] 拟合直线边缘并计算距离
[Halcon&拟合] 拟合直线边缘并计算距离
67 0
|
4月前
[Halcon&几何] 线段中点、端点和角度的计算
[Halcon&几何] 线段中点、端点和角度的计算
49 0
|
4月前
|
算法 数据可视化 C#
C# | Chaikin算法 —— 计算折线对应的平滑曲线坐标点
本文将介绍一种计算折线对应的平滑曲线坐标点的算法。该算法使用Chaikin曲线平滑处理的方法,通过控制张力因子和迭代次数来调整曲线的平滑程度和精度。通过对原始点集合进行切割和插值操作,得到平滑的曲线坐标点集合。实验结果表明,该算法能够有效地平滑折线,并且具有较高的精度和可控性。
53 0
C# | Chaikin算法 —— 计算折线对应的平滑曲线坐标点
|
12月前
【双目视觉】 理想条件下计算物体距离
【双目视觉】 理想条件下计算物体距离
44 0
|
编解码 人工智能 算法
最新代码开源!TartanCalib:自适应亚像素细化的广角镜头标定
作者测试了三种利用中间相机模型的关键方法:(1)将图像分解为虚拟针孔相机,(2)将目标重新投影到图像帧中,以及(3)自适应亚像素细化。将自适应子像素细化和特征重投影相结合,可将重投影误差显著提高26.59%,帮助检测到最多42.01%的特征,并提高密集深度映射下游任务的性能。最后,TartanCalib是开源的,并在一个易于使用的标定工具箱中实现。作者还提供了一个translation 层和其它最先进的工作,允许使用数千个参数回归通用模型或使用更稳健的求解器。为此,TartanCalib是广角标定的首选工具!
最新代码开源!TartanCalib:自适应亚像素细化的广角镜头标定
|
PyTorch 算法框架/工具
【pytorch实现】用卷积核检测图中对角方向边缘(小练习)
【pytorch实现】用卷积核检测图中对角方向边缘(小练习)
|
人工智能 开发者 Python
边缘分布 | 学习笔记
快速学习边缘分布
207 0
边缘分布 | 学习笔记
|
算法 数据挖掘 计算机视觉
基于多目标视频图像边缘特征的核相关滤波跟踪算法
基于多目标视频图像边缘特征的核相关滤波跟踪算法
153 0
基于多目标视频图像边缘特征的核相关滤波跟踪算法