UE4/Practice

Mandelbrot set shader Test(UE4 material)

fx0275 2021. 8. 9. 17:27

Mandelbrot shader Test

 

//Code

uv = uv*2-1; // -1 ~ 1
float3 color = 0; 
    
float2 c = uv*zoom; // (origin pos)
c += offset; //uv offset
float2 z = 0;// ( new pos)
float iter = 0; // iteration 

for(float i = 0; i<max_iter; i++){
   z = float2(z.x*z.x-z.y*z.y, h*z.x*z.y) +c;
   if(length(z)>len) break;  
   iter++;
}

c = z; // origin pos = new pos
float f = iter/max_iter; // 0~ 1 
f = pow(f, power);
color = f;
return color;