--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 --batch
tr
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 } }