Web向け3DGSレンダラ6種を実測比較、手順とコードをMITで公開
Spark、PlayCanvas、SuperSplat Viewer、Radixなど6種(9バックエンド)を、1400万スプラット級のPLYで比べたベンチマークが公開されました。再現用ハーネスと、自分のモデルで試せるブラウザ版ラボも付属します。
この記事はAIが作成し、人による事前の確認を経ずに自動で公開しています。
- 発表日
- 2026.09.24(現地)
- 用途
- 研究・制作・インフラ
- 出典
- 3件(en)(うち一次情報 3件)
要点
- Spark、Radix、PlayCanvas Engine、SuperSplat Viewer、Gaussian Splat Lite、Aholo Viewerを、WebGL2/WebGPUの計9バックエンドで測定
- 最大約1447万スプラットのPLY(SH3)を原寸のまま、3024×1964ピクセルで描画して計測
- コードはMIT。PLY/SPZを端末内で試すラボと、結果のJSON/CSVも公開
何が起きたか
READMEによると、各モデル×バックエンドを独立3回測定し、計81回・432の性能グループになります。指標はFPSとフレーム間隔のP50/P95で、メモリやソート遅延も別途定義されています。サイトでは、深度ソートありの描画と、ソートなしに近い確率的(stochastic)描画を別々に順位付けしています。サイトからは要約JSONと表CSVも取得できます。
仕組みと中身
自分のデータで試すラボ(/test/)では、PLYまたはSPZをドロップするか、CORS許可済みのURLを指定します。ファイルは端末内で処理され、SPZはローカルでPLYに変換されます。解像度(720p〜4K)、ラウンド数、計測秒数、カメラを選べ、結果はJSONやPDFで書き出せます。
数字で見る
| 対象レンダラ | Spark 2.4.0 / Radix 0.0.1 / PlayCanvas 2.24.0-beta.30 / SuperSplat Viewer 1.42.0 / Gaussian Splat Lite 1.6.2 / Aholo Viewer |
|---|---|
| 入力(スプラット数) | Elevator 2,796,503 / HotelFareza 12,202,010 / WillaGlobalPoland 14,469,103 |
| 描画条件 | 3024×1964px、垂直FOV 45°、near 0.1、far 3000、SH3、LODなし |
| 測定機材 | MacBook Pro 14、Apple M5 Pro(GPU 16コア)、48GiB、macOS 26.7、Chrome 156 |
| 測定回数 | モデル×バックエンドごとに独立3回(81回、432グループ) |
| Three.js | Gaussian Splat LiteとSparkはr187、Radixはr186(WebGPU側がr187と非互換のため) |
| ライセンス | ベンチマークコードはMIT(各レンダラは元のライセンス) |
実務への影響
ソートキーの精度や非同期ソートの遅れが、見た目に影響し得ることが明示されています。近接したスプラットが同じキーを共有すると、アルファブレンドの結果が変わり得ると記載されています。FPSだけでなく画質面の確認も必要になります。
試すには
- GitHubのREADMEに沿ってnpm ciとnpm run devを実行し、ローカルで/test/を開く
- 手元のPLYまたはSPZを読み込み、解像度・ラウンド数・サンプル時間を決める
- 静止とオービットの両方を実行し、FPSとP50/P95を確認してJSON/PDFで保存する
- 同じモデル・カメラ・物理解像度・ブラウザ設定で比べる。READMEもこれらを揃えるよう注意している
注意点・未確認のこと
- 結果は1台のMac(Apple M5 Pro、Chrome 156)での値です。Windows/NVIDIA、モバイル、他ブラウザでの順位は材料からは確認できません。
- PlayCanvasとSuperSplat ViewerのWebGPUソートは「このApple GPUでは4ビットradix」とされており、GPUによって変わり得ます。
- ページは、実装ごとにパイプラインや有効スプラット数が異なり、同一入力でのアルゴリズム比較ではないと明記しています。
- 画像比較のMAE/PSNRは、各バックエンド自身のソート済み画像との差です。画質の優劣を示す指標ではないとされています。
- Aholo ViewerはWebGL2のみです(npmパッケージに公開WebGPUレンダラがないため)。確率的描画はPlayCanvas WebGPUとGaussian Splat Lite両バックエンドだけが対象です。
- ベンチ側の記述に不一致があります。READMEには「Eight backends」と「nine backends」が混在し、冒頭の比較対象リストにAholo Viewerがありません。GitHubリリースv1.0.0の説明は「24回・180グループ」で、READMEの「81回・432グループ」と異なります。どれが最新かは材料から確認できません。
- GitHubのリポジトリは公開時点でスター数4と小規模で、第三者による再現・検証の有無は材料からは確認できません。
- 個別のFPS値や順位は材料に含まれておらず、本記事では優劣を述べていません。
用語
- 3D Gaussian Splatting(3DGS)
- シーンを多数の楕円形ガウス分布(スプラット)で表し、高速に描画する3D表現。
- スプラットのソート
- 透明度合成のため、描画前にスプラットを視点から遠い順または近い順に並べる処理。
- radixソート
- キーを桁(ビット)ごとに分けて並べる整数ソート。GPUでもWorkerでも使われる。
- 確率的(stochastic)描画
- ソートの代わりに確率的なサンプリングで透明度を扱う方式。ノイズが出るため、後処理で補うことが多い。
- WebGPU / WebGL2
- ブラウザからGPUを使うAPI。WebGPUは新しく、計算シェーダを扱える。
- SH3
- 球面調和関数3次で、見る角度による色の変化を表す係数。データ量が増える。
- P50/P95
- フレーム間隔の中央値と、遅い側5%の境目。後者はカクつきの目安になる。
出典
一次情報(発表元・論文・リポジトリ)
- 3DGS Renderer Bench · Retina3dgs-renderer-bench.vercel.app(3dgs-renderer-bench.vercel.app)・en
- 3DGS Renderer Bench(ブラウザラボ)3dgs-renderer-bench.vercel.app(3dgs-renderer-bench.vercel.app)・en
- WilliamLiu-1997/3dgs-renderer-benchGitHub(github.com)・en
きっかけになったXのポスト
- @lyzzz97 のポストをXで見るx.com
この記事は、AIが出典(一次情報)をもとに日本語で作成し、人による事前の確認を経ずに、出典との照合などの自動の検査を通ったものを公開しています(AIの利用について)。数値や仕様は発表元の情報で、当社が独自に検証したものではありません。詳しくは原典をご確認ください。誤りのご指摘はお問い合わせからお願いします。確認のうえ速やかに訂正します。
運営会社のサービス3DGS Universal Viewer(3Dasset.io)(株式会社IZUTSUYA)