0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

各ブラウザにおける WebGL 対応状況(2025年12月時点)

Posted at

この記事はグラフィックス全般 Advent Calendar 2025(※)の7日目の記事です。

はじめに

この記事は各ブラウザにおける WebGL 対応状況の調査結果(2025年12月時点)になります。

今回の調査対象

WebGL の対応状況については、以下のサイトにて確認を行いました。

■ WebGL Report
https://webglreport.com/

テスト環境一覧

OS とブラウザ バージョン GPU
Windows 11 バージョン24H2 + Edge 143 143.0.3650.96 GeForce RTX 2060
Windows 11 バージョン24H2 + Chrome 143 143.0.7499.170 GeForce RTX 2060
Windows 11 バージョン24H2 + Firefox 146 146.0.1 GeForce RTX 2060
macOS 14.8.2 + Safari 605.1.15 UHD Graphics 617
iOS 26.1 + Safari 605.1.15 Apple A11
iPadOS 26.1 + Safari 605.1.15 Apple A12Z

※ Chrome 101 以降はユーザーエージェントのマイナーバージョンが非表示となっている為、Edge/Chrome のバージョン情報はヘルプメニューにて調査しています。

WebGL 1.0 の対応状況

項目 Edge 143 Chrome 143 Firefox 146 macOS 14.8 iOS 26.1 iPadOS 26.1
Vendor WebKit WebKit Mozilla WebKit WebKit WebKit
Renderer WebKit WebGL WebKit WebGL Mozilla WebKit WebGL WebKit WebGL WebKit WebGL
GL Version WebGL 1.0 WebGL 1.0 WebGL 1.0 WebGL 1.0 WebGL 1.0 WebGL 1.0
Shading Language Version WebGL GLSL ES 1.0 WebGL GLSL ES 1.0 WebGL GLSL ES 1.0 WebGL GLSL ES 1.0 WebGL GLSL ES 1.0 WebGL GLSL ES 1.0
WebGL Extensions 35個 35個 27個(28個) 34個 32個 32個

※ カッコ内の個数はドラフト機能を有効化した場合の個数です。

WebGL Extensions 項目 Edge 143 Chrome 143 Firefox 146 macOS 14.8 iOS 26.1 iPadOS 26.1
ANGLE_instanced_arrays
EXT_blend_minmax
EXT_clip_control
EXT_color_buffer_half_float
EXT_depth_clamp
EXT_disjoint_timer_query
EXT_float_blend - -
EXT_frag_depth
EXT_polygon_offset_clamp
EXT_shader_texture_lod
EXT_sRGB
EXT_texture_compression_bptc
EXT_texture_compression_rgtc
EXT_texture_filter_anisotropic
EXT_texture_mirror_clamp_to_edge
KHR_parallel_shader_compile
OES_element_index_uint
OES_fbo_render_mipmap
OES_standard_derivatives
OES_texture_float
OES_texture_float_linear
OES_texture_half_float
OES_texture_half_float_linear
OES_vertex_array_object
WEBGL_blend_func_extended
WEBGL_color_buffer_float
WEBGL_compressed_texture_astc
WEBGL_compressed_texture_etc
WEBGL_compressed_texture_etc1
WEBGL_compressed_texture_pvrtc
WEBGL_compressed_texture_s3tc
WEBGL_compressed_texture_s3tc_srgb
WEBGL_debug_renderer_info
WEBGL_debug_shaders
WEBGL_depth_texture
WEBGL_draw_buffers
WEBGL_explicit_present [○]
WEBGL_lose_context
WEBGL_multi_draw
WEBGL_polygon_mode
WEBGL_provoking_vertex
WEBGL_video_texture
WEBGL_webcodecs_video_frame

※ 「○」はベンダー接頭辞「なし」、「△」はベンダー接頭辞「あり」を表しています。また、ドラフト機能は「[○]」としています。

WebGL 2.0 の対応状況

項目 Edge 143 Chrome 143 Firefox 146 macOS 14.8 iOS 26.1 iPadOS 26.1
Vendor WebKit WebKit Mozilla WebKit WebKit WebKit
Renderer WebKit WebGL WebKit WebGL Mozilla WebKit WebGL WebKit WebGL WebKit WebGL
GL Version WebGL 2.0 WebGL 2.0 WebGL 2.0 WebGL 2.0 WebGL 2.0 WebGL 2.0
Shading Language Version WebGL GLSL ES 3.0 WebGL GLSL ES 3.0 WebGL GLSL ES 3.0 WebGL GLSL ES 3.0 WebGL GLSL ES 3.0 WebGL GLSL ES 3.0
WebGL Extensions 33個(35個) 33個(35個) 14個(15個) 30個(32個) 30個(32個) 30個(32個)

※ カッコ内の個数はドラフト機能を有効化した場合の個数です。

WebGL 2.0 Extensions 項目 Edge 143 Chrome 143 Firefox 146 macOS 14.8 iOS 26.1 iPadOS 26.1
EXT_clip_control -
EXT_color_buffer_float
EXT_color_buffer_half_float -
EXT_conservative_depth -
EXT_depth_clamp -
EXT_disjoint_timer_query_webgl2 - - -
EXT_float_blend - -
EXT_polygon_offset_clamp -
EXT_render_snorm -
EXT_texture_compression_bptc - -
EXT_texture_compression_rgtc - -
EXT_texture_filter_anisotropic
EXT_texture_mirror_clamp_to_edge -
EXT_texture_norm16 -
KHR_parallel_shader_compile
NV_shader_noperspective_interpolation -
OES_draw_buffers_indexed
OES_sample_variables -
OES_shader_multisample_interpolation -
OES_texture_float - - - - - -
OES_texture_float_linear - -
OES_texture_half_float - - - - - -
OES_texture_half_float_linear - - - - - -
OVR_multiview2 - - -
WEBGL_blend_func_extended -
WEBGL_clip_cull_distance -
WEBGL_compressed_texture_astc - - - -
WEBGL_compressed_texture_etc - - - -
WEBGL_compressed_texture_etc1 - - - -
WEBGL_compressed_texture_pvrtc - - - -
WEBGL_compressed_texture_s3tc - -
WEBGL_compressed_texture_s3tc_srgb - -
WEBGL_debug_renderer_info
WEBGL_debug_shaders
WEBGL_depth_texture - - - - - -
WEBGL_draw_instanced_base_vertex_base_instance [○] [○] [○] (New) [○] (New) [○] (New)
WEBGL_explicit_present - - [○] - - -
WEBGL_lose_context
WEBGL_multi_draw -
WEBGL_multi_draw_instanced_base_vertex_base_instance [○] [○] - [○] (New) [○] (New) [○] (New)
WEBGL_polygon_mode -
WEBGL_provoking_vertex
WEBGL_shader_pixel_local_storage - - - -
WEBGL_render_shared_exponent - (Delete) - (Delete) - - (Delete)
WEBGL_stencil_texturing ○ (New) ○ (New) - ○ (New)
WEBGL_video_texture - - - - - -
WEBGL_webcodecs_video_frame - - - - - -

※ 「○」はベンダー接頭辞「なし」、「△」はベンダー接頭辞「あり」を表しています。また、ドラフト機能は「[○]」としています。

まとめ

WebGLの動向は仕様策定元のKhronos Groupsにより定期的にオンラインミートアップが開かれ資料が公開されています。
資料より主な更新内容について抜き出してみました。

■ WebGL & WebGPU BOF / SIGGRAPH 2025, Vancouver, August 13
https://khr.io/web25

WebGLアップデート

  • ANGLE の Metal バックエンドは、正しさ(互換性)と性能を高めるための作業が引き続き進行中
    • Firefox は macOS で ANGLE/Metal へ切り替えることを検討中
  • Chrome では、正しさ(互換性)と機能のために、あらゆる環境で ANGLE を使うための作業を継続中
    • Android でも最終的に ANGLE へ切り替えるため、最近は性能改善の作業が進められている
  • Pixel Local Storage 拡張は進展中
    • 拡張の仕様の形(設計)について、全ブラウザベンダー間で合意ができた
    • 最近、整理(クリーンアップ)とリファクタリングを実施
    • 残る修正は 2 つ(1つは検証まわり、もう1つは non-coherent 向け)で、それが終わればリリース可能
  • BaseVertex / BaseInstance 拡張を出荷(リリース)することについて、ブラウザベンダー間で合意
    • バグ修正の後にリリース可能になる

■ WebGL + WebGPU Meetup / GDC 2025, March 19, 2025
https://khr.io/web202503

ANGLE / Metal の進捗

  • ANGLE の Metal バックエンドの作業は現在も継続中です。
    • macOS/iOS における WebKit の WebGL 実装で使われており、近いうちに macOS の Chromium 側でも使われる予定です。
  • Chrome では Apple Silicon / Intel Mac の両方で提供(出荷)済みです。
    • 古い Intel Mac へも対応範囲を広げることを目指しています。
  • OpenGL バックエンドと比べると、まだいくつか問題点や性能・挙動の後退(リグレッション)があります。
    • それらについても引き続き改善作業を進めています。

Pixel Local Storage

  • 作業は最近再開されました(数か月間いったん中断していました)。
  • セマンティクス(仕様上の意味づけ・挙動定義)が大きく前進し、いまは使いやすくなりました。allowlist(許可リスト)も不要になりました。
  • 数週間以内に WebGL ワーキンググループ(WG)が承認できる状態に整えたい、という見込みです。

おわりに

今年も WebGL Report を中心に、主要ブラウザの WebGL 対応状況を定点観測しました。
基本的にメンテナンスフェーズである為、目新しいトピックは無かったように思います。
少し気になったのは「WebGL-on-WebGPU」というワードです。
資料では、ブラウザのWebGL実装で広く使われている ANGLE が、WebGPU のネイティブ実装(例:Dawn)をバックエンドとして利用する(ANGLE-on-Dawn)可能性が紹介されていました。性能面というよりセキュリティ観点での取り組みのようです。興味深いですね。

https://github.com/google/angle?#platform-support-via-backing-renderers
image.png

その他、参考情報

■ サンプルで理解するWebGL 2.0 - WebGL 2.0の利点とは
https://ics.media/entry/16060/
■ WebGL 開発支援サイト | WebGL2
https://wgld.org/d/webgl2/
■ Subterranean Flower | WebGL2入門 基礎編
https://sbfl.net/blog/2016/09/04/webgl2-tutorial-basics/
■ WebGL2Fundamentals | WebGL2の基本
https://webgl2fundamentals.org/webgl/lessons/ja/
■ WebGL2Fundamentals | WebGL2の新機能
https://webgl2fundamentals.org/webgl/lessons/ja/webgl2-whats-new.html
■ WebGL2Fundamentals | WebGL1からWebGL2への移行
https://webgl2fundamentals.org/webgl/lessons/ja/webgl1-to-webgl2.html
■ WebGL 2.0の概要 - Qiita
https://qiita.com/emadurandal/items/4c7bd2a26ef2d732d734
■ 初めてのWebGL 2 第2版 - JavaScriptで開発するリアルタイム3Dアプリケーション
https://www.amazon.co.jp/dp/4873119375/

過去の調査結果

各ブラウザにおける WebGL 対応状況(2024年12月時点)
各ブラウザにおける WebGL 対応状況(2023年12月時点)
各ブラウザにおける WebGL 対応状況(2022年12月時点)
各ブラウザにおける WebGL 対応状況(2021年12月時点)
各ブラウザにおける WebGL 対応状況(2020年12月時点)
各ブラウザにおける WebGL 対応状況(2019年12月時点)
Microsoft Edge(2018年2月)における WebGL 対応状況
Microsoft Edge(2016年7月)における WebGL 対応状況
Microsoft Edge(2015年11月)における WebGL 対応状況
Microsoft Edge(2015年7月)における WebGL 対応状況
IE11(2015年5月)における WebGL 対応状況
IE11(2014年12月)における WebGL 対応状況
IE11(2014年4月)における WebGL 対応状況
IE11(2013年10月)における WebGL 対応状況
IE11 Preview 版における WebGL 対応状況

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?