unity后期

unity|后处理篇
  • 前言
  • 一、Post-Processing
    • 1、 Post-Processing的使用
    • 2、Post-Processing后处理效果
      • 抗锯齿
      • ①、Ambient Occlusion 环境光遮蔽
      • ②、Auto Exposure 自动曝光
      • ③、Bloom 辉光/泛光
      • ④、Chromatic Aberration | 色差
      • ⑤、Color Grading 色调/颜色分级
      • ⑥、Depth Of Field 景深
      • ⑦、Grain
      • ⑧、Lens Distortion 镜头变形失真
      • ⑨、Motion Blur 运动模糊
      • ⑩、Screen Space Reflections 屏幕空间反射
      • 11、Vignette 渐晕
  • 二、内置管线中OnRenderImage()方法实现


前言

在unity中实现后处理效果大致有两种方式,一种是通过插件的方式,常用的方法就是使用unity内置的插件Post-Processing。第二种方式就是使用脚本获取到渲染后帧缓冲区的图像,再通过shader写后处理的效果,最后合并输出图像到屏幕上。

这里记录的后处理全部基于unity内置渲染管线展开,URP渲染管线和内置渲染管线的后处理方式会有些许差异。post-processing在内置渲染管线和URP渲染管线中也是会有一些差异的,具体可以去看官方文档。
第二种方式是使用unity内置的方法OnRenderImage()这个方法实现,但是这个方法是在unity内置渲染管线中的,在URP渲染管线中并不会生效,当然在URP中也有替代方法去实现,这里不考虑这个。


一、Post-Processing

更详细具体可以看unity中Post-Processing官方文档

1、 Post-Processing的使用

  • ①、安装插件。
    window->Packages Manager->Post Processing->install。
  • ②、创建文件和添加组件。
    创建Post-Processing Profile文件;新建空游戏物体,并且添加Post Process Volume组件;在相机上添加Post Process Layer组件。
  • ③、设置层级Layer。
    添加了Post Process Volume组件游戏物体、添加Post Process Layer组件的相机的层级都设置为同一个层级,如设置层级为post-Processing。
    并且在Layer组件中设置的Layer也要一致。
    在这里插入图片描述
  • ④、挂载文件。
    在Post Process Volume组件中挂载一开始创建的post-processing profile文件。
    如果需要效果应用全局需要把Is Global勾选上。
    在这里插入图片描述
  • ⑤、添加后处理效果。
    在Post Process Volume组件中,点击Add Effect -> Unity -> (后处理效果)。在这里插入图片描述

2、Post-Processing后处理效果

抗锯齿

锯齿是图形出现“楼梯”状的锯齿,抗锯齿效果使图形边缘更加平滑,一般图片在像素不够高或者图片被放大的情况下就会出现这种锯齿情况。

unity默认的抗锯齿设置在Edit -> Project Settings ->Quality中设置。
而Post-Processing的抗锯齿,是在相机中的Post Process Layer组件Anti - Aliasing。(抗锯齿的效果不是在Post Process Volume组件中通过Add Effect添加的,其他的效果是在Post Process Volume组件中通过Add Effect添加的)
在这里插入图片描述
No - Anti - aliasling:无抗锯齿效果。
unity Post-Processing 抗锯齿

①、Ambient Occlusion 环境光遮蔽

环境光遮蔽比较消耗性能,因此不建议在手游中使用。
一些凹陷的地方或者被周围遮挡的地方,往往会被遮挡住周围的光线,因此会显得更暗。

Post-Processing环境光遮蔽

  • Mode | 模式 (Scalable Ambient Obscurance可扩展的环境观测、Multi Scale Volumetric Obscurance多规模的体积测量)
  • Intensity | 强度
  • Radius | 半径/幅度
  • Quality | 质量
  • Color | 颜色
  • Ambient Only | 仅周围环境
②、Auto Exposure 自动曝光

自动曝光效果根据图像包含的亮度级别范围来动态调整图像的曝光。
在这里插入图片描述

  • Filtering (%) |
  • Minimum(EV) | 最低限制
  • Maximum(EV) | 最高限制
  • Exposure Compensation | 曝光补偿

Adaptation 适应性

  • Type | 类型
  • Speed Up | 加速
  • Speed Down | 减速
③、Bloom 辉光/泛光

在unity中的灯光,或者材质球中有发光材质,输出显示是没有辉光的,为了营造更真实的光感,可以在后处理的中加入辉光的效果。
Post-Processing辉光效果

  • Intensity | 强度
  • Threshold | 阈值
  • Soft Knee | 软膝关节
  • Clamp | 钳制
  • Diffusion | 扩散
  • Anamorphic Ratio | 拟态比
  • Color | 颜色
  • Fast Mode | 快速模式(开启快速模式会省一点性能,适合手游模式)
  • (Dirtiness) Texture| 纹理
  • (Dirtiness) Intensity | 脏迹强度
④、Chromatic Aberration | 色差

色差效果可以模仿真实摄像机在镜头无法将所有颜色融合到同一点时产生的效果。
也可以粗略做镜头的运动模糊效果,有一种运动时的速度感。即图像四周会有色值偏差。
在这里插入图片描述

  • Spectral Lut |
  • Instensity | 强度
  • Fast Mode | 快速模式
⑤、Color Grading 色调/颜色分级

颜色分级效果可以改变或校正 Unity 产生的最终图像的颜色和亮度。类似于添加滤镜。

在这里插入图片描述

  • Mode |模式
  • Lookup Texture | 查找纹理
  • Contribution

White Balance白平衡

  • Temperature | 色温
  • Tint | 色调

Tone

  • Color Filter | 颜色滤镜
  • Hue Shift | 色相转换
  • Saturation | 饱和度
  • Brightness | 明亮度
  • Contrast | 对比度

Channel Mixer通道混合

  • Red
  • Green
  • Blue
  • Trackballs |
    Grading Curve 分级曲线
⑥、Depth Of Field 景深

在这里插入图片描述

  • Focus Distance | 焦距
  • Apperture | 适应性
  • Focal Length | 镜头长度
  • Max Blur Size | 最大的模糊大小
⑦、Grain
类似于添加噪波噪点
  • 1

Grain参数

  • Colored | 噪波噪点是否为彩色
    开启的噪波噪点是带有rgb色彩的,不开启的噪波噪点是黑白色的。
  • Intensity | 强度
    从0到1强度大小,整体噪波噪点的强度
  • Size | 大小
    噪波噪点的大小
  • Luminance Contribution
⑧、Lens Distortion 镜头变形失真

默认情况下,只调整强度大小的效果类似于凹凸镜的效果。

在这里插入图片描述

  • Intensity | 强度:调整的是变形的强度大小
  • X Multiplier | X轴的程度:X轴上镜头变形的程度
  • Y Multiplier | Y轴的程度:Y轴上镜头变形的程度
  • Center X | X轴的中心:镜头默认是从中间的点来进行变形,可以通过调整这个数值调整X轴上的中心点进行偏移
  • Center Y | Y轴的中心:对Y轴上的中心点进行偏移
  • Scale | 大小:正常画面大小为1,大于1则画面被整体放大;小于1,整个画面整体被缩小,但是整体画面被缩小,显示出来的就会填不满画布,填不满的部分就会被图像的边缘填充。
⑨、Motion Blur 运动模糊

在这里插入图片描述

  • Shutter Angle | 快门角度
  • Samole Count | 抽样计数
⑩、Screen Space Reflections 屏幕空间反射

在这里插入图片描述

  • Preset | 预设
  • Maximum March Distance | 最大行进距离
  • Distance Fade | 距离衰减
  • Vignette | 渐变
11、Vignette 渐晕

渐晕效果使图像的边缘变暗,让图像的中心更亮。
在这里插入图片描述

  • Mode | 模式(Classic、 Masked)
  • Color | 颜色
  • Center | 中心
  • Intensity | 强度
  • Smoothness | 平滑度
  • Roundness
  • Rounded | 圆角

二、内置管线中OnRenderImage()方法实现

大致实现方法:
如果是在unity内置管线中,则相机挂载使用C#脚本用内置函数OnRenderImage来调用渲染管线中帧缓冲区的图像,再调用shader,对图像进行二次修改,实现后处理的效果。(新建一个材质球创建挂载shader,对shader内容进行编写后处理效果的编写。)

unity商店里面有一些免费资源下载下来也会有这些后处理和shader脚本,可以自行下载来研究,涉及到的太广泛,就不写了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/419426.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

第九届数学与人工智能国际会议 (ICMAI 2024)即将召开!

2024年第九届数学与人工智能国际会议将于2024年5月10-12日在中国北京召开。本届会议由北京工业大学主办,旨在促进应用逻辑、算法与复杂性研究,使用数学的方法促进人工智能理论与应用发展,加深学术交流与合作。我们热忱欢迎从事相关技术研究的…

Pytest中测试结果收集:pytest_terminal_summary!

前言 Pytest是Python的一种强大的测试框架,它提供了丰富的功能和插件来满足各种测试需求。 其中,pytest_terminal_summary是一个钩子函数,它允许我们在测试运行结束后,添加自定义的总结信息到测试报告中。这个功能在需要对测试结…

Spring基础——使用XML配置一个Bean

目录 初始化XML文件实例化Spring容器实例化ApplicationContext 获取指定Bean对象 这里解释一下为什么现在都流行注解开发了而依然还要来去了解xml配置文件,甚至很多博客都不愿意去写xml相关的配置。 官方文档里提出了注解开发的优势是在声明中已经提供了大量的上下文…

React富文本编辑器开发(一)

这是一个系统的完整的教程,每一节文章的内容都很重要。这个教程学完后自己可以开发出一个相当完美的富文本编辑器了。下面就开始我们今天的内容: 安装 是的,我们的开发是基于Slate的开发基础,所以要安装它: yarn ad…

springboot-基础-eclipse配置+helloword示例

备份笔记。所有代码都是2019年测试通过的,如有问题请自行搜索解决! 下一篇:springboot-基础-添加model和controller的简单例子常用注解含义 目录 配置helloword示例新建项目创建文件 配置 spring boot官方有定制版eclipse,也就是…

【Python笔记-设计模式】迭代器模式

一、说明 迭代器模式是一种行为设计模式,让你能在不暴露集合底层表现形式(列表、栈和树等)的情况下遍历集合中所有的元素。 (一) 解决问题 遍历聚合对象中的元素,而不需要暴露该对象的内部表示 (二) 使用场景 需要对聚合对象…

抖店怎么开店注册?新手需要准备什么?这几个步骤很关键!

我是电商珠珠 不少人瞄准了抖店这个短视频电商势头,想要在今年大干一场。关于抖店注册这方面,部分人还不太清楚,今天我就带大家一步步注册,看一遍就会了。 前期准备资料 前期新手的话,需要准备一张个体工营业执照&a…

C++/C百元买百鸡问题现在有100元要买100只鸡,一只公鸡5元,一只母鸡3元,三只小鸡一元,问今如何买?

具体代码如下 #include<stdio.h>int main() {int i, j, k;for (i 0; i < 20; i)for (j 0; j < 33; j) {k 100 - i - j;if (k % 3 0 && i * 5 j * 3 k / 3 100)printf("公鸡&#xff1a;%d&#xff0c;母鸡&#xff1a;%d&#xff0c;小鸡&…

p18 线性代数,行阶梯型矩阵

行阶梯型矩阵 行最简型矩阵

【VS Code】配置代码快捷提示

配置路径 进入如下界面&#xff0c;如果需要特定语言的配置&#xff0c;则选择相应的语言&#xff0c;这里演示为全局配置&#xff0c;没有创建过全局snippets配置的&#xff0c;使用New Global Snippets file 选项进行配置 然后在如下配置界面输入需要该配置的名称 配置编辑…

喜讯!持安科技CEO何艺获评安全419《2023年度十大优秀创业者》

近日&#xff0c;由网络安全产业资讯媒体安全419主办的《年度策划》2023年度十大优秀创业者正式出炉&#xff0c;零信任办公安全技术创新企业持安科技创始人兼CEO何艺&#xff0c;获评十大优秀创业者。 这是安全419第二届推出该项目的评选活动&#xff0c;安全419编辑老师在多年…

安装 Ubuntu 22.04.3 和 docker

文章目录 一、安装 Ubuntu 22.04.31. 简介2. 下载地址3. 系统安装4. 系统配置 二、安装 Docker1. 安装 docker2. 安装 docker compose3. 配置 docker 一、安装 Ubuntu 22.04.3 1. 简介 Ubuntu 22.04.3 是Linux操作系统的一个版本。LTS 版本支持周期到2032年。 系统要求双核 C…

【六袆 - React】Next.js:React 开发框架;Next.js开发框架的特点

Next.js&#xff1a;React 开发框架 Next.js的特点 1.直观的、基于页面的路由系统&#xff08;并支持动态路由&#xff09; Next.js 提供了基于文件系统的路由&#xff0c;意味着你可以通过创建页面文件来定义路由。 伪代码示例&#xff1a; // pages/index.js export defa…

挚达科技冲刺上市:乐视汽车曾是股东,多个投资者提前清仓提出

2月29日&#xff0c;上海挚达科技发展股份有限公司&#xff08;下称“挚达科技”&#xff09;递交招股书&#xff0c;准备在港交所主板上市&#xff0c;申万宏源香港为其独家保荐人。据此前媒体报道&#xff0c;挚达科技正在考虑赴港IPO&#xff0c;可能募集约10亿港元。 据官网…

three.js 向量叉乘cross

效果&#xff1a; 代码&#xff1a; <template><div><el-container><el-main><div class"box-card-left"><div id"threejs"></div><div></div></div></el-main></el-container>…

vulnhub-----Hackademic靶机

文章目录 1.C段扫描2.端口扫描3.服务扫描4.web分析5.sql注入6.目录扫描7.写马php反弹shell木马 8.反弹shell9.内核提权 1.C段扫描 kali:192.168.9.27 靶机&#xff1a;192.168.9.25 ┌──(root㉿kali)-[~] └─# arp-scan -l Interface: eth0,…

Vue ElementUI 修改消息提示框样式—messageBox 的大小

在窄屏模式下&#xff08;移动端或pda&#xff09;&#xff0c;提示框的宽度太宽&#xff0c;会出现显示不完全的问题。 应当如何修改 ElementUI 的样式呢&#xff1f; open() {this.$confirm(window.vm.$i18n.t("tips.conLogOut"),window.vm.$i18n.t("tips.tip…

数据库进阶——如何提升数据库的安全性,以MySQL和Redis加固为例

目录 引出数据库加固加固思路MySQLRedis Redis冲冲冲——缓存三兄弟&#xff1a;缓存击穿、穿透、雪崩缓存击穿缓存穿透缓存雪崩 总结 引出 数据库进阶——如何提升数据库的安全性&#xff0c;以MySQL和Redis加固为例 数据库加固 加固思路 账号配置 应按照用户分配账号&…

工厂模式:没你想像的那么难

工厂模式 工厂模式是一种创建型设计模式&#xff0c;它允许创建对象而无需指定将要创建的对象的具体类。它通过将对象的创建委托给一个单独的方法或类来完成&#xff0c;从而隐藏了对象的实例化逻辑。这样可以提高代码的灵活性&#xff0c;减少了代码中的重复和耦合。 在工厂…

css【详解】—— 圣杯布局 vs 双飞翼布局 (含手写清除浮动 clearfix)

两者功能效果相同&#xff0c;实现方式不同 效果预览 两侧宽度固定&#xff0c;中间宽度自适应&#xff08;三栏布局&#xff09;中间部分优先渲染允许三列中的任意一列成为最高列 圣杯布局 通过左右栏填充容器的左右 padding 实现&#xff0c;更多细节详见注释。 <!DOCTYP…