我使用的版本为2019.4.12(LTS)版本,项目是HDRP项目。
边角压暗效果的触发,可以按钮触发,也可以按键触发,按钮触发直接调用ButtonEvent()方法就好了。两种方式稍微有点差距,但不大。
首先先在项目里新建后处理的配置文件,方法如下:
然后随便创建一个空物体,挂上脚本DynamicVignette
脚本如下:
using System.Collections;
using UnityEngine;
using UnityEngine.Rendering;
using UnityEngine.Rendering.HighDefinition;
/*
*
* Writer:June
*
* Date: 2020.10.14
*
* Function:动态边角压暗效果
*
* Remarks:
*
*/
/// <summary>
/// 挂载当前脚本的GameObject必须确保有Volume组件
/// </summary>
[RequireComponent(typeof(Volume))]
public class DynamicVignette : MonoBehaviour
{
/// <summary>
/// 后处理体积容器
/// </summary>
private Volume volume;
/// <summary>
/// 对应要修改的效果————>边角压暗效果
/// </summary>
private Vignette vignette;
/// <summary>
/// 是否成功获取边角压暗属性
/// </summary>
public bool IsGetAttribute { get; private set; }
/// <summary>
/// 动画播放需要的时间
/// </summary>
public float animtionTime;
/// <summary>
/// 强度范围
/// </summary>
[Range(0.1f, 1)]
public float vignetteIntensi