纳金网

标题: 折射效果shader,类似于水珠效果 [打印本页]

作者: 晃晃    时间: 2011-9-2 08:19
标题: 折射效果shader,类似于水珠效果
以下为ImageRefractionEffect.shader代码:

Shader "Image Effects/Refraction"

{

Properties

{

  _SpeedStrength ("Speed (XY), Strength (ZW)", Vector) = (1, 1, 1, 1)

  _RefractTexTiling ("Refraction Tilefac", Float) = 1

  _RefractTex ("Refraction (RG), Colormask (B)", 2D) = "bump" {}

  _Color ("Color (RGB)", Color) = (1, 1, 1, 1)

  _MainTex ("Base (RGB) DON`T TOUCH IT! ", RECT) = "white" {}

}

SubShader

{

  Pass

  {

   ZTest Always Cull Off ZWrite Off

   Fog{Mode off}

   CGPROGRAM

   #pragma vertex vert_img

   #pragma fragment frag

   #pragma fragmentoption ARB_precision_hint_fastest

   #include "UnityCG.cginc"

   uniform samplerRECT _MainTex;

   uniform sampler2D _RefractTex;

   uniform float4 _SpeedStrength;

   uniform float _RefractTexTiling;

   uniform float4 _Color;

   float4 frag (v2f_img i) : COLOR

   {

    float2 refrtc = i.uv*_RefractTexTiling;

    float4 refract = tex2D(_RefractTex, refrtc+_SpeedStrength.xy*_Time.x);

    refract.rg = refract.rg*2.0-1.0;

    float4 original = texRECT(_MainTex, i.uv+refract.rg*_SpeedStrength.zw);

    float4 output = lerp(original, original*_Color, refract.b);

    output.a = original.a;

    return output;

   }

   ENDCG

  }

}

Fallback off

}

以下为C#代码:

using UnityEngine;

[ExecuteInEditMode]

[AddComponentMenu("Image Effects/Image Refraction")]

public class ImageRefractionEffect : SlinImageEffectBase

{

// Called by camera to apply image effect

void OnRenderImage (RenderTexture source, RenderTexture destination)

{

  ImageEffects.BlitWithMaterial(material, source, destination);

}

}
作者: Asen    时间: 2011-9-2 09:02


作者: 晃晃    时间: 2011-12-30 18:24
谢谢楼主,真是太实用了

作者: C.R.CAN    时间: 2012-2-6 23:35
读铁系缘分,顶铁系友情

作者: 彬彬    时间: 2012-2-7 11:24

作者: 奇    时间: 2012-3-5 23:24
百度的叫度娘,网易的叫易娘,新浪内部还在为是叫新娘还是浪娘而争论不休!……不管你们是企鹅的额娘,豆瓣的伴娘,还是华为的伪娘,都要记得,淘宝才是你们的亲娘啊!亲!!

作者: 晃晃    时间: 2012-4-2 23:21
此地無銀。。。

作者: 天马行空    时间: 2012-4-15 00:22

作者: tc    时间: 2012-5-12 23:22
很经典,很实用,学习了!

作者: C.R.CAN    时间: 2012-6-15 23:22
不错哦,谢谢楼主

作者: 奇    时间: 2012-7-13 23:25
呵呵,很好,方便罗。

作者: tc    时间: 2012-8-15 01:08
不错 非常经典  实用

作者: C.R.CAN    时间: 2012-9-2 00:26
很经典,很实用,学习了!





欢迎光临 纳金网 (http://www.narkii.com/club/) Powered by Discuz! X2.5