Googleは10月7日(現地時間)、Chrome 155~156におけるWebGPUの新機能を同社ブログ内で紹介した。WGSL拡張機能「fragment_depth」、非整列の圧縮テクスチャ、リニア色空間のサポートなどが追加されている。
フラグメントシェーダーで@builtin(frag_depth)に書き込むと、通常はドライバが早期Z最適化を無効にする。fragment_depthでは、@builtin(frag_depth)にlessまたはgreaterの深度モード名を指定できる。これにより、書き込まれた深度と補間された深度の比較方法を明示でき、GPUは早期Z最適化を安全に適用できる。機能検出にはnavigator.gpu.wgslLanguageFeaturesを使用する。
「texture-compression-unaligned」機能では、ブロックサイズの整数倍ではないディメンションの圧縮テクスチャを作成できる。そのため、テクスチャのパディングやスケーリングが不要になる。
キャンバスコンテキストには「srgb-linear」と「display-p3-linear」の色空間が追加された。拡張範囲のリニア色空間へ直接レンダリングでき、広色域ディスプレイに対応する。
そのほか、パックされた32ビットの頂点形式「snorm10-10-10-2」が追加された。また、「shader-f16」機能がLinuxの最近のNVIDIA GPUドライバでサポートされた。Dawnでは、WGPUAdapterPropertiesD3D構造体でDXGIAdapterのLUIDをクエリできるようになった。
- 関連リンク
この記事は参考になりましたか?
- この記事の著者
-
CodeZine編集部(コードジンヘンシュウブ)
CodeZineは、株式会社翔泳社が運営する開発者のための情報メディアです。日々の開発に取り組むエンジニアやテクノロジーを学びたい方に向けて、プログラミングやAI活用、開発ツール、エンジニアの学びとキャリアに関する記事をお届けしています。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
この記事は参考になりましたか?
この記事をシェア
