光照

发布时间 2023-09-27 23:54:21作者: XTG111

UE427官方文档

构建虚拟世界

第一节--构建模型

Lightmass 重要体积:用于控制和集中体积内的光照和阴影效果。

水体:水系统由两个关键元素构成,可编辑的水面和水面材质
水系统有自己的基于样条线的网格体系统,用于定义世界内应该包含水的区域。主要工作流程是使用Water Mesh Actor(水网格体Actor)设置Water Body Actors(水体Actor)的属性。谁网格体定义了所渲染水面的质量和细节

Water Mesh Actor生成Water Body类型的表面,Water Mesh Actor并不会渲染表面。水体的渲染主要通过样条线来确定,样条线可以用来定义关卡中不同类型的河流,湖泊,海洋区域,并且定义了Water Mesh Actor在何处绘制并渲染。其仅渲染当前摄像机视野部分。

第二节--光照

  1. 胶囊体阴影
    胶囊体阴影依附于骨骼,可在场景中精确移动和投射阴影
    物理资源视口中的地面阴影不是胶囊体阴影的代表

阴影分为胶囊体间接阴影,胶囊体直接阴影,和胶囊体间接阴影最低可见度
启用胶囊体间接阴影后,角色将投射柔和阴影,在仅有反射光照的区域中呈现出真实落地的感觉。
胶囊体直接阴影需要将光源移动性设为静止static
构建胶囊体阴影

  1. 环境光源混合器
    window-> Env.Light Mixer
    可以在一个界面中同时编辑关卡中的天空、云、大气光源和天空光照的环境光照组件

  2. HDRI背景
    HDR:高动态范围图像,将HDR图像用作背景,为实现合理效果,在HDR图像环境中需用假的背景平面捕捉阴影,当物体被照亮时,阴影将投射到此假平面,从而在可视化放置物体和背景之间创造一致性。
    利用HDRI背景Actor来完成这些操作

    • 背景网格体
    • 来自动态天空光照的环境照明
    • 动态反射
    • 使用阴影捕捉投射到地面
      HDRI的细节面板中,主要有3个选项
    • Cubeman: 贴图HDRI图像
    • Size: 调整此值设置网格体(HDR图像投射到之上)的大小
    • Projection Center: 要移动其使得与拍摄这张HDR图像的
      摄像机位置高度匹配,目的是减少HDR图像的偏斜和拉伸
  • 光照距离系数,定义摄像机周围的地面区域,混合场景光照和阴影减少它们与背景的差异。
    导入HDR图像为虚幻资产时,HDRIActor不会对其进行修改,需要手动修改。Maximum Texture Size要与HDR图像的较大分辨率匹配,MipGenSettings设置为NoMipmaps以使用完全品质
    HDR图像背景网格体设置
    EnviroDome: 拥有地面平面的穹顶网格体,主要用于大型外部环境的HDR图像
    EnviroBoxSharp: 拥有毛边的箱体环境,是室内环境的理想选择
    EnviroBox: 平滑边缘的箱体环境,用于工作室环境
    注意事项
  • 添加HDR图像时,如果之前有天空光照,则需要将其删除
  1. 光照函数
    本质上就是一种材质,用于过滤光照的强度,只适用于未应用光照贴图的光源(静态光源和可移动光源),静态光照无法使用光照函数

  2. 光照通道
    一项渲染功能,可选择特定的光照照亮可渲染表面。
    使动态光源仅在其光照通道发生重叠时才对物体产生影响,UE最多支持3种光照通道
    同样只能应用于固定光源和移动光源,以及可移动Actor,且无法应用于半透明或者遮罩材质

  3. LightMass门户
    主要效果可以接受点光源,聚光源等光源的光子发射,增强屋内光照效果

  4. 光源移动性

  • Static
    实际就是利用光照贴图
    不能对移动对象产生阴影,可以改变光源半径对静态对象产生阴影
    光照贴图分辨率
    静态网格体:勾选覆盖光照贴图分辨率,值越大,分辨率越高
    笔刷:光照贴图分辨率选项,对密度设置,值越小,分辨率越高

  • Stationary
    位置也是固定的,但是可以改变光源的亮度和颜色
    直接光照:使用延迟着色进行渲染,使得运行时可以改变亮度和颜色
    直接阴影:较大的性能消耗,一般用于在静态的物体上投射静态的阴影
    静态阴影:光照系统会在构建光照过程中为静态对象的固定光源生成距离场阴影贴图,该帖图在分辨率极低下,也可以提供精确的阴影变换。
    注意:最多只能由4个重叠的固定光源形成静态阴影,且太阳光自动占一个,多余4个,将采用全景动态阴影,可以使用StationaryLightOverlap 视图模式来检查,如果超过,该光源的图标会显示红色。
    在半透明表面上作用的静态阴影会显得的粗糙,度量为m
    动态阴影:
    动态对象会从固定光源创建两个动态阴影--一个用于处理静态环境世界投射到该对象上的阴影 ,一个处理该对象投射到环境世界中的阴影
    特殊特性--区域阴影:能在光照投影较远处产生柔和模糊的阴影边界

  • Mobile
    投射完全动态的光照和阴影,在无全局光照方法时不支持间接光照
    阴影偏差:减少因为阴影映射方法导致的瑕疵,通过调整倾斜偏差和阴影倾斜偏差(会影响阴影精度)
    都是从表面产生阴影,值越大效果越明显,但精度越低
    阴影贴图缓存:当光源未移动时,可以存储该光源的阴影贴图用于下一帧,减少阴影投射开销,但又缓存条件

    • 基元将其移动性设为静态或固定。
    • 关卡中使用的材质不使用场景位置偏移
    • 光源必须是点光源或聚光源,移动性设为可移动,并启用阴影投射
    • 光源必须停留在一处
    • 使用动画曲面细分或像素深度偏移的材质可能会在缓存其阴影深度时产生瑕疵