插件的说明文档、安装方式:
Installation | Post Processing | 3.2.2
资源备份:
PostProcessing2(UnityPackage后期处理视觉效果处理)-Unity3D文档类资源-CSDN下载
一、创建空物体,添加组件:Post-process Volume。
新建一个profile
Add effect添加需要的效果。
将这个对象的Layer设置为特定的层,这里我命名为Post-process。
Is Global:是否在全局应用效果。勾选就是全局,否则是局部效果。 局部效果需要再添加一个3D collider,比如Box Collider。当Camera进入Collider,便可以看到添加的画面效果。
二、在Camera上添加组件:Post-process Layer
设置trigger。点后面的This按钮即可。设置Layer,设置为Post-processTrigger:设置某个对象的 Transform 用作特效的触发器。 这个 Transform 控制混合功能,Unity 默认将 Camera 分配给Trigger。也可以使用其他游戏对象来控制混合功能。例如,在一个top-down game中,或许用玩家角色 GameObject 来驱动混合更加合适,而不是相机 Transform。当此字段设置为 None 时,将禁用该层的局部Volume(全局Volume正常工作)。Layer:这里Layer不是指要对哪些层进行渲染,而是选择volume所在的Layer,只有这些Layer上的Volume的效果会被渲染。一些Effect:
调色相关——Color Grading 的一些功能:
原始画面:
更高饱和度: Hue Vs Sat
改变色相:Hue Vs Hue
去色/保留:Hue Vs Sat
颜色替换
用于颜色替换的初始图片:
在Ps里,将画面调色至满意的效果将应用的效果叠加在这张初始LUT保存修改后的LUT,放进Unity中。将Lookup Texture指定为该LUT,即可对画面进行颜色替换。
代码部分:
using UnityEngine.Rendering.PostProcessing;
创建新Volume:
[
public PostProcessVolume QuickVolume(int layer, float priority, params PostProcessEffectSettings[] settings)
]
示例:动态创建一个Bloom。并在Update中控制其亮度变化。
using UnityEngine;using UnityEngine.Rendering.PostProcessing;public class Test : MonoBehaviour{PostProcessVolume m_Volume;Bloom m_bloom;float startValue = 12.68f;void Start(){// Create an instance of a Bloomm_bloom = ScriptableObject.CreateInstance<Bloom>();m_bloom.enabled.Override(true);m_bloom.intensity.Override(startValue);// Use the QuickVolume method to create a volume with a priority of 100, and assign the bloom to this volumem_Volume = PostProcessManager.instance.QuickVolume(gameObject.layer, 100f, m_bloom);}void Update(){// Change intensity using a sinus curvem_bloom.intensity.value = startValue + Mathf.Sin(Time.realtimeSinceStartup)*6f;}void OnDestroy(){RuntimeUtilities.DestroyVolume(m_Volume, true);}}
这段代码创建一个新的Bloom效果并将其分配给新生成的Volume。然后,在每一帧改变泛光的强度。为避免内存泄漏,请在不再需要时销毁Volume和附加的Profile。
配置文件编辑
您也可以手动编辑一个或多个Volume使用的现有配置文件(profile)。为此,您可以使用PostProcessVolume
.每个字段的效果略有不同:
直接修改shared profile: 类字段名称:sharedProfile将会更改应用到使用相同配置文件的所有Volume修改了asset——退出播放模式时不会重置请求一个shared profile的克隆,仅用于此Volume: 类字段名称:profile将更改应用到指定的Volume退出播放模式时重置当您不再需要配置文件时,您必须手动销毁它
PostProcessProfile
类
包含以下实用方法:
/PostProcessing/Runtime/PostProcessProfile.cs
您可以在源文件中找到更多方法。
重要提示:您必须销毁任何手动创建的profile或 effect 。
补充说明
如果需要在运行中实例化PostProcessLayer
,必须将PostProcessResources
文件绑定到它。
AddComponent之后,调用PostProcessLayer
的Init()
,将PostProcessResources
文件作为参数使用。
例:
var postProcessLayer = gameObject.AddComponent<PostProcessLayer>();postProcessLayer.Init(resources);
如果觉得《【unity插件】Post Process 后期效果 画面特效 颜色替换》对你有帮助,请点赞、收藏,并留下你的观点哦!