Kapitel 3 — Inställningar
Indstillingsvinduet åbnes via RadianceKit → Indstillinger… eller standardgenvejen ⌘,. Det innehåller to faner: General og AI Helpers. I modsætning til Inspector-værdierne fra kapitel 2 virker indstillingerne fra detta vindue app-globalt (på tværs av alle projekter) — de persisteres og overlever app-genstart. General-fanen grupperer fire indholdsmæssige sektioner: Interface, Viewport, Training og en eksperimentel sektion til outdoor-floater-reduktion. AI-Helpers-fanen tænder for on-device-machine-learning-hjælperne (Vision, CoreML) til SfM- og trænings-forbehandling.
Tidligere betjeningselementer til samlet aktivering eller deaktivering av alle AI-helpers finns inte længere i den aktuelle version — de er därför inte dokumenteret her. Også det tidligere „Coming Soon"- område til endnu inte leverede hjælpere er fjernet og refereres inte her.
General-fanen

S1Default Mode
VAR
Settings → General → Interface → Default Mode-vælger. Bound:. Default: .simple.
TEKNISKT
Styrer, vilken av to UI-tilstande appen åbner i vid nästa opstart. „Simple Mode" är den guidede wizard-workflow i 4 trin (Import → Processing → Preview → Export, dokumenteret i kapitel 10 under Z1–Z4), „Expert Mode" det klassiske tre-panel-layout med Navigator, 3D-viewport og Expert-Inspector fra kapitel 2. Værdien huskes på tværs av genstart. Identisk virkning som menuen Mode → Simple Mode (⌘1) / Mode → Expert Mode (⌘2), bortset fra at menuen skifter den løbende session, mens denna vælger sætter standarden for fremtidige sessioner. Begge tilstande tilgår samme projekt-state — projekter, kameraer og træningskonfiguration bevares vid tilstandsskift. Tilstandsspecifikke værktøjslinjeknapper gen-rendres med det samme.
S2Language
VAR
Settings → General → Interface → Language-vælger. Bound:. Default: .system (følger macOS-sproget).
TEKNISKT
Vælger visningssproget for hele app-UI'en, uafhængigt av macOS-systemsproget. RadianceKit er lokaliseret til 17 sprog (de, en, pl, en-AU, ar-SA plus 12 yderligere). Vid „System" følger appen macOS-sproget. Vid et eksplicit valg huskes sprogindstillingen på tværs av genstart; fuld virkning kræver som regel en app-genstart, fordi lokaliserings-bundles kun indlæses vid opstart. De 298 dokumenterede lokaliseringsnøgler i projektet medtages alle, inklusive alle tekster i sub-views og hjælpe-tooltips.
S3Viewport Background
VAR
Settings → General → Viewport → Background-vælger. Bound:. Default: .darkGray (RGB 0.1, 0.1, 0.1).
TEKNISKT
Sætter standardbaggrundsfarven for 3D-viewporten. Tre muligheder: „Dark Gray" (RGB 0.1, 0.1, 0.1 — default), „Black" (0, 0, 0) og „White" (1, 1, 1). Indstillingen persisterer standarden for nye projekter og sessioner på tværs av genstart og opdaterer samtidig den kørende Metal-renderer med det samme. Identiske muligheder finns i menuen Viewport → Background (M21, M22, M23), men Settings-vælgeren sætter standarden, mens menuen skifter den løbende visning. Vigtigt for screenshots og demo-videoer: hvide baggrunde fremhæver grønne/blå floaters tydeligere, mørke baggrunde er bedre til rene render-optagelser.
S4Auto-Rotate After Training
VAR
Settings → General → Viewport → Toggle „Auto-Rotate After Training". Bound:. Default: false.
TEKNISKT
Starter umiddelbart efter träningsslut en kontinuerlig turntable-rotation av viewport-kameraet om scenens tyngdepunkt (standard-rotationshastighed ~0.3 rad/s). Praktisk användbar til demo-sessioner, A/B-sammenligninger og til direkte at vurdere fra 360°-perspektiv, om der er opstået „floaters" vid scen-kanten. Effekten er visuelt identisk med menuen Viewport → Toggle Auto-Rotation (M16, ⌘⌥T), bortset fra at toggle'en her udløser adfærden automatisk efter träningsslut i stedet for manuelt. Lader sig senere afbryde til enhver tid via menuen eller vid klik i viewporten (som pauser rotationen). Har ingen indflydelse på trænings-performance — rotationen kører først, när træningen er færdig.
S5Live Preview Interval
VAR
Settings → General → Training → Live Preview-vælger. Bound: AppState.trainingConfig.livePreviewInterval. Default: 0 (Off).
TEKNISKT
Bestemmer, med vilket iterations-interval det løbende træningssnapshot rendres ind i 3D-viewporten. Fire diskrete värden: 0 („Off"), 50, 250, 1000 iterationer. Vid aktiv Live Preview kopierer træneren Gaussian-bufferen fra GPU'en til en separat render-buffer og udløser en viewport-redraw. Vid „Off" opdateres viewporten først efter trænings-afslutning. Performance-omkostning: hver 50 iterationer ~5–10% långsammare på M3 Ultra, hver 250 iterationer ~1–2% långsammare, hver 1000 iterationer umålelig. Memory-overhead konstant ~2 GB til snapshot-bufferen, uafhængigt av intervallet. Værdien fungerer som standard for nye træninger; efter tränings-start visar trænings-Inspectoren den reelle live-värde for den pågældende träning. Vid interval 50 är det visuelle indtryk en flydende „opvækst" av punktskyen, vid 1000 virker det hakkende.
S6Throttle Delay
VAR
Settings → General → Training → Throttle-vælger. Bound: AppState.trainingConfig.throttleDelayMs. Default: 0 (Off).
TEKNISKT
Indsætter en kunstig forsinkelse i millisekunder mellan tränings-iterationer. Fire diskrete värden: 0 („Off"), 2 („Light"), 5 („Moderate"), 10 („Eco"). Mening: vid længere træninger (flere timer) blir GPU'en annars belastet 100 %, vilket fører til mærkbart långsammare system-UI (musemarkøren hakker, andre apps blir trægme). Throttle-forsinkelsen giver GPU'en pauser, hvor andre opgaver kan udføres. Performance-omkostningen er betragtelig: vid 5 ms throttle varer en typiskt 40K-träning omkring 50–80% længere end uden throttle. I performance-tilstanden „Eco" (10 ms) er forsinkelsen pr. iteration længere end selve iterationen — faktor 2–3× långsammare. Vid aktiv throttle visas der under vælgeren en bemærkning: „Throttle is on. Training will be slower than usual." Selve appen reagerer inte mærkbart bedre — kun andre apps har gavn av det.
S7Sky Masking
VAR
Settings → General → Experimental — Outdoor Floater Reduction → Toggle „Sky Masking". Bound: AppState.trainingConfig.skyMaskingEnabled. Default: false.
TEKNISKT
Aktiverer pre-training Apple-Vision-baserat sky-pixel-segmentering. Før tränings-start ekstraheres sky-regionen for hvert input-kamera via Apple-Vision-Foreground-Mask (Sky = Background) og tilknyttes det pågældende kamera som pr.-pixel-maske. Under træningen multipliceres loss-bidraget pr. pixel med komplementet av sky-masken — sky-pixel bidrager 0 til gradienten, så gaussians, der projicerer ind i himlen, inte modtager optimerings-signaler og dermed inte blir „tættere" eller „lysere". Reducerer floaters (mørke klumper i himlen) vid outdoor-/drone-scener signifikant. Koster ~3% L1-regression vid klassisk 40K-träning (se memory/dev_outdoor-floater-reduction.md). Kun meningsfuld vid outdoor-scener med klart genkendelig himmel; vid indendørs scener eller hvid baggrund identificerer sky-segmenteringen forkerte områder og blokerer valide loss-signaler. I modsætning til de øvrige eksperimentelle toggles huskes værdien inte på tværs av app-genstart — vid nästa app-start är den slukket igen.
S8Mid-Training Floater Cleanup
VAR
Settings → General → Experimental — Outdoor Floater Reduction → Toggle „Mid-Training Floater Cleanup". Bound:. Default: false.
TEKNISKT
Aktiverer vid klassisk 40K-träning (preset „P4 Quality") to ekstra density-control-passes: vid iteration 20,000 og vid iteration 30,000. Begge passes gennemsøger alle gaussians efter tre kriterier: (a) meget lav opacity (standard 0.005), (b) lille screen-space-størrelse, (c) ingen loss-bidrag i de senaste 1000 iterationer. Gaussians, der opfylder alle tre betingelser, purges. Effekt: ~5–15% færre gaussians vid träningsslut, synligt færre mørke klumper i himlen vid drone-/outdoor-scener. Koster ~1–3% L1-regression vid nærbillede-indoor-scener, därför inte aktiveret som default. Værdien huskes på tværs av genstart (i modsætning til S7). De to cleanup-iterationer (20K, 30K) er hårdt definerede og kan p.t. inte ændres via UI; vid kortere træninger (f.eks. P2 Preview 5K) har toggle'en ingen effekt, fordi den aldrig när iterations-mærkerne. Detaljer: memory/dev_outdoor-floater-reduction.md.
S9Reduce Elongated Gaussians
VAR
Settings → General → Experimental — Outdoor Floater Reduction → Toggle „Reduce Elongated Gaussians". Bound:. Default: false.
TEKNISKT
Aktiverer en yderligere anisotropi-regularisering i loss-termen. Under optimeringen beregnes for hver gaussian anisotropien som forholdet mellan største og mindste skaleringsakse. Ligger forholdet over en threshold (, standard 10.0), tilføjes en penalty-term til loss'en, der skalerer proportionalt med overskridelsen. Effekt: nålformede gaussians, der er typiske for cross-hatch- og streak-artefakter i græs og tæt løv, tvinges under træningen enten til rundere former eller purges. Til gengæld ~6 % L1-regression vid standard-indoor-scener, ingen effekt vid strikte object-captures. Sweet spot er vid droneflyvningsoptagelser over vegetation. Skriver til, persisterer via. Implementering i optimizer.metal som en yderligere penalty i gradient-beregningen. Se bemærkningen i projekt-memory: V549d var den shippede version, en senere V549f med mere aggressiv scale-reg blev rullet tilbage på grund av katastrofal regression. Detaljer: memory/dev_outdoor-floater-reduction.md og memory/dev_v549f-needle-reduction.md.
S10Reconstruct Sky Dome
VAR
Settings → General → Experimental — Outdoor Floater Reduction → Toggle „Reconstruct Sky Dome". Bound:. Default: false.
TEKNISKT
Aktiverer pre-training sky-dome-projektionen (V549e MVP). Efter SfM og före tränings-start ekstraheres for hvert input-kamera den i S7 fælles brugte Apple-Vision-sky-maske fra bilden, sky-pixlene av-projiceres med kamera-intrinsics på en virtuel kugleoverflade (standard-radius 8× scen-radius). På denna kugle initialiseres ~5000 nye gaussians med farve-middelværdier fra de projicerede sky-pixler, meget stor skalering (1.0 i scen-enheder) og start-opacity 0.95. Disse 5000 gaussians er inte en sky-mask i klassisk forstand — de tränas som alle andre, men holdes via den høje start-opacity i et tyndt ska. Resultat: vid 360°-novel-views i outdoor-/drone-scener fremstår faktiske himmelfarver og skyformationer i stedet for mørke konfetti-klumper. Værdien huskes på tværs av genstart. Kun meningsfuld vid outdoor-scener med mindst 360°-kameradækning; vid rene object-captures uden himmel har det ingen effekt. Status: eksperimentel, bredere A/B-validering på tværs av yderligere outdoor-sæt udestår.
AI-Helpers-fanen

S11AI Helpers enabled (Master)
VAR
Settings → AI Helpers → første sektion → Toggle „AI Helpers enabled". Bound:. Default: true.
TEKNISKT
Master-kontakt over alle AI-helpers-funktioner i pipelinen. Når slukket, springer import- og SfM-pipelinen alle ML-baserade forbehandlingsstadier helt over — intet Apple-Vision- kald, ingen CoreML-model-load, ingen NPU-opvågning. Når tændt, konsulteres de individuelle sub-toggles (S12–S14). Værdien huskes på tværs av genstart. Påvirker følgende stadier: (a) frame-quality- pre-check före SfM (S12), (b) loop-closure-detektion (S13), (c) auto-sky-masking som default-värde for nye træninger (S14). Vigtigt: vid slukket er de tre sub-toggles deaktiveret og visuelt grånet ud. Footer-bemærkning understreger, at alle AI-helpers strikt kører on-device — ingen bild-upload, ingen sky-behandling. Privatlivsgarantien kommer vid udelukkende brug av Apple-Vision-framework (lokalt på Neural Engine) og CoreML-modeller, der ligger direkte i app-bundlen.
S12Frame quality check
VAR
Settings → AI Helpers → Available-sektion → Toggle „Frame quality check". Bound:. Default: true.
TEKNISKT
Aktiverer frame-quality-screeneren (fase 3.11), som före SfM-kaldet analyserer hver importeret frame. Pipeline-trin pr. frame: (a) Laplacian-variance-filter fra Apple Vision (sløringsdetektion — tærskel ~150), (b) histogram-baserat over/under-eksponerings-check (tærskel: >5% pixel vid 0 eller 255), (c) blank-frame-detect (standardafvigelse < 5 over alle pixel). Frames, der består alle tre tjek, går direkte genom. Frames, der fejler mindst ett tjek, udløser en modal bekræftelsesdialog, der lister hvert problematisk frame med thumbnail og begrundelse og spørger, om det ska fjernes. Vigtigt: ingen automatisk sletning — dialogen er altid påkrævet, brugeren beholder den sista beslutning. Performance: ~50 ms pr. frame på M3 Ultra, kører parallelt. Vid slukket sendes alle frames uprøvet videre til SfM. Vid deaktiveret master (S11) er denna toggle visuelt grånet ud og uden virkning. Shipped status ifølge memory: SHIPPED 2026-05-23.
S13Loop closure detection
VAR
Settings → AI Helpers → Available-sektion → Toggle „Loop closure detection". Bound:. Default: true.
TEKNISKT
Aktiverer Apple-Vision-Feature-Print-baserat loop-closure-detektion. For hver importeret frame beregnes en ~768-dimensional feature-vektor, som repræsenterer en neural indlejring av bildindholdet. Därefter sammenlignes alle feature-prints parvis via cosine-similarity. Par med similarity > 0.85 og afstand i frame-index > 50 (altså inte-naboliggende frames) identificeres som „loop-closure-kandidater" og skrives i en sidecar-JSONL-fil i projektmappen. Kun informativ — den importerede bild-sekvens modificeres inte. Mening: giver SfM-solveren (särskilt COLMAP) et hint om, at dessa frames hører sammen i klyngen i 3D-rummet. For native SfM er sidecar-informationen p.t. kun dokumenterende; COLMAP bruger hintsene internt via custom matches-file (manuel integration mulig, inte automatisk koblet). Performance: ~200 ms pr. frame på M3 Ultra, kører parallelt. Vid slukket genereres ingen feature-prints. Vid deaktiveret master (S11) visuelt grånet ud.
S14Auto sky masking (AI)
VAR
Settings → AI Helpers → Available-sektion → Toggle „Auto sky masking". Bound: UserDefaults.standard.bool(forKey: "aiHelpersSkyMaskingDefault") (via custom-binding). Default: false.
TEKNISKT
Sætter default-værdien for sky-masking-indstillingen fra S7 vid nye trænings-konfigurationer. I modsætning til S11–S13 lever den egentlige sky-masking-inställning pr. training-session og huskes inte på tværs av app-genstart (se S7). For at AI-helpers-UI'en ändå kan tilbyde en persistent default for „nye træninger", finns denna skygge-värde: den huskes på tværs av genstart og overtages som initial default for sky-masking vid opsætning av en ny träning (f.eks. ny projekt-import). Vid deaktiveret master (S11) visuelt grånet ud.
Inspector-spejls-settings
De øvrige settings-poster (S17–S33) fra inventartabellen er spejlinger fra Expert-Inspectoren og dokumenteret i kapitel 2 (Inspector-Controls I12–I29). De optræder inte fysisk i indstillingsvinduet, men er kun listet i inventaret, fordi de kører via TrainingConfig-properties, der persisteres via, og dermed formelt har settings-karakter. For indholdsmæssige forklaringer henvises der dertil.
Hvornår vad?
| Setting | Gyldighedsområde | Persistens |
|---|---|---|
| S1 Default Mode | App-globalt | App-genstart |
| S2 Language | App-globalt | App-genstart |
| S3 Viewport Background | App-globalt (default) + runtime | App-genstart |
| S4 Auto-Rotate After Training | App-globalt | App-genstart |
| S5 Live Preview Interval | Default for nye træninger | App-genstart |
| S6 Throttle Delay | Default for nye træninger | App-genstart |
| S7 Sky Masking | Aktuel träning | kun session |
| S8 Mid-Training Floater Cleanup | App-globalt | App-genstart |
| S9 Reduce Elongated Gaussians | App-globalt | App-genstart |
| S10 Reconstruct Sky Dome | App-globalt | App-genstart |
| S11 AI Helpers Master | App-globalt | App-genstart |
| S12 Frame quality check | App-globalt | App-genstart |
| S13 Loop closure detection | App-globalt | App-genstart |
| S14 Auto sky masking | Default for nye træninger | App-genstart |
App-globalt = virker på alle projekter. Default for nye træninger = virker kun på den nästa oprettede träning, løbende sessioner förblir uændrede. Aktuel träning = virker med det samme på den løbende tränings-konfiguration, men persisterer inte uden eksplicit reimport.