port from perforce

This commit is contained in:
2026-04-18 22:31:51 +02:00
commit 8d0ab5b7cc
8409 changed files with 3972376 additions and 0 deletions

View File

@@ -0,0 +1,45 @@
uniform vec2 resolution;
uniform float time;
uniform sampler2D tex0;
uniform sampler2D tex1;
uniform sampler2D tex2;
uniform sampler2D tex3;
float f(vec3 o)
{
float a=(sin(o.x)+o.y*.25)*.35;
o=vec3(cos(a)*o.x-sin(a)*o.y,sin(a)*o.x+cos(a)*o.y,o.z);
return dot(cos(o)*cos(o),vec3(1))-1.2;
}
vec3 s(vec3 o,vec3 d)
{
float t=0.,a,b;
for(int i=0;i<75;i++)
{
if(f(o+d*t)<0.0)
{
a=t-.125;b=t;
for(int i=0; i<10;i++)
{
t=(a+b)*.5;
if(f(o+d*t)<0.0)
b=t;
else
a=t;
}
vec3 e=vec3(.1,0.0,0.0);
vec3 p=o+d*t;
vec3 n=-normalize(vec3(f(p+e),f(p+e.yxy),f(p+e.yyx))+vec3((sin(p*75.)))*.01);
return vec3( mix( ((max(-dot(n,vec3(.577)),0.) + 0.125*max(-dot(n,vec3(-.707,-.707,0)),0.)))*(mod(length(p.xy)*20.,2.)<1.0?vec3(.71,.85,.25):vec3(.79,.93,.4))
,vec3(.93,.94,.85), vec3(pow(t/9.,5.)) ) );
}
t+=.125;
}
return vec3(.93,.94,.85);
}
void main()
{
vec2 p = -1.0 + 2.0 * gl_FragCoord.xy / resolution.xy;
gl_FragColor=vec4(s(vec3(sin(time*1.5)*.5,cos(time)*.5,time), normalize(vec3(p.xy,1.0))),1.0);
}