質問編集履歴
1
シェーダーの内容を追加しました。
test
CHANGED
File without changes
|
test
CHANGED
@@ -28,7 +28,65 @@
|
|
28
28
|
}
|
29
29
|
}
|
30
30
|
}
|
31
|
+
```
|
32
|
+
シェーダー
|
33
|
+
```Chromatic.shader
|
34
|
+
Shader "Custom/Chromatic aberration"
|
35
|
+
{
|
36
|
+
Properties
|
37
|
+
{
|
38
|
+
_MainTex ("Texture", 2D) = "white" {}
|
31
39
|
|
40
|
+
[Header(Red)]
|
41
|
+
_RedX ("Offset X", Range(-0.5, 0.5)) = 0.0
|
42
|
+
_RedY ("Offset Y", Range(-0.5, 0.5)) = 0.0
|
43
|
+
|
44
|
+
[Header(Green)]
|
45
|
+
_GreenX ("Offset X", Range(-0.5, 0.5)) = 0.0
|
46
|
+
_GreenY ("Offset Y", Range(-0.5, 0.5)) = 0.0
|
47
|
+
|
48
|
+
[Header(Blue)]
|
49
|
+
_BlueX ("Offset X", Range(-0.5, 0.5)) = 0.0
|
50
|
+
_BlueY ("Offset Y", Range(-0.5, 0.5)) = 0.0
|
51
|
+
}
|
52
|
+
SubShader
|
53
|
+
{
|
54
|
+
Tags { "RenderType"="Opaque" }
|
55
|
+
|
56
|
+
Pass
|
57
|
+
{
|
58
|
+
CGPROGRAM
|
59
|
+
#pragma vertex vert_img
|
60
|
+
#pragma fragment frag
|
61
|
+
|
62
|
+
#include "UnityCG.cginc"
|
63
|
+
|
64
|
+
sampler2D _MainTex;
|
65
|
+
float _RedX;
|
66
|
+
float _RedY;
|
67
|
+
float _GreenX;
|
68
|
+
float _GreenY;
|
69
|
+
float _BlueX;
|
70
|
+
float _BlueY;
|
71
|
+
|
72
|
+
fixed4 frag (v2f_img i) : SV_Target
|
73
|
+
{
|
74
|
+
fixed4 col = fixed4(1, 1, 1, 1);
|
75
|
+
|
76
|
+
float2 red_uv = i.uv + float2(_RedX, _RedY);
|
77
|
+
float2 green_uv = i.uv + float2(_GreenX, _GreenY);
|
78
|
+
float2 blue_uv = i.uv + float2(_BlueX, _BlueY);
|
79
|
+
|
80
|
+
col.r = tex2D(_MainTex, red_uv).r;
|
81
|
+
col.g = tex2D(_MainTex, green_uv).g;
|
82
|
+
col.b = tex2D(_MainTex, blue_uv).b;
|
83
|
+
|
84
|
+
return col;
|
85
|
+
}
|
86
|
+
ENDCG
|
87
|
+
}
|
88
|
+
}
|
89
|
+
}
|
32
90
|
```
|
33
91
|
|
34
92
|
シーンビュー(色収差のエフェクトをかけています)
|