Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【ITニュース解説】Three.js Gaussian Splats: Gaussian-Splat-Lite, Spark and Radix on One Desktop

2026年11月04日に「Dev.to」が公開したITニュース「Three.js Gaussian Splats: Gaussian-Splat-Lite, Spark and Radix on One Desktop」について初心者にもわかりやすく解説しています。

作成日: 更新日:

ITニュース概要

Three.jsベースのGaussian Splattingレンダラー「Gaussian-Splat-Lite」「Spark」「Radix」を比較した。合成データで初期ロード時間と描画速度を測定した結果、Sparkは初期ロードが速いが、描画速度は全レンダラーでほぼ同等だった。WebGPUとWebGL2のパスで各レンダラーの動作を検証した。

ITニュース解説

このニュース記事では、Webブラウザ上でリアルな3Dグラフィックスを表示するための新しい技術である「Gaussian Splats(ガウシアンスプラット)」の異なる実装について、その性能を比較検証している。Gaussian Splatsは、従来の3Dモデルがポリゴン(小さな多角形)の集まりで構成されるのに対し、多数の小さな「点」(スプラット)の集まりで3Dオブジェクトやシーンを表現する技術だ。これらの点は色や透明度、形状といった情報を持つことで、非常に詳細でフォトリアルな表現を可能にする。特に、現実世界の風景をスキャンしたデータを3D空間で表示する際に、高速かつ高品質なレンダリングが期待されている。

比較対象となっているのは、「Gaussian-Splat-Lite」、「Spark」、「Radix」という三つのGaussian Splats実装だ。これらはすべて、Webブラウザで3Dグラフィックスを描画するためのJavaScriptライブラリである「Three.js」を基盤として、またはそれと連携して動作するように作られている。Three.jsは、HTMLやCSS、JavaScriptの知識があれば誰でも手軽にWeb上で3Dコンテンツを作成できる便利なツールであり、多くのWeb開発者に利用されている。

今回の検証の目的は、これらの異なる実装が、Webブラウザ上でどれだけ効率的にGaussian Splatsデータを表示できるか、特に「初回描画までの時間」と「アニメーション中の表示の滑らかさ」という二つの側面から評価することだ。

テストは、NVIDIA RTX 5070 Tiという高性能なグラフィックカードを搭載したデスクトップPC上で行われた。グラフィックスの描画には、WebブラウザからGPU(グラフィック処理装置)の能力を利用するための二つのAPI、すなわち新しい技術である「WebGPU」と、広く普及している「WebGL2」が使われた。テストには、50万個と200万個のGaussian Splatsを含む、合成された花の庭の3Dデータファイルが用いられ、各実装がこのデータをどれだけ速く、滑らかに表示できるかが測定された。ブラウザはChromeの特定バージョンを使用し、アンチエイリアシング(ギザギザを目立たなくする処理)は無効にされた状態で、安定した測定のため事前にウォームアップを行った後、一定時間のアニメーション中の描画間隔が記録された。

測定された主な指標は二つある。一つは「0.5M/2M first wait (ms)」で、これは50万個または200万個のスプラットを含むシーンが、データ読み込みから最初の描画が完了するまでに要した時間(ミリ秒)を示している。この値が小さいほど、ユーザーは素早く3Dコンテンツを目にすることができる。もう一つは「0.5M/2M warm p95 (ms)」で、これはアニメーション中のフレーム描画時間の95パーセンタイル値(ミリ秒)だ。アニメーションが秒間60フレーム(60Hz)で表示される場合、1フレームあたりの理想的な描画時間は約16.7ミリ秒となる。この値が16.7ミリ秒に近いほど、アニメーションがユーザーにとって滑らかに見えることを意味する。

テスト結果を見ると、「first wait」においては、SparkのWebGL2実装が50万個、200万個の両方のスプラット数で最も速い初回描画時間を示した。特に200万個のスプラットでは、他の実装に比べて顕著に高速であった。Gaussian-Splat-LiteのWebGL2実装も比較的良好な結果を出している。一方で、RadixのWebGPU実装は他の実装と比べて初回描画に時間がかかる傾向が見られた。これは、WebGPUが比較的新しい技術であるため、まだ最適化の余地がある可能性を示唆している。

しかし、「warm p95」の測定結果では、全てのグループでほぼ16.7ミリ秒という値が得られた。これは、どの実装もアニメーション中に非常にスムーズな60Hzの表示を達成できたことを示している。言い換えれば、今回のテスト条件では、GPUの描画能力が十分に余裕を持っていたため、アニメーションの滑らかさという点では実装間の大きな差は現れなかったということだ。記事では、この結果だけではGPUのスループット(処理能力)の順位を付けることはできないと述べており、さらに高い負荷をかけたテストでは異なる結果になる可能性も示唆している。

今回の検証は、あくまで特定の設定とデータにおけるパフォーマンスの比較であり、Gaussian Splatsの実装が異なるソート(描画順序)やGPUへのデータアップロード方法を持っていることによる影響を評価している。このテストでは、GPUが実際にどれくらいの処理時間を使ったか、VRAM(グラフィックメモリ)をどれだけ消費したか、ソート処理にどれくらいの遅延があったか、あるいはピクセル単位の描画精度といった点は測定されていない。また、巨大な3Dデータを少しずつ読み込みながら表示するようなデータストリーミングの性能についても、今回は評価の対象外となっている。これらの要素は、実際のアプリケーション開発において非常に重要であり、今後の検証でさらに深く掘り下げられるべき点と言える。

関連コンテンツ

関連IT用語

関連ITニュース