目次

Path to Flight Plan

スプラインで描いたパスからフライトプランカメラを生成し、3DGS(3D Gaussian Splatting)用のデータセットを作るまでを、1 つのウィンドウで進めるツールです。Chaos Vantage でのレンダリング、Metashape Pro でのアライメント、LichtFeld Studio 用の transforms.json の書き出しまでを、ステップ順に行えます。

ツール名 Path to Flight Plan
収録 OakCorp Tools 1.1.0 以降(OakCorp Tools for 3ds Max)
スクリプトのバージョン Ver 2026080703
対応環境 3ds Max 2025 ~ 2027
連携ソフト V-Ray 7、Chaos Vantage、Agisoft Metashape Pro(Standard は一部の機能のみ)、LichtFeld Studio
起動 OakCorp ツールバーの Path to Flight Plan ボタン、またはマクロ Path to Flight Plan(Category:OakCorp)

実践チュートリアル

render2splat.jpg

ワークフローの概要

ウィンドウは上から順に 4 つのステップと、セッションの保存で構成されています。

ステップ 内容 結果
① フライトプラン生成 パス(スプライン)を分割し、1 点 = 1 フレームでカメラにキーを設定します。 VRayPhysicalCamera(アニメーション付き)
② Chaos Vantage レンダリング .vrscene を書き出し、Vantage をコマンドラインで実行します。 連番画像(Spherical 360 または通常のフレーム画像)
③ Metashape Pro アライメント用のリファレンス CSV を書き出します。 Metashape でアライメントし、点群(.ply)と cameras.xml を書き出し
④ LichtFeld Studio 画像・点群・カメラ位置から transforms.json を書き出します。 LichtFeld Studio で学習できるデータセット

① フライトプラン生成

項目

項目 内容
パスの一覧 フライトプランに使うスプラインです。一覧の順に連結して 1 本のパスとして扱います。
選択を追加 シーンで選択しているスプラインを一覧に追加します。
更新/削除/クリア 一覧の表示を更新、選んだパスを一覧から外す、一覧を空にします。
セグメント分割数 ノット間を何分割するかを指定します。1 ならノットの位置だけ、2 ならノットの間に 1 点を追加します。中間点は曲線に沿って配置されます。
ルックアット オンにすると、カメラが注視オブジェクトの中心を向きます。オフのときは進行方向を水平に向きます。
注視オブジェクトをピック ルックアットで向く対象を選びます。
開始フレーム 1 点目のキーを置くフレームです。
フライトプラン生成(カメラ作成) カメラを作成し、点ごとに 1 フレームずつキーを設定します。

手順

  1. パスとなるスプラインを描きます。開いたスプラインも閉じたスプラインも使えます。Circle [円] や Rectangle [長方形] などのシェイプもそのまま使えます(元のシェイプは変更しません)。
  2. スプラインを選択して[選択を追加]を押します。複数のパスを使う場合は、飛ぶ順に追加します。
  3. [セグメント分割数]と[ルックアット]を設定します。一覧の下に、現在の撮影点の数が表示されます。
  4. [フライトプラン生成(カメラ作成)]を押します。

P2F_Cam360 という名前の VRayPhysicalCamera(ターゲットなし)が作られ、撮影点ごとにキーが設定されます。Time Slider [タイムスライダー] の範囲も撮影点の数に合わせて変わり、カメラ名は ② の[カメラ名]に自動で入ります。

パスの形を直したいときは、スプラインのノットを編集してから、もう一度[フライトプラン生成]を押します。新しいカメラが作られます。

② Chaos Vantage レンダリング

.vrscene を書き出す

[.vrscene を書き出し(現在のシーン)]を押し、保存先を指定します。

Vantage は、.vrscene を書き出したときの「レンダリングするビュー」のカメラを、アニメーション付きのカメラ(Original Camera)として扱います。そのためこのボタンは、書き出す前に次の処理を自動で行います。

書き出したあと、ファイルの中でカメラがアニメーション付きになっているかを検証し、結果を表示します。

項目

項目 内容
.vrscene シーンファイル レンダリングする .vrscene です。書き出すと自動で入ります。既存のファイルを[参照…]で指定することもできます。
Vantage exe Vantage の実行ファイルです。C:\Program Files\Chaos\Vantage\vantage.exe があれば自動で入ります。
出力フォルダ 画像の出力先です。④ の写真フォルダとしても使います。
カメラ名(-camera) レンダリングするカメラです。① で生成すると自動で入ります。
画像ベース名/拡張子 出力する画像の名前です。番号は Vantage が付けます(例:shot.00000.png)。
連番桁数 画像の番号の桁数です(既定は 5)。
解像度 Spherical 用の 2:1 のプリセット(1K~8K)と Custom です。Custom では幅と高さを入力します。
Samples Vantage のサンプル数です。
追加オプション Vantage のコマンドラインに追加するオプションです(任意)。
カメラモード Spherical 360(全天球)または通常フレームカメラです。

レンダリングする

[Vantage レンダージョブ実行(全フレーム)]を押すと、Vantage がコマンドラインで起動し、全フレームをレンダリングします。次の設定は自動で付けます。

設定 値
カメラ Spherical 360 のときは 360°×180° の全天球。通常フレームカメラのときはシーンのカメラの画角
自動露出 オフ(画像ごとの明るさの差をなくすため)
デノイズ オン
Light Cache オン
モーションブラー オフ
アルファ オン(PNG)
終了後 Vantage を自動で閉じる

差分レンダリング

パスを編集したり分割数を変えたりしたあと、変わったフレームだけをレンダリングし直す機能です。

  1. パスを編集し、① の[フライトプラン生成]と ② の[.vrscene を書き出し]をやり直します。
  2. [差分レンダリング(変更/追加フレームのみ)]を押します。
  3. 前回のレンダリングと比べた結果(そのまま使う/番号を付け替える/新しくレンダリングする枚数)が表示されるので、確認して実行します。

③ Metashape Pro(アライメント)

項目

項目 内容
Y-up 回転(X−90°) オンにすると、CSV のカメラ位置を X 軸まわりに −90° 回転します。LichtFeld Studio で正立して表示させるための設定です(既定はオン)。
スケール CSV のカメラ位置に掛ける倍率です(既定は 1.0)。
リファレンス CSV 書き出し Metashape の Reference [リファレンス] に読み込む CSV を書き出します(Pro のみ)。

Metashape Pro の手順

  1. Vantage で出力した画像を Metashape に読み込みます。
  2. Camera type [カメラタイプ] を ② のカメラモードに合わせます(Spherical 360 なら Spherical、通常フレームカメラなら Frame)。
  3. File [ファイル] > Import [インポート] > Import Reference [リファレンスのインポート] で CSV を読み込みます。列は label/x/y/z に割り当て(位置のみ。CSV には向きの列もありますが使いません)、座標系は Local Coordinates、精度は 0.005 m に設定します。
  4. Align Photos [写真のアライメント] を実行し、Update Transform [変換を更新] を実行します。
  5. 点群(Tie Points)を、カラー付き・Local Coordinates の .ply で書き出します。
  6. カメラを cameras.xml として書き出します(④ で使います)。

Metashape Standard の場合

Standard では CSV のインポートを使えないため、③ の CSV、Y-up 回転、スケールは使えません。画像をアライメントしたあと、cameras.xml と .ply を書き出して ④ に進んでください。座標系はそのまま整合します。

④ LichtFeld Studio(transforms.json)

項目

項目 内容
Metashape cameras.xml Metashape で書き出したカメラです(推奨)。指定すると、Metashape が推定したカメラ位置で transforms.json を作ります。未指定の場合は、3ds Max のカメラ位置(真値)を使います。
Metashape からの点群 .ply 学習の初期点群として使う .ply です。
写真フォルダ レンダリングした画像のフォルダです。未指定の場合は ② の出力フォルダを使います。
transforms.json 書き出し 保存先を指定して transforms.json を書き出します。画像と点群の場所は、transforms.json からの相対パスで記録します(別のドライブなどで相対パスにできない場合は絶対パス)。

セッション(途中からの再開)

パスの一覧、注視オブジェクト、各ステップの設定はシーンに保存されます。主な操作のたびに自動で保存され、.max ファイルを開き直すと自動で復元されます。

よくある質問

Vantage でカメラが動かない

.vrscene を書き出したときの「レンダリングするビュー」がフライトプランカメラになっていない可能性があります。② の[.vrscene を書き出し]で書き出し直してください。書き出し後の検証メッセージで、カメラのアニメーションが正しく書き出されたかを確認できます。

画像ごとに明るさが違う

Vantage の自動露出がオンになっていると、画像ごとに明るさが変わり、3DGS の学習に悪影響があります。このツールは自動露出をオフにして起動します。[追加オプション]で自動露出を有効にしていないか確認してください。

LichtFeld Studio でシーンが上下逆さまになる

③ の[Y-up 回転]をオンにして、CSV の書き出しからやり直してください。プロジェクトの途中で切り替えると、点群とカメラの向きが合わなくなります。

更新履歴

バージョン 日付 内容
OakCorp Tools 1.1.0 2026-10-06 OakCorp Tools に収録(スクリプト Ver 2026080703)。

著作権

本ソフトウェアの著作権は株式会社オークに帰属します。

Copyright © 2026 株式会社オーク https://oakcorp.net/