TechFeed Conference 2022 Pick up

最近のWeb3Dひとめぐり~TechFeed Conference 2022講演より

本記事は、2022年5月に開催されたTechFeed Conference 2022のセッション書き起こし記事「最近のWeb3Dひとめぐり(emadurandal⁠⁠ — TechFeed Conference 2022講演より」を転載したものです。オリジナルはTechFeedをご覧ください。

「最近のWeb3Dひとめぐり」と題しまして、emadurandalが発表させていただきます。

私は2015年ごろに初めてWebGLに触れて、それ以来、3Dライブラリ開発を行っています。現在はRhodoniteというライブラリを開発しており、同時にWeb3Dの情報を発信しています。

また、株式会社HIKKYにて、WebGLベースのメタバースプラットフォーム開発に従事しています。こちらは私のRhodoniteではなく、妹尾雄大さんを中心としたVketCloudエンジンを使って開発しています。これはC++によるネイティブ技術ベースのWebGLエンジンという、非常に珍しいものになっています。

今回は、WebGL、WebGPU、WebXR、そしてglTFの4つについてご紹介します。

今回解説する4つのトレンド
今回解説する4つのトレンド

WebGL ―WebGL2が標準的になり、一部では拡張機能も極めるプレーヤーが?

最初はWebGLです。

WebGL2が標準的な環境になってきました。これはSafariがサポートを始めたことによるもので、環境全体がWebGL2に底上げされました。これによって、ビット演算、アンチエイリアシング、3Dテクスチャ、インスタンス描画といった高速な描画系の関数が使えるようになりました。

標準となるWebGL
標準となるWebGL

そして、Three.jsやBabylon.jsといった定番のライブラリが、WebGL2にある拡張命令にぞくぞく対応しています。これによって、より高速にメッシュを描画できるようになったり、より多彩な表現ができるようになっています。

高速なメッシュ描画や描画バッシュごとの細かい制御など、ライブラリによるWebGL拡張が進んでいる
高速なメッシュ描画や描画バッシュごとの細かい制御など、ライブラリによるWebGL拡張が進んでいる

これがWebGLの現在の状況です。

WebGPU ―WebGL2の次にくるWeb3D API規格

そして次はWebGPUです。こちらはWebGLのさらに次に来る、Web3DのAPI規格になります。

特徴としてコンピュートシェーダーがあり、シェーダー計算で今まで以上にCPUに近い汎用計算ができるようになっています。そしてWebGL時代よりも、より新しいGPUの機能を引き出すことができます。さらに、より軽快に動作するといった特徴があります。今年の秋以降に1.0が来るのではないかと言われています。さらに最近では、ネイティブ向けにもWebGPUが実装されているという情報があります。

WebGPUの最大の特徴であるコンピュートシェーダーにより、より汎用的な計算が可能に
WebGPUの最大の特徴であるコンピュートシェーダーにより、より汎用的な計算が可能に

WebXR ―近づく1.0正式版と続々と策定される拡張仕様たち

次にWebXRです。

もう少しで1.0、正式版が来ます。こちらはApple、Google、OculusといったVR/ARの先駆者たちが提供している仕様のうち、最大公約数的な仕様が遅れて搭載されています。図中に挙げた各拡張がWebXRにぞくぞく搭載され、できることがどんどん増えています。

正式版までまもなくのWebXRはできることがどんどん増えている
正式版までまもなくのWebXRはできることがどんどん増えている

glTF ―普及に大成功したglTF 2.0、強化され続ける拡張仕様、派生フォーマットも登場

次にglTFです。こちらはWebの世界で、初めて普及に成功した3Dフォーマットです。

最近ではPBR(Physical Based Rendering:物理ベースレンダリング)向けの拡張が多く登場しています。PBR Next 1として、clearcoat、sheen、transmissionという3つの拡張を混ぜていました。clearcoatというのは、車体の艶っぽい部分です。そしてsheenというのは、ベルベットの布のようなケバだった反射、transmissionは窓の部分の透過の表現です。

3Dフォーマットしてはじめて普及に成功したgITF ―クリアコート(clearcoat)、ベルベットのような布表現(sheen)、透過表現(transmission)など高度な物理ベースのレンダリングを実現(画像出典: The Khronos Group
3Dフォーマットしてはじめて普及に成功したgITF ―クリアコート(clearcoat)、ベルベットのような布表現(sheen)、透過表現(transmission)など高度な物理ベースのレンダリングを実現

それだけではなくPBR Next 2という、3つの拡張がさらに出ました。これらの拡張も駆使すると、以下の図にあるような実写と見紛うような表現ができるようになります。

PBR Next 2では実写と見紛うような表現が可能になる(画像出典: The Khronos Group
PBR Next 2では実写と見紛うような表現が可能になる

さらに現在は、glTFをベースにした新しいフォーマットも誕生しています。

そのひとつが3D Tilesで、Cesiumというライブラリを開発しているCesium社が発表したフォーマットです。これはGoogle Earthのような地理空間を3D表現するときに用いられるフォーマットです。ここのスクリーンショットに見える建物も、ひとつひとつがglTFファイルになっています。各建物を構成する大量のglTFファイルを、メタファイルがまとめるような形になっています。これによって、非常に大きな地球レベルの地理情報を扱える3Dフォーマットになっています。

もうひとつはVRMというもので、こちらはもうご存知の方も多いですよね。ほぼデファクトになりつつあるアバター用の3Dフォーマットです。こちらも実はglTF 2.0ベースです。

3D TilesとVRMはgITFをベースにした新しいフォーマット(画像出典: Cesium GS / VRM Consortium
3D TilesとVRMはgITFをベースにした新しいフォーマット

このようにWeb3D向けに数多くの拡張が登場しました。これにより、ネイティブに近いリッチ表現が今後ますます可能になると思われます。

ご清聴ありがとうございました。

おすすめ記事

記事・ニュース一覧