Blender烘焙光照贴图

  • 前言
  • 步骤
    • 1. 创建场景中的物体
    • 2. 得到光照UV展开图
    • 3. 为烘培做准备(1)
    • 4. 为烘培做准备(2)
    • 5. 烘焙`环境光遮蔽`光照贴图
  • 参考资料

前言

Blender烘焙光照贴图是常用的一种方法。在得到光照贴图后,预览3D场景等场合中,只需要加载静态光照贴图,而不需要实时渲染光照,从而达到快速预览的效果。

步骤

1. 创建场景中的物体

0)前言

本节中,我们将 1)创建场景背景,2)创建场景中需要的物体。

1)创建场景背景

创建一个正方体 -> 进入编辑模式 -> 打开点选择模式 -> 选中顶面任意一个端点。

按下X删除快捷键 -> 选择删除选中顶点

得到下面的状态。

保持在编辑模式中(如果退出到物体模式了,可以通过 左键选中当前物体 -> 按Tab键 来进入编辑模式) -> 按A选中所有点(/线/面) -> 按下Ctrl+Shift+N(也可Mesh->Normals->Recalculate Inside)来重新计算内部面(这样后面的UV会对应到该物体的内部面,而非外部面)。

2)创建场景中需要的物体

按下Tab回到物体模式,随意创建几个物体,以供稍后烘焙光照贴图时使用。

2. 得到光照UV展开图

0)前言

本节中,我们将 1)学习创建新窗口(可跳过),2)创建光照UV展开图, 3)学习提高烘培效率的技巧(可跳过)

1)创建新窗口(可跳过)

保持着物体模式 -> 鼠标左键来选中一个物体 -> 通过Shift+鼠标左键依次选中所有场景内将要被贴图烘焙的物体(不全选的原因是不想选中灯光相机) -> 按下Ctrl+J来合并所有物体

(注:这一步可忽略,后续操作在已有窗口中进行即可)鼠标放在下图中A点的黑色间隙处后,鼠标变为字 -> 按下鼠标,向右水平拖拽新建一个窗口。

(这里注意鼠标的拖拽方向需要非常精准的水平方向,失败了多试几次,关闭多于窗口的方法见 [1] [2],注意窗口角落处黑色的空隙窗口的内部角落(没离开窗口区域)分别对应创建新窗口合并已有窗口

2)创建光照UV展开图

打开UV编辑器 -> 鼠标移至3D物体所在视窗内 -> 鼠标左键选中物体 -> 按下Tab进入编辑模式

(注意必须左键选中物体后再进入编辑模式,否则下一步中的Lightmap Pack会报错“No mesh object”



(如果没有如上图所示那样全选的话,)鼠标移入3D物体所在窗口,按A选中所有点(/线/面) ->,按U打开UV菜单 -> 选择Lightmap Pack -> (可使用默认设定)点击OK

UV编辑器视窗中得到物体的UV展开图。

3)提高烘培效率(可跳过)

(注:这一步是可选步骤,目的是提升烘培效率。后续步骤中将默认忽略了此步骤)(这里可以调整展开图中各种面的大小;调整完大小后,可以在3D物体视窗中进入编辑模式 -> 全选点/线/面 -> Ctrl+T将选中面三角形化,防止曲面被自动三角形化后得到无法控制的结果;调整完大小并且(/或)三角形化后,在UV编辑器中选中所有点(/线/面),在UV编辑器的菜单栏中找到UV -> Pack Islands使得展开面更加的紧凑(效果见下面的第二张图),从而减少烘培时不必要的消耗。)

3. 为烘培做准备(1)

0)前言

本节中,我们会1)创建空贴图,2)删去原有的原理化BSDF节点,并增添AO节点和Diffuse着色器节点。

1)创建空贴图

打开图像编辑器 -> 在窗口的菜单栏里找到新建按钮 -> 创建一个名为lightmap的图像(名字可随意,阅读后续步骤时自行替换即可)

(在下面的第三张图里,可以自行缩小新建图像的宽度高度,减少烘焙所用时间;有些人这里会选中32-bit Float得到32位光照贴图后用photoshop转回8位贴图,这里觉得没有必要,所以没有勾选32-bit Float,而是使用默认的生成8位贴图`功能。)



得到下图后,可以将鼠标放在黑色区域内,向下滑动鼠标滚轮缩小图片,得到下面的第二张图。

2)修改着色器节点

在3D物体窗口内选中物体 -> 打开着色器编辑器 -> 鼠标放在窗口内,按N收回右侧菜单栏 -> 左键选中原理化BSDF,按X键删除(得到下面第三张图)


鼠标放在窗口中,
Shift+A -> 点击输入 -> 点击Ambient Occlusion,创建Ambient Occlusion节点以实现最终生成环境光遮蔽光照贴图;
Shift+A -> 点击着色器 -> Diffuse BSDF,创建Diffuse BSDF节点使场景中的物体拥有散射效果;
依找Ambient Occlusion -> Diffuse BSDF -> Material Output的顺序连接三个节点(见下面第三张图)。


4. 为烘培做准备(2)

0)前言

这一节里,我们会1)创建一个图像纹理节点和2)一个Emission节点供后续测试时使用,3)并且配置好光照表现较好但是渲染速度较慢cycles渲染引擎。

1)Image Texture节点

注:该节点必须在烘焙前配置完成,否则烘培时会收到No active image found in material "<Material>" (xx) for object "<object>"报错

着色器编辑器中创建图像纹理节点 -> 点击节点中的图片小图案 -> 选择之前创建的lightmap图像

2)Emission节点

注:该节点可在烘焙完成后添加,且可自行选择是否添加。

创建一个Emission节点,连接lightmap节点(由图像纹理节点选中图片后转变而成的)和Emission节点。


3)配置Cycles渲染引擎

属性窗口中,选择Cycles引擎,选用烘焙效率更高的GPU计算来加速烘焙过程。

5. 烘焙环境光遮蔽光照贴图

0)前言

本节,我们会1)烘焙光照贴图,随后在2)修改相应的着色器节点后,3)查看静态渲染的最终场景。

1)开始烘焙

进入①属性窗口 -> 打开②渲染属性 -> 确保烘焙类型Combined -> 点击④烘焙 -> 等待⑤烘焙完成。

注:

  1. 这里的Combine是将各种光照贴图融合后的光照贴图,也可以选择其他类型,分别烘焙。
  2. clear image选项是为了在已经烘焙过的情况下,清除先前的烘焙结果,使得image保持最新结果。
  3. select to active通常用于烘焙高精度模型贴图,用于低精度模型。使用时,先选中高精度模型,然后按住shift左键低精度模型,随后即可开始烘焙。

    2)修改着色器节点

完成后,图像窗口的lightmap会变为这样。

接下来,在着色器编辑器中,如下图连接节点。

3)查看最终结果

最后,在3D物体窗口,打开Viewport Shading模式(如图箭头所示),便可查看静态渲染的场景了。

参考资料

https://www.bilibili.com/video/BV1w4411W7FR/

Blender烘焙光照贴图相关推荐

  1. 关于unity2019.3.11.f在烘焙光照贴图时闪退的问题

    在用unity2019版本的项目时一直有个问题困扰着我,就是勾选lighttingSetting中Auto Generate后,unity开始烘焙光照贴图时大概率立马闪退且没有任何报错信息. 为何说是 ...

  2. unity 烘焙 光照贴图 以及一些灯光的相关问题(一)

    在做游戏场景的时候,由于一般场景大部分的物体都是静止不动的(static),如果这些物体使用实时光照的话,会有很大的性能开销,比如物体的阴影.但是由于很多情况下,场景中大部分物体的位置不会在游戏运行的 ...

  3. unity 烘焙 光照贴图 以及一些灯光的相关问题(二)

    在上一篇了解了光照以及光照贴图的一些相关属性后,在这篇具体讲讲相关的使用,以及自己预见的一些坑. 首先还是在上一篇的场景基础上,我们隐藏Realtime和Mixed光源,只留Baked的光源用来进行场 ...

  4. 解决烘焙光照贴图有黑斑

    原链接,谢谢大佬指点:https://blog.csdn.net/bn030514/article/details/50924803   因为一些特殊需求,美术制作一些物件的时候,需要纹理坐标与3d坐 ...

  5. GraphicsLab Project之光照贴图烘焙(一)

    作者:i_dovelemon 来源:CSDN 日期:2018-05-19 主题:Radiosity Algorithm, Global Illumination, Barycentric Coordi ...

  6. 【Cocos Creator 3.x】如何进行光照烘焙(使用光照贴图)

    前言 这是一篇基础教程篇,在于帮助使用者快速理解并使用 Cocos Creator 3.x 引擎提供的 光照贴图 功能. 光照贴图 Cocos Creator 引擎的官方文档是这么描述的: 当我们进行 ...

  7. 使用预计算实时全局光照优化照明-微调光照贴图参数

    本文地址:https://blog.csdn.net/t163361/article/details/124107784 翻译说明: 教程翻译主要用谷歌翻译后,对特别不通顺的地方进行了微调.同时针对一 ...

  8. unity android光照贴图格式,光照贴图参数

    Lightmapping Quickstart 光照贴图定向模式 光照贴图参数 The Lightmap Parameters Asset is used to store a set of valu ...

  9. Blender烘焙Lightmap光照贴图

    1.创建场景中的物体 2.取得UV展开图 2.1 创建新窗口 保持物体模式 -> 鼠标左键选中一个物体 -> 通过Shift+鼠标左键依次选中场景内将要被贴图烘焙的物体(或从右侧大纲视图中 ...

  10. 虚幻引擎图文笔记:调整网格的光照贴图分辨率(Light Map Res)改善光照烘焙质量

    通过调整网格的光照贴图分辨率(Light Map Res)改善光照烘焙质量 问题描述 下图所示的场景非常简单,光源是一个标记为Static的点光源(Point Light),经过烘焙之后,不难看出光斑 ...

最新文章

  1. NBT:扩增子及其他测序的最小信息标准和测序规范(MIMARKS)
  2. PXE安装CentOS
  3. PyQt5 技巧篇-窗口置顶设置,如何使窗口始终显示在最前面
  4. java await signal_java Condtion await方法和signal方法解析
  5. plsql轻量版触发器
  6. CSS background 属性
  7. python编程教学视频-【科研资源03】最全Python编程全套系统视频学习教程
  8. Java jsp 自定义标签
  9. IntelliJ IDEA下SVN的配置及使用说明
  10. 阵列信号处理仿真一——延时求和滤波器
  11. 仿弹个课教育类APP项目,客户端+服务端
  12. 网站视频很卡怎么办?有没有免费的视频平台?使用阿里云OSS对象云存储+下行流量包解决网站文件/视频访问慢问题
  13. python Click库知识点汇总
  14. If you want to be loved, be lovable.
  15. Spring Data MongoDB简单的增删改查
  16. 判断是不是数字 Java_java如何判断是不是数字
  17. 梯度反方向是函数值局部下降最快的方向
  18. sFlow - 简介
  19. UVa 10387 Billiard
  20. Apache Commons Codec介绍

热门文章

  1. TwoSampleMR:local clump(MR-Base exceeded 300 seconds)
  2. (转)国内外优秀的Web前端工程师
  3. ShareTechnote系列LTE(10):多小区多RAT之间的交互
  4. 《明解C语言》示例代码和练习代码[第10章]
  5. 电脑鼠标双击桌面图标打不开怎么办
  6. 使用WInDynamicDesktop自定义上传图库生成主题教程
  7. 解决VMware装上Mac后icloud无法激活 【安装QQ发现不能注册Apple ID】
  8. 平台的边际成本与商家的边际成本
  9. 2020 愿远方依旧有篮球为伴 致敬24号 科比
  10. python实现匿名发邮件_Python 实现邮件发送功能(初级)