第3章 — 環境設定
環境設定ウィンドウは RadianceKit → 環境設定… または標準のキーボードショートカット ⌘, から開く。ここには2つのタブがある: General と AI Helpers。第2章のInspectorの値とは異なり、 このウィンドウの設定はアプリ全体(すべてのプロジェクトにまたがって)に作用する — 1つの例外を除いて永続的に保存され、アプリの再起動後も維持される。 その例外がライブプレビュー間隔(S5)で、これは実行中のセッションにのみ適用される。 Generalタブは内容の面から3つの区分にまとめられている: Interface、Viewport、Training。 (以前ここにあった屋外向けフローター用のトグル — Sky Masking、 Floater Cleanup、Reconstruct Sky Dome — はv1.6以降、 Expert Inspectorに移動しており、プロジェクトごとに保存される。2026-07-18の再編成以降は TrainingセクションのOutdoorサブグループに配置されている。第2章、I42–I44を参照。) AI Helpersタブでは、SfMおよびトレーニングの前処理のためのオンデバイス機械学習ヘルパー (Vision、CoreML)を切り替える。
このウィンドウはスクロールする。サイズは固定されており — コード上では460 #sym.times 600ポイントと定められている —、 Generalタブの内容はこの表示領域よりも縦に長い。開いた直後は InterfaceとViewportの上部しか見えない。 Training、そしてそこに含まれる自動PLYのスイッチ(S36)や エクスポートフォルダへのボタン(S37)は、下にスクロールしてはじめて現れる。 この2つが見当たらないという人は、たいてい単にスクロールしていないだけだ。 そのため以下の2つの図は同じタブを2回、上部表示時と下までスクロールした状態の 2パターンで示している。
すべてのAI Helpersを一括で有効化・無効化するためのかつての操作要素は、 現行バージョンにはもう存在しない — それに応じて、ここでは扱わない。また、まだ提供されていないヘルパー向けの かつての「Coming Soon」セクションも削除されており、ここでは言及しない。
General-Tab

S1Default Mode
場所
Settings → General → Interface → Default Mode ピッカー。 初期設定: 「Simple Mode」。
技術詳細
次回起動時にアプリが2つのUIモードのうちどちらで開くかを制御する。 「Simple Mode」は4ステップ(Import → Processing → Preview → Export、第10章のZ1–Z4で解説)から成る 案内付きウィザード形式のワークフロー、「Expert Mode」は第2章で説明したナビゲーター・3Dビューポート・ Expert-Inspectorから成るクラシックな3パネルレイアウトである。この値は再起動をまたいで記憶される。 メニューMode → Simple Mode(⌘1)/Mode → Expert Mode(⌘2)と同じ効果を持つが、 メニューは現在のセッションを切り替えるのに対し、このピッカーは今後のセッションの初期値を設定する という違いがある。両モードは同じプロジェクト状態を参照する — プロジェクト、カメラ、 トレーニング設定はモード切替時にも保持される。モード固有のツールバーボタンは即座に再描画される。
S38Pause after frame extraction (Expert)
場所
Settings → General → Interface → トグル「Pause after frame extraction (Expert)」。初期設定: オフ。
技術詳細
Expert Modeにのみ、かつそこでも動画素材にのみ関係する。 このスイッチがオフ(初期設定)の場合、大きなボタンは「Start Processing」という表示になり、 処理は一気に通しで実行される: 動画からの画像抽出、画質チェック、カメラの位置合わせ、トレーニング。 オンの場合、同じボタンは「Extract Frames」という表示になり、処理は個々のフレームの 抽出とふるい分けの後で一旦停止する。この停止中に、ナビゲーターで画像セットを見直し、 不要な画像を取り除き、トレーニング設定を変更してから、残りの処理を自分で開始できる。 この値は再起動をまたいで記憶される。Simple Modeや、すでに個別画像から成るインポートには 効果がない — そこには抽出すべきものがないためだ。
S34Show marker recipe suggestions
場所
Settings → General → Interface → トグル「Show marker recipe suggestions」。初期設定: オン。
技術詳細
インポート後にアプリが画像内のAprilTagマーカーを黙って探し、 必要に応じて別のSfMレシピを提案することを許可する。この提案はExpert-Inspector内、 Cameras & Captureセクションの上にバナーとして表示され、繰り返し検出されたマーカーを より正確なカメラ位置のための固定アンカーとして使用するProfessionalへの切り替えを勧める。 カウントされるのは実際に使えるものだけである: マーカーIDは少なくとも3枚の画像に 現れなければならない。さもないと使い物になる軌跡は得られず、カウントされない — それぞれ一度しか出現しない複数の異なるIDでは、何もトリガーされないということだ。 この提案はさらに、ネイティブSfMが実際に動作していて、より高品質なレシピがまだ 設定されていない場合にのみ表示され、実行が始まると消える。このスイッチはバナー自体の 「Don't suggest again」の恒久版であり、そこでクリックするとここのスイッチがオフになる。 逆に、ここで再びオンにすることは明示的なやり直しとみなされる: 現在のインポートで 消された提案も、再び検証される。
S2Language
場所
Settings → General → Interface → Language ピッカー。 初期設定: 「System Default」(macOSの言語に従う)。
技術詳細
macOSのシステム言語とは独立に、アプリUI全体の表示言語を選択する。 このピッカーには「System Default」項目と18の固定言語がリストされる: English, Deutsch, Français, Español, Português, Italiano, Nederlands, 日本語, 中文, 한국어, Svenska, Norsk, Dansk, Suomi, Polski, Čeština, Русский, Türkçe。「System Default」の場合、 アプリはmacOSの言語に従う。明示的に選択した場合、その言語設定は再起動をまたいで記憶される。 完全な反映には通常アプリの再起動が必要になる。ローカライズバンドルは起動時にのみ 読み込まれるためである。
S3Viewport Background
場所
Settings → General → Viewport → Background ピッカー。 初期設定: 「Dark Gray」(RGB 0.1, 0.1, 0.1)。
技術詳細
3Dビューポートの背景色を設定する。3つの選択肢: 「Dark Gray」 (RGB 0.1, 0.1, 0.1 — デフォルト)、「Black」(0, 0, 0)、「White」(1, 1, 1)。 この選択は動作中のMetalレンダラーに即座に反映され、かつUser-Defaultsに保存される、 つまりアプリの再起動を生き延びる。この設定は1つだけで、3通りの操作経路がある: このピッカー、メニューViewport → Background(M21、M22、M23)、そしてビューポート内の Bキーは、すべて同じセッターに書き込む — メニューやキーで切り替えた場合、 その後ここのSettingsピッカーにも新しい値が表示される。(v1.7までは、アプリはこの選択を 記憶せず、ピッカー内の「Default」という語はその意味では正直ではなかった; 2026-07-18以降、 この3つの経路は一致するようになった。)この変更の意図的な結果として: 白い背景は 再起動後も白いままとなり、スクリーンショットやオービット動画エクスポートにもそのまま 反映される。撮影に関して引き続き有効な点: 白い背景は緑や青のフローターをより 強調し、暗い背景はきれいなレンダー撮影に向いている。
S39Selection color
場所
Settings → General → Viewport → カラーピッカー「Selection color」。 初期設定: 赤(RGB 1, 0, 0)。
技術詳細
編集モードで選択されたガウス点を着色する色調を定める — つまり、 ブラシやカットプレーンでマークして、次のステップで削除または脱彩するものを示す色である。 このピッカーは透明度を扱わない。変更は即座にUser-Defaultsに書き込まれ、動作中の レンダラーに引き渡される。つまりビューは次のフレームで色が変わる; 再起動は不要である。 この色調は表示専用であり、エクスポートされたファイルには一切含まれない。
S40Cylinder color
場所
Settings → General → Viewport → カラーピッカー「Cylinder color」。 初期設定: シアン(RGB 0.1, 0.9, 1.0)。
技術詳細
円柱切り抜きの色調を定める — ワイヤーフレームと、円柱が 囲む中身の両方が対象である。注意、2つの色調は正反対の意味を持つ: 選択色(S39)は消えるものをマークし、円柱色は残るものをマークする。 そのため両者は個別に設定可能であり、初期状態でも明確に異なる色になっている。 S39と同様に透明度なし、即座に反映され、表示専用である。
S35Invert vertical navigation
場所
Settings → General → Viewport → トグル「Invert vertical navigation」。初期設定: オフ。
技術詳細
ビューポートナビゲーションの上下方向を反転する。 2026-07-18以降の適用範囲: 周回(オービット)、フライトモードでの視線、 そしてパン — 後者はジェスチャーによるものも、右マウスボタンでの ドラッグによるものも含む。以前このフラグは後者をまったく読んでいなかった。 以前はこのスイッチは半分しか機能しておらず、オンにすると2つのジェスチャーが 互いに逆方向に動いてしまっていた。パンの場合、垂直方向のマウス移動は 本来オービットとは符号が逆であるため、そこではオービットからそのままコピーする のではなく条件付きで反転される — このスイッチに一度も触れない人には、 この補正は何も感じられない。ズームは意図的に対象外である: そこでは すでにシステムのスクロール方向が符号の決定を担っており、デルタは距離と 視野角を制御するものであって、垂直方向のナビゲーションではない。
ここからはスクロールが必要になる — 以下の3つの項目は ウィンドウの表示領域より下にある。

S5Live Preview Interval
場所
Settings → General → Training → Live Preview ピッカー。 初期設定: 「Every 50 Iterations」。
技術詳細
進行中のトレーニングスナップショットが3Dビューポートに描画される イテレーション間隔を決定する。4つの離散値: 0(「Off」)、50、250、1000イテレーション。 Live Previewが有効な場合、トレーナーはGPU上のガウスバッファを別のレンダーバッファに コピーし、ビューポートの再描画をトリガーする。「Off」の場合、ビューポートは トレーニング完了後にのみ更新される。パフォーマンスコスト: 50イテレーション毎で M3 Ultra上で約5–10%遅くなり、250イテレーション毎で約1–2%遅くなり、 1000イテレーション毎では計測不能。メモリオーバーヘッドはスナップショットバッファ用に 一定で約2 GB、間隔には依存しない。適用範囲: この値はシーンではなく アプリに属する。技術的な理由からトレーニング設定と一緒に持ち回られるが、 シーンファイルを開くとき、プリセットを切り替えるとき、自動360°切替の際には 明示的に保持される — 以前は、開いたシーンが自身のプレビューレートを シーン作者のものに(「Off」を含めて)上書きしてしまっていた。同じ理由から、 これはレシピ比較には数えられず、プリセットに「Modified」バッジをトリガーしない。 「Continue Training」も、元の実行時に有効だった値ではなく、現在の値に従う — 継続実行はこれ以降、プレビューを表示するようになり、途中でオフにされていれば それを尊重する。同時にこれは、このウィンドウ内で唯一アプリの再起動を 生き延びない設定でもある: ここにある他のすべての項目とは異なり、どこにも 恒久的に保存されず、起動のたびに「Every 50 Iterations」に戻る。すでに実行中の トレーニングはそのレートを変更しない; 変更は次回の実行時に反映される。 間隔50では、点群が滑らかに「成長していく」ような視覚的印象になり、 1000ではぎこちなく見える。
S36Save a PLY automatically after each run
場所
Settings → General → Training → トグル「Save a PLY automatically after each run」。初期設定: オン。
技術詳細
各実行終了後 — 新規実行と継続実行の両方 — に、 結果をPLYとしてExportsフォルダに書き出す(training_<タイムスタンプ>.ply)。 この機能自体はv1.7.0以来存在するが、以前は表示もスイッチもなく動作していた; 2026-07-18以降、可視化され、オフにできるようになった。オフにする際の注意: この自動書き出しはセーフティネットである — これがなければ、完成した実行結果は 自分でエクスポートするかシーンとして保存するまで、メモリ上にしか存在しない。 オンのままにしておく際の注意: 詳細度の高いシーンでは、ファイルは 約2 GBに達する。この設定が一度も触られていない場合は「オン」が適用される: User-Defaultsに値がないことは明示的に「オン」と解釈され、「オフ」とは解釈されない — そうしないと、既存のユーザー全員がこのセーフティネットを知らないうちに 失ってしまうことになる。保存先フォルダはビルドによって異なる: サンドボックスなしの 場合は~/Documents/RadianceKit/Exports、App Store版では ~/Library/Containers/…/Documents/RadianceKit/Exports — そのため 隣にボタンがある(S37)。
S37Show Exports Folder…
場所
Settings → General → Training → ボタン「Show Exports Folder…」。 純粋なアクションであり、保存される値はない。
技術詳細
S36の自動PLYが書き込まれるフォルダをFinderで開く。存在理由は、 パスがビルドごとに異なり、App Store版ではファイルがアプリのコンテナ内にあって 誰も見に行かない場所にあるためである — まさにそのせいで、繰り返し 「消えた」ように見えていた。ボタンと書き込み処理は同じパス定義を使っているため、 食い違うことはあり得ない。保存される状態はない。
未保存の作業がある状態で終了しようとすると、2026-07-18以降 アプリは、無言で閉じる代わりに確認を求めるようになった。実行中の処理がある場合、 確認メッセージは「Quit while a run is in progress?」となる — その実行は 中断され、進行状況は失われることになる。トレーニング済みの結果があり、 まだエクスポートもシーンとしての保存もされていない場合は「Quit without saving the result?」となる。どちらの場合も初期選択はCancelである; つまりReturnとEscapeは終了を中止し、「Quit Anyway」は終了を強行する。 スクリプトや自動テストからの起動は対象外で、確認なしに終了する。S36がオンの 場合、2つ目のケースはあまり起こらない — その場合、結果はすでにExportsフォルダに PLYとして存在しており、保存済みとみなされるためである。
AI-Helpers-Tab

S11AI Helpers enabled(マスター)
場所
Settings → AI Helpers → 最初のセクション → 「AI Helpers enabled」トグル。初期設定:オン。
技術詳細
パイプライン内のすべてのAI Helpers機能を統括するマスタースイッチ。 オフの場合、インポートおよびSfMパイプラインはML基盤の前処理ステージをすべてスキップする — Apple Vision呼び出しなし、CoreMLモデルのロードなし、NPUの起動なし。オンの場合、 個々のサブオプション(S12~S13)が参照される。設定値は再起動をまたいで保持される。以下のステージに影響する: (a) SfM前のフレーム品質事前チェック(S12)、(b) ループクロージャ検出(S13)。重要:オフの場合、 タブ内のすべてのサブオプションが無効化され、見た目もグレーアウトされる。フッターの注記では、すべてのAI Helpersが厳格に オンデバイスで動作すること — 画像アップロードなし、クラウド処理なし — が強調されている。 プライバシー保証は、Apple Vision Framework(Neural Engine上でローカルに動作)と、 アプリバンドル内に直接同梱されたCoreMLモデルのみを使用していることによって成立している。
S12Frame quality check
場所
Settings → AI Helpers → Availableセクション → 「Frame quality check」トグル。初期設定:オン。
技術詳細
SfM呼び出し前に、インポートされたすべてのフレームを解析するFrame Quality Screenerを有効化する。フレームごとに、モーションブラー、露出過多・露出不足、 画像構造の不足、レンズの一部が遮られていないかがチェックされる。判定結果はさらに重大度別 (問題なし、警告、深刻)に分類される。問題のないフレームはそのまま通過する。 問題があるフレームはモーダルな確認ダイアログをトリガーし、問題のある各フレームを サムネイルと理由付きでリスト表示し、削除するかどうかを尋ねる — すべて保持する、指摘されたものをすべて削除する、あるいは独自に選択して削除する、のいずれかを選べる。 重要:自動削除は行われない — ダイアログは常に必須であり、最終判断はユーザーに委ねられる。 オフの場合、すべてのフレームは未チェックのままSfMに渡される。 マスター(S11)が無効な場合、このトグルは見た目上グレーアウトされ、効果を持たない。
S13Loop closure detection
場所
Settings → AI Helpers → Availableセクション → 「Loop closure detection」トグル。初期設定:オン。
技術詳細
Apple Vision Feature Printベースのループクロージャ検出を有効化する。 インポートされた各フレームに対してFeature Print(画像内容のニューラル埋め込み)が計算される。 その後、Feature Printどうしがペアで比較される。十分に類似しており、かつ撮影順序上 十分に離れている(つまり直接の隣接フレームではない)ペアは「ループクロージャ候補」として 識別され、プロジェクトフォルダ内のサイドカーJSONLファイルに書き出される。 あくまで情報提供のみ — インポートされた画像シーケンス自体は変更されない。目的: これらのフレームが3D空間上で互いにクラスタとしてまとまるべきであることを、 SfMソルバー(特にCOLMAP)に示唆すること。ネイティブSfMに対しては、このサイドカー情報は 現状ドキュメント的な意味合いにとどまる。COLMAPはこのヒントをカスタムmatchesファイル経由で 内部的に利用する(手動での統合は可能だが、自動連携はしない)。オフの場合、 Feature Printは生成されない。マスター(S11)が無効な場合は見た目上グレーアウトされる。
インスペクタ・ミラー設定
残りの設定項目(S17–S33)は、エキスパートインスペクタからのミラーであり、第2章(インスペクタコントロール I12–I29)で説明されています。これらは設定ウィンドウに物理的に表示されるわけではなく、トレーニング設定に属し、その意味で形式上は設定的な性質を持つため、ここに記載されているにすぎません。この章の項目とは異なり、これらはアプリ全体には適用されません:これらはレシピに属し、プリセットやシーンファイルと共に保存されるため、プロジェクトごとに切り替わります。内容の詳細な説明については、該当箇所を参照してください。
いつ何を?
| 設定 | 適用範囲 | 永続性 |
|---|---|---|
| S1 Default Mode | アプリ全体 | アプリ再起動時 |
| S2 Language | アプリ全体 | アプリ再起動時 |
| S3 Viewport Background | アプリ全体(ピッカー、メニュー 、Bキーはすべて同じ設定です) | アプリ再起動時 |
| S5 Live Preview Interval | アプリ全体(シーンには 保存されません) | 実行中のセッションのみ |
| S11 AI Helpers Master | アプリ全体 | アプリ再起動時 |
| S12 Frame quality check | アプリ全体 | アプリ再起動時 |
| S13 Loop closure detection | アプリ全体 | アプリ再起動時 |
| S34 Show marker recipe suggestions | アプリ全体 | アプリ再起動時 |
| S35 Invert vertical navigation | アプリ全体 | アプリ再起動時 |
| S36 Save a PLY automatically | アプリ全体 | アプリ再起動時 |
| S37 Show Exports Folder… | 操作 | — |
| S38 Pause after frame extraction | アプリ全体(エキスパート モードのみ、動画のみ) | アプリ再起動時 |
| S39 Selection color | アプリ全体(表示のみ) | アプリ再起動時 |
| S40 Cylinder color | アプリ全体(表示のみ) | アプリ再起動時 |
アプリ全体 = すべてのプロジェクトに影響します。 操作 = 保存された状態を持たず、ボタンはその場で一度だけ何かを実行します。 ここに記載された設定のいずれも、シーンファイルには保存されません。 そのほとんどはアプリの再起動後も保持されますが、唯一の例外がLive Preview Interval(S5)で、起動のたびに「Every 50 Iterations」に リセットされます。