--batch mode (list of parameter files on stdin or a file).--one-shot for each file, but should be quicker (less overheads).--zoom-start N to start from further down a zoom, default 0.--zoom count implementation to render the correct number of frames--zoom-step N to advance by N frames each time, default 1.--zoom count behaviour--tile-start MxN to start from a particular tile, default 0x0.--zoom-factor F (default 0.5) to set ratio between successive frame radius when zooming.extra/zoom assembler interpolation adds undesirable artifacts (time-variant blurring)--print-zoom-count option to show the number of frames needed to reach the final view. should respect --zoom-factor, not sure about --zoom-start and --zoom-step. Calculate like: -log(256/finalRadius)/log(zoomFactor)--fp32-iters N, --fp64-iters N, --fpxx-iters N to set FP??_STEP_ITERS at startup instead of hardcoding in config.glsl.FPXX_MAX_STEP_ITERS for use in struct fpxx_step array--fpxx-iters rounded power of two is too highextra/zoom auto-detect frame size--interactive--tile--zoom--tile --zoom--batch--batch --zoom --tile--debug which option that allows debug logs to be limited to certain aspectslog_message(LOG_DEBUG, with log_debug(DEBUG_FOO, with FOO relevant to what is being debugged--degrees DEG--radians RAD--tile to be used with --batchtr and sed stuff in extra/split2ppar.sh to Csplit2par.sh) to not preprocess, just split--slice S finer granularity (2^S instead of 4^S) by alternating between horizontal and vertical subdivisionbool accurate = true;
#pragma omp parallel for shared(accurate)
for (int term_id = 0; term_id < term_id_max; ++term_id) {
for (int i = 0; i < iterations && accurate; ++i) {
switch (term_id) {
case term_z: z_new = z^2 + c; break;
...
}
#pragma omp barrier
#pragma omp master
{
accurate = ...;
}
if (accurate) {
switch (term_id) {
case term_z: z = z_new; break;
...
}
}
#pragma omp barrier
}
}