Unity——后期处理举例

简介: Unity——后期处理举例

Post Processing(后期处理)并不属于特效,但现代的特效表现离不开后期处理的支持。本文以眩光(Bloom)为例,展示一种明亮的激光的制作方法


1、安装后期处理扩展包

较新的Unity版本已经内置了新版的后期处理扩展包。通过添加组件可以判断是否已经安装了新版的后期处理扩展包。

在任意物体下新建组件,搜索“post”,如果看到Post-process Debug等三个后期处理相关的组件,就说明已经安装了扩展包。如果没有,也可以用Package Manager单独安装,而且升级该扩展包时也需要使用Package Manager。下面简单介绍下Package Manager的使用方法。

选择Window->Package Manager,打开Package Manager窗口,等待加载完毕后,可以看到大量的扩展包,也可以Update(更新)或Install(安装)该扩展包。

打开Package Manager窗口后可能只会看到少数几个扩展包,这时要稍加等待,待加载岸壁厚才会看到大量扩展包信息。

由于服务器和网络原因,有时会遇到较长时间的网络卡顿,列表迟迟加载不全。如果2分钟后还是没有完全加载,则需要关闭Unity之后再重试。

2.添加Post Process Volumn组件

"Post Process Volume" 是一个游戏开发中的概念。它是一种在游戏场景中应用特定的后期处理效果的方式。通过在场景中放置 Post Process Volume,开发者可以控制光照、颜色校正、景深、曝光等效果的呈现方式。这样可以为游戏增添更多的视觉效果和氛围,增强游戏的沉浸感。

Unity的后期处理支持在场景中指定多个后处理区域,每个区域称为一个Post Process Volumn。创建它的方法是先新建一个空物体,可以命名为pp,然后给空物体添加Post Process Volumn组件

添加组件后勾选第一个属性Is Global,它表示这个后处理设置会应用于整个场景。由于这个例子比较简单,只需要让全场景使用同一个后期处理配置就可以了。

之后单击Profile(配置档案)右边的New按钮,则会在工程中新建一个配置文件。选中Profile文件,然后再Inspector中单击Add effect,选择Unity->Bloom。然后将其Intensity参数修改为2

3.添加Post Process Layer组件

"Post Process Layer" 是一个在游戏开发中常用的概念。它是一种用于实现特定的后期处理效果的方式。在游戏引擎中,可以创建多个 Post Process Layer,并将它们分配给不同的渲染层级或相机。每个 Post Process Layer 可以有自己的后期处理效果,比如颜色校正、景深、曝光等。通过使用 Post Process Layer,开发者可以根据需要为不同的场景或相机应用不同的后期处理效果,实现更加个性化和精细的视觉效果。

有了场景中的设置,还需要在摄像机上进行设置才能让后期效果生效。给场景中的主摄像机添加Post Process Layer组件,并将Trigger设置为Main Camera,再将Layer选项设置为Everything即可

3.创建激光物体

为了简单起见,直接新建一个圆柱体,缩放成细长条状,旋转到合适的角度,然后再创建一个新的材质赋给圆柱体。

修改该材质,使用默认的Standard着色器,修改Albedo(漫反射颜色)为红色;再勾选Emission(发光),勾选后会多出一个发光颜色的选项,修改颜色为红色,并注意要选择颜色窗口下方的Intensity选项

发光颜色是一种特殊的HDR颜色,比一般的颜色多了Intensity属性。

实际效果:

 


相关文章
|
2月前
游戏辅助 -- 获取人物属性代码编写
游戏辅助 -- 获取人物属性代码编写
45 0
|
2月前
|
XML JavaScript 前端开发
使用 doscify 将文章写成文档一般丝滑
使用 doscify 将文章写成文档一般丝滑
92 0
|
2月前
|
前端开发 算法 JavaScript
【新手解答3】深入探索 C 语言:头文件提供必要的接口、源文件保持实现细节的私有性 + 进一步学习的方向 + 如何快速编写程序并最终能制作小游戏
【新手解答3】深入探索 C 语言:头文件提供必要的接口、源文件保持实现细节的私有性 + 进一步学习的方向 + 如何快速编写程序并最终能制作小游戏
91 0
|
C# 图形学
Unity之C#高级开发②
Unity之C#高级开发②
Unity之C#高级开发②
|
搜索推荐 C# Windows
基于C#的图形化用户设计来构造个性化的记事本(附完整版代码)
基于C#的图形化用户设计来构造个性化的记事本(附完整版代码)
150 0
基于C#的图形化用户设计来构造个性化的记事本(附完整版代码)
|
前端开发
前端工作总结131-优化项目的代码显示名字
前端工作总结131-优化项目的代码显示名字
85 0
前端工作总结131-优化项目的代码显示名字
|
存储 缓存 数据可视化
还有这种操作?--掌握了这些小技巧,让你事半功倍(Unity3D)(三)
掌握一些Unity编辑器的小技巧,会让你开发以及使用更加快捷有效。这篇文章就分享一些Unity在使用使用的一些小技巧,有什么不对的记得留言哦。
|
图形学 开发者
还有这种操作?--掌握了这些小技巧,让你事半功倍(Unity3D)(二)
掌握一些Unity编辑器的小技巧,会让你开发以及使用更加快捷有效。这篇文章就分享一些Unity在使用使用的一些小技巧,有什么不对的记得留言哦。
|
Java 图形学
还有这种操作?--掌握了这些小技巧,让你事半功倍(Unity3D)(一)
掌握一些Unity编辑器的小技巧,会让你开发以及使用更加快捷有效。这篇文章就分享一些Unity在使用使用的一些小技巧,有什么不对的记得留言哦。
|
JSON JavaScript 数据可视化
UI库组件属性太多不知道啥意思?没关系来看看可视化设置(二)
UI库提供了很多组件,组件又带有很多属性,有一些常用属性我们可以记住并且手撸,但是有些不常用的属性,或者需要设置多个属性,这样的情况下写起来就麻烦了,有时候还要打开帮助文档看看属性是怎么设定的,需要设置什么样的属性值。那么有没有优雅的方式来设置组件的各种属性呢?我做了一个在线小工具,可以方便的设置属性,并且可以实时看到效果。
UI库组件属性太多不知道啥意思?没关系来看看可视化设置(二)