TGViewer
Дегенератехника Дегенератехника @shitsch · 1.62K subscribers
Post #393 3.31K
У моего товарища вышла классная заметка про фракталы, я решил вспомнить, что умею в шейдеры и залип на полночи)

(сделано в https://shawnlawson.github.io/The_Force/)
#define I 100
#define E 100.7
float calc(vec2 z, vec2 c, float t, float param1) {
int result = 0;
for (int i = 1; i <= I; i++) {
float r=length(z);
float r2=r*r;
float r3=r2*r;
float denom=(1.+r3)*(sin(t*0.32)*0.2+1.0+r3);
float f_r=r*(cos(t*0.1)*0.8+2.0*r+r2)*(r2-1.0)/denom;
float g_r=r*(sin(t*0.12)*0.8-2.0*r+r2)*(r2-1.0)/denom;
float real2=z.x*z.x-z.y*z.y;
float imag2=param1*z.x*z.y;
z=vec2(real2+f_r,imag2+g_r)+c;
if(dot(z,z)>=E){result = i;break;}
}
return float(result)/float(I);
}
void main() {
vec2 offset = vec2(-2.8, -1.6);
float scale = 3.0;///(time * 0.1);
vec2 coord = uvN();
vec2 c = vec2(coord.x*(resolution.x/resolution.y),coord.y)*scale+offset;
gl_FragColor = vec4(vec3(calc(vec2(-0.50, 0.041), c, time, 2.0), calc(vec2(-0.52, 0.1), c, time, 2.02), calc(vec2(-0.55, 0.0), c, time, 2.01)), 1.0);
}
  • 👍 8
  • ❤ 4
  • 🔥 2
  • ✍ 1
More from @shitsch
  1. Aug 16, 2026Хакспейсы и синтезаторы Андрей Строков @coreglitch, сооснователь B4CKSPACE (Spb) и Microra…
  2. Aug 16, 2026Привет всем, кто в Белграде, во вторник будем обсуждать хакспейсы и синтезаторы, приходите…
  3. Jul 16, 2026https://www.youtube.com/watch?v=KRy5UmAT6FU (лирическое вступление заканчивается в 1:53) п…
  4. Jun 22, 2026Ищу работу! Я занимаюсь встраиваемой электроникой: разработкой устройств на микроконтролле…
  5. Jun 22, 2026document post
  6. Jun 21, 2026Вчера я хотел написать статю про вактролы (резисторные оптопары), но в 4 утра я нашел себя…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →