Skip to content

Commit ecf655c

Browse files
Animated 2D spheres
1 parent 0567784 commit ecf655c

File tree

1 file changed

+38
-0
lines changed

1 file changed

+38
-0
lines changed

spheres.shader

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
Shader "Spheres"
2+
{
3+
SubShader
4+
{
5+
Pass
6+
{
7+
CGPROGRAM
8+
#pragma vertex vertex_shader
9+
#pragma fragment pixel_shader
10+
11+
float2 hash( float2 p )
12+
{
13+
float2 q = float2(dot(p,float2(127.1,311.7)),dot(p,float2(269.5,183.3)));
14+
return frac(sin(q)*43758.5453);
15+
}
16+
17+
void vertex_shader (inout float4 vertex:POSITION,inout float2 uv:TEXCOORD0)
18+
{
19+
vertex = UnityObjectToClipPos(vertex);
20+
}
21+
22+
float4 pixel_shader (float4 vertex:POSITION,float2 uv:TEXCOORD0) : SV_TARGET
23+
{
24+
uv = float2(2.0*uv-1.0);
25+
float2 k = float2(0.0,0.0);
26+
for (float i=0.0;i<100.0;i++)
27+
{
28+
float2 h = hash(float2(i,i));
29+
float2 p = cos(h*_Time.g);
30+
float d = length(uv-p);
31+
k+=smoothstep(0.04,0.03,d);
32+
}
33+
return float4(k,0.0,1.0);
34+
}
35+
ENDCG
36+
}
37+
}
38+
}

0 commit comments

Comments
 (0)