blob: ede53e55d68e803a6786be19f95017f1bf6d9b46 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
|
// UnitLensEffect效果相关
sampler2D _MainTex;
float4 _MainTex_ST;
sampler2D _CameraDepthTexture;
float4 _CameraDepthTexture_ST;
sampler2D _UnitDepthTexture; // 配合_CameraDepthTexture定位角色
float4 _UnitDepthTexture_ST;
sampler2D _UnitWorldNormalTexture;
float4 _UnitWorldNormalTexture_ST;
sampler2D _UnitMotionVectorTexture;
float4 _UnitMotionVectorTexture_ST;
float4 _UnitTileOffset;
// 只对一小部分进行后处理
float4 CalculateUnitTillOfssetVertex(float4 vert)
{
float4 v = float4(vert.xy * _UnitTileOffset.xy + _UnitTileOffset.zw, 0, 1);
v.xy = v.xy * 2 - float2(1,1);
return v;
}
fixed2 CalculateUnitTillOfssetUV(fixed2 uv0)
{
return uv0 * _UnitTileOffset.xy + _UnitTileOffset.zw;
}
struct image_v2f
{
float2 uv : TEXCOORD0;
float4 vertex : SV_POSITION;
};
image_v2f image_vert(appdata_img v)
{
image_v2f o;
o.vertex = CalculateUnitTillOfssetVertex(v.vertex);
o.uv = CalculateUnitTillOfssetUV(TRANSFORM_TEX(v.texcoord, _MainTex));
return o;
}
|