На GLSL.
В динамике можно бесконечное приближение сделать. Но это в теории будет бесконечно, на практике точность у чисел с плавающей точкой кончится, и будут тупо пиксели.
Но т.к. это фрактал, при приближении определенного кусочка с определенного момента будет повторятся та же картина, поэтому можно зациклить просто. Хотя на счет этого не уверен.
туплю, имелось в виду другое)
Вот онлайн GLSL песочница
а вот код, думаю понятно что изменять надо (зум, цвет, координаты).
единственное, 400 в цикле for - это глубина прорисовки
#ifdef GL_ES
precision highp float;
#endif
uniform float time;
uniform vec2 mouse;
uniform vec2 resolution;
int fmandel(void)
{
float zoom = 1024.0;
vec2 c = /*vec2(-0.5, 0.0)*/-mouse.xy + gl_FragCoord.xy*(1.0/zoom) - resolution.xy/2.0/zoom;
vec2 z=c;
for(int n=0; n<400; n++)
{
z = vec2(z.x*z.x - z.y*z.y, 2.0*z.x*z.y) + c;
if((z.x*z.x + z.y*z.y) > 4.0) return n;
}
return 0;
}
void main()
{
int n = fmandel();
vec3 color = vec3(0.005);
gl_FragColor = vec4(0.1+float(n)*color, 1.0);
}