2026年6月3日(現地時間) – PlayCanvas CEO Will Eastcott氏は、3D Gaussian Splatting編集・共有プラットフォーム「SuperSplat」において、重要なアーキテクチャの刷新となるアップデートを発表しました。
主な新機能
先月の「ソフトウェア・アトリビューション」「コリジョン生成」「GPU駆動のヒストグラム」の実装に続き、今回は新たに高性能なWebGPUレンダラーと、ストリーミング用の自動LOD(Level of Detail)システムが導入されています。
この2つのアップデートにより、モバイル端末からハイエンドなデスクトップPCに至るまで、シーンデータの読み込み時間の短縮と、描画フレームレートの安定化が実現されました。
上記のデモは、Guy Middleton氏がスキャンしたバイエルン鉄道博物館(Lokwelt Freilassing)のシーンです。画面内をクリックまたはタップすることで、シーン内を移動・探索することができます。
コンピュートシェーダーを活用した新WebGPUレンダラー
オープンソースの3Dエンジンである「PlayCanvas Engine バージョン2.19.0」のリリースに伴い、3Dガウシアン・スプラットを描画するためのコンピュートベースWebGPUレンダラーが新たに搭載されました(現在、PlayCanvas Editorにも展開されています)。
これまでの実装では、描画順序を正しく保つための スプラットのソート処理 を CPU(ワーカースレッド)側で実行していましたが、新しい WebGPU レンダラーでは、この負荷の大きい処理をGPUのコンピュートシェーダーに移譲する設計へと移行しています。
カメラに映らないスプラットはカリングによって除外し、残ったスプラットの投影処理から高速な GPU 基数ソート(radix sort)までを、一貫して GPU 上で実行します。最終的なピクセル描画(ラスタライズ)には従来どおり頂点シェーダーとフラグメントシェーダーを使用しますが、事前に投影されたデータを参照する方式へと変わったことで、処理が大幅に軽量化されています。
ベンチマーク結果
このアーキテクチャの変更により、描画フレームレート(fps)が明確に向上しています。公式の測定データから、デスクトップおよびモバイル環境におけるWebGL 2レンダラーとWebGPUレンダラーの比較を以下に紹介します。
| スプラット数 | 1M | 2M | 3M | 4M | 6M | 8M | 10M | 15M | 20M | 25M | 30M | 35M |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| WebGL 2 (fps) | 137.2 | 140.4 | 124.8 | 113.6 | 86.8 | 71.3 | 48.1 | 28.9 | 22.3 | 18.6 | 15.6 | 13.3 |
| WebGPU (fps) | 138.7 | 153.6 | 135.5 | 146.0 | 140.3 | 125.0 | 124.1 | 105.9 | 97.8 | 89.4 | 85.0 | 75.8 |
| 速度向上率 | 1.0× | 1.1× | 1.1× | 1.3× | 1.6× | 1.8× | 2.6× | 3.7× | 4.4× | 4.8× | 5.4× | 5.7× |
| スプラット数 | 1M | 2M | 3M | 4M |
|---|---|---|---|---|
| WebGL 2 (fps) | 38.1 | 35.5 | 25.5 | 20.4 |
| WebGPU (fps) | 77.6 | 73.2 | 52.7 | 42.4 |
| 速度向上率 | 2.0× | 2.1× | 2.1× | 2.1× |
上記の表からわかるように、スプラット数が増加するにつれてWebGPUの恩恵が大きくなる傾向が見られます。
現在、WebGPUはエンドユーザーの約85%の環境で利用可能とされています。なお、WebGPUがサポートされていない環境でSuperSplatを利用する場合、自動的にWebGL 2レンダラーにフォールバックします。両者のレンダリングパイプラインは同一の視覚結果を出力するように設計されているため、ユーザーは設定を変更することなく同じ品質のシーンを閲覧できます。
自動ストリーミングによる待機時間の削減
数千万のスプラットを含むような大規模シーンをウェブ上で扱う場合、データのダウンロード時間が課題となります。SuperSplatでは今回、アップロードされたデータを即座にストリーミング形式へと自動変換する機能が導入されました。この機能はユーザーによるコマンドライン操作などの追加作業は不要です。
変換後のデータは「Streamed SOG」と呼ばれ、PlayCanvas独自開発の高圧縮フォーマット「SOG(Spatially Ordered Gaussians)」をストリーミング向けに拡張したものです。オープンソースのデータ変換ツール「splat-transform」がバックグラウンドで動作し、元データを段階的に間引き(デシメート)して複数のLODを作成します。さらに、それらを細かなチャンク(データブロック)に分割して保存します。
シーンを表示する際、SuperSplat Viewerは以下の手順でデータを読み込みます。
- まず、最もデータサイズの小さい粗いLODをダウンロードし、即座に画面に初期状態のシーンを描画します。
- その後、再生環境(デバイスの性能)に合わせて設定された「ガウシアンの表示予算(budget)」の範囲内で、より詳細なチャンクをバックグラウンドで順次ダウンロードします。
- 取得したデータを用いて、画面上の映像を徐々に洗練(リファイン)させていきます。
この仕組みにより、長いロード画面(プログレスバー)を待つことなく、すぐにシーンの全体像を確認できるようになります。本記事上部の鉄道博物館のデモシーンは、最高品質のLODで約2,400万ガウシアンというモバイル端末のメモリ上限を超える規模ですが、ストリーミング機能によって各デバイスに適切なデータ量のみが読み込まれるため、安定した表示が可能となっています。
このデータ管理機能と新開発のWebGPUレンダラーが組み合わさることで、高いパフォーマンスが維持されています。
リソース
PlayCanvasチームは「Web上の高品質な3Dツールは誰にでも開かれているべきである」という考えのもと、SuperSplatおよび関連ツール群をMITライセンスのオープンソースとして提供しています。独自のガウシアン・スプラット・アプリケーションを開発したい方は、以下のGitHubリポジトリや公式ドキュメントを参照してください。
- PlayCanvas Engine
- SuperSplat Editor
- SuperSplat Viewer
- SplatTransform (データ変換ツール)
- Gaussian Splatting 開発ドキュメント
New in SuperSplat: WebGPU and Streaming Bring Huge Performance Wins























コメント