Unity Post Processing 小记 【使用泛光实现灯光亮度效果】

一、前言

本篇适用于Unity 2018 - 2019及以上版本,以默认渲染管线为例。文章内容源于个人研究尝试与网络资料收集,可能存在不准确之处。初衷是因新版本制作时老的Bloom插件失效,经研究后分享开启Bloom效果的方法。若在项目中使用Post Processing,建议与程序或TA商量优化问题。

官方已发布Post - Processing Stack后处理栈的详细使用视频,推荐观看:视频地址

参考链接:

二、Post Processing安装步骤

在Unity的Package Manager中进行安装:

  1. 点击左上角下拉选择"All packages",找到"Post Processing"。若未显示,查看左下角是否有"Loading Packages.."字样,若有则耐心等待,或开启魔法上网后重新打开Package Manager。
  2. 找到"Post Processing"后,选择右下角的"Install"按钮进行下载,安装完成后最右边会出现"√"符号。

三、开启全局后期处理

  1. 选择摄像机并添加组件:在场景中选中一个摄像机,在Inspector界面选择"Add Componet",搜索"post - process Layer"并选择该组件。Trigger默认选择挂载该组件的摄像机,Layer建议选择专用层级以获得最佳性能,避免选择"所有"或"默认",因为这会减慢体积混合过程。若创建新层级,需将摄像机的层级也改为新设置的层级,后期处理才会生效。
  2. 选择抗锯齿类型
    • FXAA:最便宜的抗锯齿方式,但质量差,多用于移动平台。
    • SMAA:比FXAA抗锯齿效果更高,但速度较慢。
    • TAA :更高级的抗锯齿技术,质量高但消耗大,建议用于PC端。
  3. 创建空对象并添加组件:在Hierarchy面板中创建一个空的GameObject,为其添加"post - process Volume"组件。
  4. 设置全局效果:在"post - process Volume"组件中勾选"Is Global",Weight为后期处理所有效果的权重,0表示没有后期效果。可通过调整Weight让后期效果在某些时候强弱变化。
  5. 创建配置文件并添加效果:在Profile中点击"NEW"创建一个配置文件,创建好后点击"Add effect",以Bloom效果为例,选择添加"bloom"。
  6. 调整Bloom参数:勾选"Intensity"并设置数值,此时查看Game视窗,场景亮度会随数值变化。"Fast Mode"为优化开关,开启可降低一部分泛光质量以提升性能,移动端强烈推荐打开。若觉得人物或场景物件辉光难受,可打开"Threshold"并将数值设为1,这样亮度值不超过1时不会产生辉光(前提是Bloom值设置不过大)。若要产生辉光,调整"Intensity"数值即可。

四、指定区域开启后期处理(以水下效果为例)

  1. 选择摄像机并添加组件:同全局后期处理步骤,在Inspector界面为摄像机添加"post - process Layer"组件,Trigger默认选择挂载该组件的摄像机,Layer选择自己想要的层级(如"post"层级)。若要添加新层级,选择一个空位置输入层级名称即可。
  2. 创建Post - process Volume:在Hierarchy面板下创建"Post - process Volume",此时场景中会出现一个绿框,可随意放大缩小。将"Post - process Volume"的层级修改为之前选择的层级(如"post")。
  3. 创建配置文件并添加效果:在Profile中点击"NEW"创建一个配置文件,创建好后点击"Add effect",以Bloom效果为例,选择添加"bloom",勾选"Intensity"并设置数值。
  4. 查看效果:将带有"post - process Layer"组件的摄像机推到绿色框内,Game视图中会出现辉光效果。若要实现渐变效果,可给"Blend Distance"设置一个数值,代表从Volume外多远开始逐渐过渡到当前效果(根据"post - process Layer"组件Trigger属性赋予的Transform来计算)。

五、常见后处理效果简介

  1. Ambient Occlusion(环境光遮挡):依赖深度和法线缓冲区,使彼此靠近的折痕、孔和表面变暗,模拟现实中这些区域阻挡或遮挡环境光的效果。
  2. Bloom(辉光):来自亮源(如闪光)的光泄漏到周围物体中的光学效应。可营造神奇或梦幻般的环境,与HDR渲染结合使用效果更佳,也可用于增强照片写实感。
  3. Depth of Field(景深):模拟相机镜头属性,相机只能在特定距离对焦,距离相机更近或更远的物体将会偏离焦点,模糊效果给出对象距离的视觉提示。
  4. Motion Blur(运动模糊):模拟大多数摄像机系统光线随时间累积的效果,快速的相机或物体运动将产生模糊图像。
  5. Screen Space Reflection(屏幕空间反射):基于表面粗糙度计算屏幕空间中的反射。

感谢大家的观看,您的点赞和关注是我最大的动力

不定时更新知识点和干货呦~

相关推荐
吴永琦(桂林电子科技大学)几秒前
Node.js心得笔记
笔记·node.js
虾球xz1 小时前
游戏引擎学习第252天:允许编辑调试值
c++·学习·游戏引擎
jackson凌1 小时前
【Java学习笔记】递归
java·笔记·学习
s_little_monster3 小时前
【Linux】线程池和线程补充内容
linux·运维·服务器·c++·笔记·学习·学习方法
Timmer丿3 小时前
kafka学习笔记(四、生产者(客户端)深入研究(二)——消费者协调器与_consumer_offsets剖析)
笔记·学习·kafka
JiDaoPay5 小时前
如何解决 H5 远程收款的问题呢?
笔记·其他·微信
RLG_星辰5 小时前
第二章 日志分析-apache日志分析(玄机系列)
笔记·网络安全·apache·应急响应·玄机
z35026037065 小时前
K8S学习笔记01
笔记·学习·kubernetes
jerry6096 小时前
哈希表笔记(二)redis
redis·笔记·散列表
江安的猪猪6 小时前
大连理工大学选修课——机器学习笔记(9):线性判别式与逻辑回归
笔记·机器学习·逻辑回归