我正在渲染 buddhabrot 分形,我正在寻找一些优化/加速,我想知道尝试使用按位运算符执行 z = z^2 + c 是否值得。我已经把它简化了一点。
double zi2 = z.i*z.i;
double zr2 = z.r*z.r;
double zir = z.i*z.r;
while (iterations < MAX_BUDDHA_ITERATIONS && zi2 + zr2 < 4) {
z.i = c.i;
z.i += zir;
z.i += zir;
z.r = zr2 - zi2 + c.r;
zi2 = z.i*z.i;
zr2 = z.r*z.r;
zir = z.i*z.r;
iterations++;
}