写在前面

计划完整学习AO相关,先从最直观的美术角度看看AO贴图如何烘焙及应用的,我觉得能更好的帮助我学习和理解,因此美术向的学习排在了图形学算法学习的前面。文中图片都是直接截图别人视频的内容,如有侵权请联系删除~

之后会继续更新图形部分的环境光遮蔽AO SSAO等内容。

AO贴图解决的问题

光追出现之前,游戏主要渲染方法是光栅化。光栅化是传统的渲染流程(但也是初学必须了解的内容之一!),也是软件向硬件妥协的结果。

随着硬件的提升,制作游戏对渲染画面要求也变得更高了。然而光栅化的光影、阴影等都与现实区别较大——仅计算直接光照,为了渲染出更真实、光影效果更加丰富的游戏画面,渲染开始向着全局光照效果靠拢。于是,基于此前的光栅化基础,出现了一系列计算全局光照的技术,本篇文章讲的AO贴图基于的原理Ambient Occlusion就是其中之一。

Ambient Occlusion,中文直译为环境光遮蔽。各种教程经常会提到“AO贴图”就是指现在所讲的AO。AO贴图解决的问题是间接光部分的:由于模型自身的凹凸不平,自己会遮挡自己,结果环境光照到的时候,就会比其他部位暗一点。这也正可以理解为什么是“环境光” “遮蔽” 了。

1 PBR中的AO贴图

下图( 图源知乎)是PBR两个工作流需要的贴图,其中AO贴图和法线贴图、高度贴图一起可在Metal/Roughness、Specular/Glossiness两种管线中流通,PBR Guider中把他们叫做Common Maps,即通用纹理。

2 烘焙AO贴图

我们结合次世代建模流程来看,AO贴图应该是流程(下图所示)中的第5步完成的:

烘焙AO常用的软件一般有Toolbag(八猴)、Substance Painter(SP)、knald等,b站随便找了个烘焙AO的视频:SP烘焙贴图 & Blender 的 AO贴图节点连接方法,直接截图这位UP的过程来过一遍实际项目中烘焙AO的流程,作为个人学习记录。

注意:这种在软件中直接烘焙好的AO纹理是不包含相邻对象阴影的,只是一个简单的自阴影贴图(self-shadowing map)。

2.1 导出高、低模型

此时高、低模已经做好就绪,他是在blender里建好模型后导出的:

2.2 基于高模烘焙

将低模导入SP,再基于高模烘焙各种贴图,跟AO贴图一起烘焙的还有法线(切线空间&世界空间)等贴图:

烘焙完成后,随便拖入一个材质查看当前包括AO贴图、法线贴图在内的贴图效果:

导出贴图,可以发现AO贴图其实是一张8位的灰度图

3 应用AO贴图

本小节所说的应用是在如blender等建模软件中的应用,至于引擎中是有固有流程的,且拖入指定位置就行比较简单,就不再写了。

3.1 直接叠baseColor×

看上去是属于美术的东西,好像没什么讲的,其实AO如何应用也是非常重要的!

例如上述教程中这位UP主的做法是把AO贴图直接跟baseColor正片叠底,如下图:

这样做的后果是——任何光照都会受到AO的影响,但是AO本质上是记录间接光的遮蔽信息,是不影响直接光照部分的效果的,这样一叠就违背了环境光遮蔽本来的意思和作用。

3.2 单独赋予1个材质√

给AO贴图一个单独的材质,这才是正确的做法。过程参考的话可以看这个视频:Blender使用AO贴图丰富材质细节,环境光遮蔽贴图使用,视频中跟我表达的是一个意思,给AO和baseColor分别都连了一个Principle BSDF材质节点,如此二者光照效果是可以区分开的,还给了一个渐变节点作为调节AO程度的参数:

【技术美术美术部分】AO贴图的烘焙及应用相关推荐

  1. 【技术美术图形部分】AO理论及优化 AO贴图如何参与渲染

    写在前面 昨天从美术的角度出发,对AO贴图参与到次世代建模流程中的过程进行了学习.今天从图形学角度学习环境光遮蔽. 封面图截取自实时渲染GI|Ambient Occlusion:AO.SSAO.HBA ...

  2. Unity Shader-Ambient Occlusion环境光遮蔽(AO贴图,GPU AO贴图烘焙,SSAO,HBAO)

    前言 十一放假很开心,正好赶上观望了了许久的<尼尔·机械纪元>打折啦.窝在家里搞了三天三夜,终于E结局通关啦!!!真的好久没玩过这么好玩的游戏了,于是乎我的废话应该会多不少,毕竟,写blo ...

  3. Unreal 入门-AO贴图

    1 AO贴图详解及生成方法 1.Ao贴图的作用 Ao-AmbientOcclusion,"环境吸收"或者"环境光吸收" Ao贴图就是为模型提供了非常精确和平滑的 ...

  4. 关于白石画廊香港分社发起基于区块链技术的美术品在线拍卖平台开发项目的ICO众筹的公告

    香港 -- (美国商业资讯) -- 白石画廊香港位于香港(地址:香港特区黄竹坑道12号香华工业大厦6楼,董事会理事长:白石幸生https://www.whitestone-gallery.com/)宣 ...

  5. 【Zigbee技术入门教程-02】一图读懂ZStack协议栈的核心思想与工作机理

    [Zigbee技术入门教程-02]一图读懂ZStack协议栈的核心思想与工作机理 广东职业技术学院  欧浩源   Z-Stack协议栈是一个基于任务轮询方式的操作系统,其任务调度和资源分配由操作系统抽 ...

  6. unity中使用AO贴图和自发光emission的简单应用

    注意点: 1.法线的归一化 normalize (如果shader光照效果怪怪的,请查看是否归一化) 2.在计算自发光emission 直接使用的normal : appdata 中的normal 转 ...

  7. CNN可视化技术总结(一)--特征图可视化

    导言: 在CV很多方向所谓改进模型,改进网络,都是在按照人的主观思想在改进,常常在说CNN的本质是提取特征,但并不知道它提取了什么特征,哪些区域对于识别真正起作用,也不知道网络是根据什么得出了分类结果 ...

  8. CSS Sprites的原理(图片整合技术)(CSS精灵)/雪碧图

    CSS Sprites的原理(图片整合技术)(CSS精灵)/雪碧图   一.将导航背景图片,按钮背景图片等有规则的合并成一张背景图,即将多张图片合为一张整图,然后用background-positio ...

  9. 成都理工大学工程技术学院计算机专业收分线,2019年成都理工大学工程技术学院美术类专业录取分数线...

    四川:艺术本科省控线文化分370专业分200(单科成绩均不低于60分),录取最低专业分224:艺专省控线文化分140专业分160,录取最低专业分181. 内蒙古:艺术本科省控线文化分279专业分199 ...

最新文章

  1. mybatis数据批量插入
  2. HDU1074 Doing Homework
  3. 类库 通用变量 is和as 委托
  4. Ethercat解析(十)之从站配置
  5. 关于sap的日期,时间
  6. 被单位开除后,以前的工龄还算吗?
  7. 二十四 Redis消息订阅事务持久化
  8. java集成常用数组操作的类(比之前的集成度高点)
  9. [System Design] 系统设计 (2) -- 数据库设计
  10. linux硬盘只读脚本 zabbix,Zabbix如何设置脚本告警
  11. 【Visual C++】游戏开发笔记三十五 站在巨人的肩膀上:游戏引擎导论
  12. 遥感图像预处理—步骤
  13. 股票、基金、场内ETF基金下载数据代码例子
  14. 李雅普诺夫理论基础(1)
  15. 阿里云产品推荐——云数据库RDS MySQL 版
  16. 将单元格中的内容拆分成多列/行
  17. 2017年第26届上海国际连锁加盟展览会会刊(参展商名录)
  18. 无线蓝牙耳机什么牌子好?适合学生党的蓝牙耳机性价比排行榜
  19. 二分图的最大匹配-解决匹配问题
  20. 如何使用Excel管理项目?

热门文章

  1. 我的物联网项目(十) 线下之战
  2. 财经类大学计算机专业就业,财经类高校学生就业前景如何?工资高吗?
  3. 射频模块(SX1278)
  4. 关于ESI研究前沿的思考和使用方法研究
  5. 棋牌游戏 投资风险 政策_机会,风险和政策
  6. 使用c语言求一元二次方程的根
  7. Fix Self Tanner Mistakes
  8. matlab矩阵写入csv
  9. 文件下载下来是php格式怎么办?
  10. 获取 postman 的 token