计算边缘光照
2017-05-24 09:45
246 查看
原理简单说一下,主要是用来计算边缘光照的,首先通过视线与法线的夹角来找到模型的边缘,然后再根据距离的远近来控制发射光的强度。
[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是物体的法线。dot是计算视角和法线的点积,等于视角和法线夹角的cos值,Cos的值域是1-0,1-cos就成了0-1,在夹角90度时达到最大值,正好用来模拟侧光的强度(与视角成90度的部分光线最强,就是边缘光了)
把这个值的变化率用一个pow函数(rim的_rimPower次方)进行放大,就能强化边缘发亮的效果。
http://blog.csdn.net/silangquan/article/details/39580631
[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是物体的法线。dot是计算视角和法线的点积,等于视角和法线夹角的cos值,Cos的值域是1-0,1-cos就成了0-1,在夹角90度时达到最大值,正好用来模拟侧光的强度(与视角成90度的部分光线最强,就是边缘光了)
把这个值的变化率用一个pow函数(rim的_rimPower次方)进行放大,就能强化边缘发亮的效果。
http://blog.csdn.net/silangquan/article/details/39580631
相关文章推荐
- 计算矩阵边缘元素之和
- [土狗之路]coursera C语言进阶习题 计算矩阵边缘元素之和
- 边缘计算促进微数据中心的兴起
- opengl使用Blin-phone模型计算镜面光照强度
- Unity预计算全局实时GI(五)- 探头光照技术(Probe lighting)
- 边缘计算终结云计算?OpenStack辟谣:它们好着呢!
- OpenCV 2.4+ C++ 边缘梯度计算
- 边缘计算如何层次化部署
- 2017-01-17号 上午 计算网路和因特网、组成描述、服务描述、网络边缘、接入网 上
- Application Scenarios of Edge Computing——边缘计算的应用场景
- FPGA视觉从入门到放弃——可变光照下结构化模板对边缘提取的影响
- Precomputed Radiance Transfer计算间接光照
- 微计算实践:从Serverless说起,谈谈边缘计算的未来 - PaaS云
- 假如OpenStack干掉了AWS,边缘计算就是武器
- 边缘计算:展望与挑战
- [导入]不需要任何附加信息的伪凹凸光照计算方法。
- 物联网还是那个物联网吗?边缘计算告诉你
- 常用光照计算算法
- 边缘服务器计算
- Unity预计算全局实时GI(六) - UV展开与减少光照图数量