[傅老師/Unity教學]渲染相关知识

  • 01 基础渲染步骤
  • 02 室內光影基础实验
  • 03 用一颗石头架场景!! 室外光影基础实验
  • 04 05 shader graph --- Lambert Diffuse & specular
  • 06 场景烘焙知识
  • 07 Guilty Gear X 卡通渲染Shader
  • 08 Light probe, Realtime GI, Baked GI
  • 09 Cloudy sky
  • 10 11 Global Illumination Reflection Probe
  • 13 Volumetric Light
  • 14 Realtime lighting详解


 

01 基础渲染步骤

首先是颜色空间——伽马校正,可以回顾以前的笔记,没有特殊要求直接用线性空间即可

unity视频正片叠底黑色背景 unity怎么把背景变黑_Real


关于阴影,默认的阴影会长这样

unity视频正片叠底黑色背景 unity怎么把背景变黑_环境光_02


把环境光和环境反射都变黑就纯黑了

unity视频正片叠底黑色背景 unity怎么把背景变黑_贴图_03


把相机颜色变黑,灯光颜色调白就会纯黑白

unity视频正片叠底黑色背景 unity怎么把背景变黑_贴图_04


渲染过程可以在window选项卡中找到frame debug工具

过程包括首先清空g-buffer(color+Z+stencil),然后用深度算影子

影子质量什么的可以在project setting——quality里面设置,URP管线可以到pipeline asset里设置

之后正常的前向渲染流程逐个分析

unity视频正片叠底黑色背景 unity怎么把背景变黑_Real_05


unity视频正片叠底黑色背景 unity怎么把背景变黑_Real_06

02 室內光影基础实验

搭了一个场景,然后介绍基础的pbr材质球设置

unity视频正片叠底黑色背景 unity怎么把背景变黑_贴图_07


然后选一些光源放到房间,反射球

unity视频正片叠底黑色背景 unity怎么把背景变黑_贴图_08


调节各种光源和材质参数

unity视频正片叠底黑色背景 unity怎么把背景变黑_贴图_09

03 用一颗石头架场景!! 室外光影基础实验

比较重复性的工作,使用一个石块模型组合以后搭出场景,配上天空盒,打个背光

加上抗锯齿,bloom,sun shafts,vignette,depth of field

unity视频正片叠底黑色背景 unity怎么把背景变黑_Real_10

04 05 shader graph — Lambert Diffuse & specular

该节讲一下lambert漫反射和phong镜面光怎么用shader graph连
庄懂第一节庄懂第五节

06 场景烘焙知识

GI——全局光照,简易解释 直射光D找不到的地方由GI来照亮

unity视频正片叠底黑色背景 unity怎么把背景变黑_环境光_11


目前是一个实时灯光打下来,不开任何GI的结果

unity视频正片叠底黑色背景 unity怎么把背景变黑_环境光_12


把光开成baked,物件选为static,render——light里面开启烘焙开关

unity视频正片叠底黑色背景 unity怎么把背景变黑_环境光_13


如果在Direction Mode选了Directional就会烘出两张图,包括光方向

unity视频正片叠底黑色背景 unity怎么把背景变黑_环境光_14


Non-Directional就不会烘出光方向的图

unity视频正片叠底黑色背景 unity怎么把背景变黑_贴图_15


如果max lightmap size设置的小,lightmap resolution设置的大,就会烘焙出多张lightmap

unity视频正片叠底黑色背景 unity怎么把背景变黑_贴图_16


反之张数会变少

unity视频正片叠底黑色背景 unity怎么把背景变黑_Real_17


lightmap padding是lightmap直接的缝隙

选项中的Indirect Intensity可以调控全局的强度

albedo boost可控制表面之间反射的光线量,增强场景中材质的反照率。此值越大,材质的Albedo越趋向于白色。默认值1是物理上准确的

07 Guilty Gear X 卡通渲染Shader

unity视频正片叠底黑色背景 unity怎么把背景变黑_贴图_18


unity视频正片叠底黑色背景 unity怎么把背景变黑_unity视频正片叠底黑色背景_19

  • colormap 底色;SSSmap 次表面散射;Combined map混合贴图,也就是ILM贴图(下面会说)

unity视频正片叠底黑色背景 unity怎么把背景变黑_贴图_20

  • 法向量重映射到0到1

unity视频正片叠底黑色背景 unity怎么把背景变黑_unity视频正片叠底黑色背景_21

  • ILM贴图的B通道存shadowmap

unity视频正片叠底黑色背景 unity怎么把背景变黑_Real_22

  • 阴影和SSS与环境光乘起来

unity视频正片叠底黑色背景 unity怎么把背景变黑_unity视频正片叠底黑色背景_23

  • 描边,采用模型外扩;鼻子用多余的多边形;内部线存到A通道,UV被拉直

unity视频正片叠底黑色背景 unity怎么把背景变黑_环境光_24

  • R通道记录specular的强度,B通道记录specular的大小

unity视频正片叠底黑色背景 unity怎么把背景变黑_unity视频正片叠底黑色背景_25

  • AO采用涂顶点色的方式

08 Light probe, Realtime GI, Baked GI

收集了一些Light probe的相关资料

Probe-Based Global Illumination聊聊LightProbe原理实现以及对LightProbe数据的修改Unity中Light Probe详解

简单理解,Light Probe是3D空间中的探头,对入射光进行采样并将这些信息通过球谐函数编码处理后进行保存,解码很快,用作光照

unity视频正片叠底黑色背景 unity怎么把背景变黑_unity视频正片叠底黑色背景_26


unity视频正片叠底黑色背景 unity怎么把背景变黑_环境光_27


unity视频正片叠底黑色背景 unity怎么把背景变黑_贴图_28

09 Cloudy sky

插件 kejiro cloud sky box

镜头光晕用商店里免费的 lens flare

本节主要在调参(码一下,日后可学习其原理)

unity视频正片叠底黑色背景 unity怎么把背景变黑_Real_29

10 11 Global Illumination Reflection Probe

使用light probe实现GI

unity视频正片叠底黑色背景 unity怎么把背景变黑_贴图_30


unity视频正片叠底黑色背景 unity怎么把背景变黑_unity视频正片叠底黑色背景_31


使用probuilder插件简易建模

如果是点了auto generate 那么GI缓存目录如下,所以一般auto generate不打√,手动generate lighting会在scene文件夹建立lightmap

unity视频正片叠底黑色背景 unity怎么把背景变黑_unity视频正片叠底黑色背景_32


light选择mixed能烘到GI上,调整indirect multiplier可以调整强度放入反射球能够正确反射

unity视频正片叠底黑色背景 unity怎么把背景变黑_环境光_33

13 Volumetric Light

插件 SlightMad/VolumetricLights

光上加

unity视频正片叠底黑色背景 unity怎么把背景变黑_Real_34


相机加上

unity视频正片叠底黑色背景 unity怎么把背景变黑_贴图_35


脚本控制参数,让洞穴中才有体积光

14 Realtime lighting详解