Untiy使用Shader实现镜头模糊效果

Untiy使用Shader实现镜头模糊效果

前言

最近公司接了一个光学实验的项目,因为开发需求较模糊,我只能做一些简单的开发功能。于是在网上查相关资料,使用shader实现了一个简单的镜头模糊效果,在这里记录下,便于以后开发使用。

步骤

1.创建一个shader,用以实现镜头的模糊效果,实现代码如下所示:

Shader "CameraFilterPack/Blur_Movie" {
   
        Properties
        {
   
                _MainTex ("Base (RGB)", 2D) = "white" {
   }
                _TimeX ("Time", Range(0.0, 1.0)) = 1.0
                _Distortion ("_Distortion", Range(0.0, 1.0)) = 0.3
                _ScreenResolution ("_ScreenResolution", Vector) = (0.,0.,0.,0.)
                _Radius ("_Radius", Range(0.0, 1000.0)) = 700.0
                _Factor ("_Factor", Range(0.0, 1000.0)) = 200.0
        }
        SubShader
        {
   
                Pass
                {
   
                        ZTest Always
                        CGPROGRAM
                        #pragma vertex vert
                        #pragma fragment frag
                        #pragma fragmentoption ARB_precision_hint_fastest
                        #pragma target 3.0
                        #pragma glsl
                        #include "UnityCG.cginc"
                         
                         
                        uniform sampler2D _MainTex;
                        uniform float _TimeX;
                        uniform float _Distortion;
                        uniform float4 _ScreenResolution;
                        uniform float _Radius;
                        uniform float _Factor;
                         
                    struct appdata_t
            {
   
                float4 vertex   : POSITION;
                float4 color    : COLOR;
                float2 texcoord : TEXCOORD0;
            
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

波波斯维奇

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值