float corr(float a, float b, float e) {
float d = abs(fract(a - b + 0.5) - 0.5);
return exp(-0.5*(d*d)/(e*e));
}
float corrD(float a, float b, float e) {
float d = a - b;
return exp(-0.5*(d*d)/(e*e));
}
fragment
float4 fs_main(
FS_INPUT In [[stage_in]],
constant FS_UNIFORM& uniform [[buffer(16)]])
{
float2 uv = (-1. + 2. * In.v_texcoord) * uniform.resolution;
float a = (atan2(uv.y, uv.x)/M_PI_F + 1) / 2;
float t = fract(0.5 * uniform.time);
float v = corr(a,t,0.1) * corrD(length(uv),300,20);
return v*float4(In.v_texcoord.x,In.v_texcoord.y,0.5,1) * 2;
}
Post #644
169
Чинил шейдер для демки, получилась еще одна демка
- 🔥 5
- 👍 2
- 🤝 1