01 早見表:まず全体像から
まずこの表で8フォーマットの性格をつかんでください。
詳しくは各セクションで解説します。
| フォーマット | 一言でいうと | 拡張子 | 圧縮 | 対応ソフト | 向いている用途 |
|---|---|---|---|---|---|
| PLY | 全部入りの原本。でかい | .ply | 基本は非圧縮 | ほぼ全ツール | ソフト間のやり取り、互換性優先 |
| SPLAT | 初期の簡易版。今は選ばない | .splat | 視点による色変化を捨てて軽量化 | 初期のWebビューアー中心 | 旧ビューアーとの互換用(新規では非推奨) |
| KSPLAT | 特定ビューアーの専用形式 | .ksplat | チャンク分割+独自圧縮 | GaussianSplats3Dのみ | プログレッシブ表示の自前ビューアー |
| SPZ | 配布用の定番圧縮。PLYの1/10 | .spz | 汎用の高圧縮 | Scaniverse、splat-transform、Spark等 | 配布・保存用の汎用コンパクト形式 |
| SOG | 画像圧縮の技で最小クラス | フォルダ+meta.json | 画像圧縮の応用 | PlayCanvas系ツール | Webでの配信・ストリーミング |
| RAD | 巨大シーンの配信専用 | .rad + .radc | 必要な部分だけを分割配信 | Sparkのみ | 超大規模シーンのストリーミング |
| LCC / LCC2 | 都市を丸ごと入れる箱 | .lcc2 + SOG/SPZ | 内部フォーマットに準拠 | XGRIDS SDK、splat-transform(読込) | 都市規模でのLOD切り替え |
| glTF(GLB) | 標準規格版。これからの本命 | .glb / .gltf | SPZ方式の圧縮 | Cesium系、gsbox(対応拡大中) | 標準規格での保存・地理空間配信 |
02 PLY(オリジナル・非圧縮)
3DGSの元論文(Inria)がそのまま出力する、事実上の共通言語です。
1点ごとに位置・大きさ・向き・不透明度に加えて、見る角度によって変わる色までまるごと記録するため、ファイルサイズは全フォーマット中もっとも大きくなります。
そのぶん情報が欠けていないので、あとからどのフォーマットにも変換できます。
| 項目 | 内容 |
|---|---|
| 拡張子 | .ply |
| 圧縮 | 基本は非圧縮(圧縮版のPLYという派生もあり) |
| 対応ソフト | ほぼ全てのDCC・ビューアー・変換ツールが読み込み可能 |
| 向いている用途 | ソフト間でのやり取り、DCCへの取り込み。互換性を最優先したいとき |
実例 ── Inria公式実装の出力そのもので、Polycam・Luma AI・XGRIDS LCC Studioのエクスポートもこのレイアウトを踏襲します。
SuperSplatが直接読み書きするため、編集のハブになるのもPLYです。
03 SPLAT(antimatter15)
初期のWebビューアーsplat(antimatter15)のために作られた、シンプルな形式です。
見る角度による色の変化を捨ててしまうぶん軽く、PLYのおよそ半分のサイズになります。
| 項目 | 内容 |
|---|---|
| 拡張子 | .splat |
| 圧縮 | 情報を削って軽くしただけで、圧縮はかけていない |
| 対応ソフト | 初期のWebビューアー中心。正式な仕様書は無く、慣習で決まっている |
| 向いている用途 | とにかく手早くWebで表示したいとき。視点依存の質感(反射・光沢)は失われる |
04 KSPLAT(mkkellogg/GaussianSplats3D)
Three.jsライブラリGaussianSplats3D専用の圧縮フォーマットです。
データをチャンク単位に分割し、届いたチャンクから順に描画するプログレッシブストリーミングを前提に設計されています。
大きなシーンでも、ほとんど待たずに最初の絵を出せます。
| 項目 | 内容 |
|---|---|
| 拡張子 | .ksplat |
| 圧縮 | チャンク分割+圧縮の強さを選べる |
| 対応ソフト | GaussianSplats3Dのみ(専用フォーマット)。PLY/SPLATからの変換ツールが同梱される |
| 向いている用途 | GaussianSplats3Dベースの自前ビューアーで、大きいシーンを段階的に表示したいとき |
05 SPZ(Niantic Spatial)
Niantic Spatial(Scaniverse)が開発した圧縮フォーマットで、業界標準になりつつあります。
glTFのKHR_gaussian_splatting圧縮拡張(09)の圧縮方式にも採用されました。
改良が重ねられており、最新版は読み込みが速く、ファイル全体を展開しなくても中身の規模を確認できます。
単一ファイルで扱えるので、相手の環境がわからないときの受け渡しに向きます。
| 項目 | 内容 |
|---|---|
| 拡張子 | .spz |
| 圧縮 | 汎用の高圧縮(PLY比でおよそ1/10) |
| 対応ソフト | Scaniverse、splat-transform、Spark、UnityGaussianSplatting、3ds Max 2027など幅広く対応 |
| 向いている用途 | 配布・保存用の汎用コンパクト形式として。今後の事実上のデファクトスタンダード候補 |
実例 ── ScaniverseアプリのエクスポートがSPZで、NianticがMITライセンスでOSS化しています(nianticlabs/spz)。
公称でPLY比およそ1/10に縮みます。
06 SOG(PlayCanvas)
PlayCanvasが開発した、「Gaussian Splatting版のWebP」と呼ばれるフォーマットです。
データを画像として圧縮する仕組みを応用しており、同じシーンでも桁違いに小さくなり、主要フォーマットの中では最小クラスです。
ただし単一ファイルではなくフォルダ一式で扱うため、受け渡しのときはまとめ方に注意してください。
| 項目 | 内容 |
|---|---|
| 拡張子 | フォルダ+meta.json(単一ファイルではない) |
| 圧縮 | 画像圧縮の応用。主要フォーマットで最小クラス |
| 対応ソフト | SuperSplat、splat-transform、SparkなどPlayCanvas系ツール |
| 向いている用途 | ブラウザでの配信・ストリーミング。ファイルサイズを最優先したいとき |
全ファイルをZIPにまとめた単一ファイルの.sogも用意されています。
仕様はPlayCanvas公式ドキュメントで公開されています。
07 RAD(Spark)
Three.js向けレンダラーSparkが追加した、粗さの異なる複数の版をまとめて保存できるストリーミング専用フォーマットです。
あらかじめ粗い版から細かい版までを作って保存しておき、閲覧時は必要な部分だけを取り寄せます。
粗い版を一瞬で表示し、視点の移動に応じて細部を追加で読み込む設計です。
ロケハン3Dの自社ビューアーも、このRADフォーマットを軸にした独自の並列デコード・LOD制御を組み込んでいます。
| 項目 | 内容 |
|---|---|
| 拡張子 | .rad(見出し)+ .radc(データ本体) |
| 圧縮 | 必要な部分だけを分割して配信する仕組み |
| 対応ソフト | Spark。他ツールへの対応は今のところ限定的 |
| 向いている用途 | GPUメモリに収まりきらないほど巨大なシーンを、ストリーミング表示したいとき |
実例 ── 当社ビューアーでは1GB近い巨大なRADでも、数秒で最初の絵を出せています(以降の視点移動は待ちなしです)。
ただしフォーマットの一次情報はSparkのドキュメントとソースコードのみで、SPZやSOGのような独立した仕様書はまだありません。
08 LCC / LCC2(XGRIDS)
XGRIDSが開発した、都市規模のシーンをLOD(詳細度)付きで扱うためのコンテナフォーマットです。
単一のファイルではなく、LOD情報を持つメタデータと、実データを格納するフォルダで構成されます。
実データの中身はSOGかSPZです。
PortalCamのスキャンでも、LCC Studioの書き出しにこの形式のフォルダが含まれています。
| 項目 | 内容 |
|---|---|
| 拡張子 | .lcc2(メタ)+ 中身はSOGまたはSPZ |
| 圧縮 | 中身で使うSOG/SPZに準拠 |
| 対応ソフト | XGRIDS純正SDK(UE5/Unity/Web)、splat-transform(読み込みのみ)、SuperSplat、3ds Max 2027(読み込み) |
| 向いている用途 | 都市1エリア丸ごとなど大規模シーンで、カメラ距離に応じたLOD切り替えをしたいとき |
09 glTF(KHR_gaussian_splatting)
Khronosが標準化を進めている、glTF/GLBに3DGSを格納するための公式拡張です。
リリース候補が公開され、正式承認に向けた最終段階にあります。
圧縮にはNiantic Spatialが寄贈したSPZ方式を使います。
最大の意義は、専用フォーマットの乱立からglTFという汎用3D標準の上に乗る流れができたことです。
Cesiumはこれを採用して3D TilesのLODストリーミングに対応し、都市スケールの3DGSを地理座標付きで配信できるようになりました。
gsboxなどの変換ツールもPLY⇄GLBに対応しています。
| 項目 | 内容 |
|---|---|
| 拡張子 | .glb / .gltf(KHR_gaussian_splatting拡張) |
| 圧縮 | SPZ方式の圧縮 |
| 対応ソフト | CesiumJS、Cesium for Unreal、Cesium ion、gsbox。策定中のため対応は拡大中 |
| 向いている用途 | 標準規格での長期保存・配布。3D Tilesと組み合わせた都市スケールの地理空間配信 |
3DGSに対応していないビューアーでも点群として表示できる仕組みが用意されているのは、標準規格らしい設計です。
仕様はKhronosのglTFリポジトリで読めます。
10 結局どれを選べばいいか
先に大原則をひとつ。
SPZ・SOG・KSPLATなどの圧縮フォーマットは情報を削って軽くしているため、一度圧縮したデータから元の品質は戻せません。
そのため、配信用にどのフォーマットを選ぶ場合でも、学習直後のPLYをマスターとして保管し、そこから用途別に派生させる運用にします。
フォーマット選びは「マスターをどれにするか」ではなく「配信・受け渡しをどれでやるか」の問題です。
そのうえで、用途ごとの目安です。
3DGSを扱えるソフト・ツール比較もあわせて、「どのソフトでどのフォーマットを使うか」を決めてください。
- 他のDCCソフト(Houdini/Blenderなど)に渡す ── PLY。3ds MaxのようにSPZを直接読める環境も増えましたが、確実に全ツールで開けるのは今もPLYだけです
- Webで公開・共有したい ── 使うビューアー側の対応で決めます。SuperSplat・SparkなどPlayCanvas系で表示するならSOG(圧縮率最優先・ただしフォルダ構成)、単一ファイルで配りたい・相手の環境が読めないならSPZが無難です
- 都市規模のシーンでLODを切り替えたい ── XGRIDSのSDK(UE5/Unity)で使うならLCC2、標準規格でGIS・地理座標と組み合わせるならCesiumの3D Tiles+glTF(09)です。LCC2は独自ライセンスの確認を忘れずに
- GPUメモリに収まりきらないほど巨大なシーンをストリーミングしたい ── RAD。Spark専用ですが、粗い版から細かい版までをまとめて分割配信できるのは現状これだけです
- GaussianSplats3Dで自前ビューアーを組む ── KSPLAT。プログレッシブ表示の恩恵を受けられます
- 標準規格で長期保存・配布したい ── glTF(KHR_gaussian_splatting)が本命ですが、まだ策定の最終段階です。現時点のアーカイブはPLYマスター+圧縮派生の2本持ちが確実です
なおSPLATを今から新規に選ぶ理由はほぼありません。
正式な仕様書がなく、見る角度による色の変化も失われるため、「手早く試したいだけ」の用途も、PLYをそのまま読めるSuperSplat等に投げるほうが早くて確実です。
フォーマット間の変換は、splat-transformでほぼ一括してカバーできます。
フォーマットを気にせず巨大な3DGSデータを扱いたいなら
ロケハン3Dの自社ビューアーは、SOG・SPZを含む主要フォーマットに対応したSparkをベースに、オフライン・ブラウザだけで巨大な3DGSデータを扱えるよう開発しています。
ダウンロードや会員登録なしでサンプルシーンを試せます。

