AO学习笔记

本文介绍了环境光遮挡(AO)的基本原理和作用,通过软模拟算法来解释如何计算AO,包括伪代码展示,并探讨了算法的扩展,如通过增加射线采样和考虑距离深化因子。此外,还提到了使用硬件shader进行计算的方法,以及随机点位置对采样效率和误差的影响。作者通过实践展示了AO应用前后的效果差异。
摘要由CSDN通过智能技术生成

接到一个AO的任务。就学习了一下。也理清了一些以前误解的信息。

AO全称 ambient occlusion.环境光遮挡。基本的原理。

AO的是光照无关的。光从哪里来。有几个和AO没关系。

AO是一个物体当时形变下所具有的属性。

比如人如果世界上只有白光那么人看起来是不是就是全白的呢。肯定不是。看看你们的大腿内侧(我很纯洁的。)是不是发现有阴暗面。为啥呢。应为光线打过来折射的时候被其他部位给档了。这样就会有阴暗。层次。

这也就是AO的核心。

AO就是要表现出这些本来固有的遮挡。

AO可以让mesh看起来更真实更有层次感。立体感。

说了那么多说一下算法。

最基本简单的是软模拟。

下面是伪代码

  

For each triangle {
  Compute center of triangle
  Generate set of rays over the hemisphere there
  Vector avgUnoccluded = Vector(0, 0, 0);
  int numUnoccluded = 0;
  For each ray {
    If (ray doesn't intersect anything) {

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值