settings¶
The process-global settings root, SETTINGS.
Everything configurable at runtime hangs off one object, grouped into sections
by what it affects: SETTINGS.video (resolution, frame rate, anti-aliasing),
SETTINGS.style (default colors, layout buffer, scene-end fade),
SETTINGS.paths (output and cache locations), SETTINGS.computing (memory
budgets and authoring controls) and SETTINGS.raytracing (what the renderer
produces).
Sections have stable identity: mutate them in place with
SETTINGS.video.set(HD), never SETTINGS.video = HD, so that code holding a
reference to a section keeps seeing live values.
The render device is here: SETTINGS.computing.render_device, seeded from
ALGAN_RENDER_DEVICE and changeable between renders. The animation device
is not – ALGAN_ANIMATION_DEVICE decides where every Mob’s authoring state is
allocated, from the first one onward, so it must be set in the environment
before import algan and has no runtime object to assign to.
See Settings.