Microsoft Edge(2016年7月)における WebGL 対応状況

  • 7
    Like
  • 0
    Comment

Microsoft Edge(2015年11月)における WebGL 対応状況
http://qiita.com/cx20/items/9c572f86790667c3fc8a

前回の調査からしばらく間が空きましたが、2016年7月時点における Microosft Edge の WebGL 対応状況を調べてみました。
調査した環境は Windows 10 Insider Preview Build 14390 になります。評価版である為、リリース版と異なる可能性がありますのでご注意下さい。

気になった主な変更点としては

  • WebGL のバージョンが 0.96→1.00 に変更
  • WebGL 拡張が2つほど(FP16テクスチャ)が追加された
  • Renderer が「Internet Explorer」→「Microsoft Edge」に変更

と言ったところでしょうか。

下記については、前回から大きく変更は無いようです。

  • Context Name は experimental-webgl(試験的機能)のまま
  • 使える WebGL 拡張が Chrome/Firefox に比べて少ない
  • 動画テクスチャは WebM 未対応(開発中)
  • 複雑な GLSL だとエラーになる
  • GPGPU Bird サンプルが件数が多いと動作しない
  • WebGL2 未サポート

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

■ Device Initialization - Samples - Turbulenz Engine
http://biz.turbulenz.com/sample_assets/device_initialization.canvas.release.html

OS とブラウザ バージョン GPU
Windows 10 IP Build 14390.0 + Chrome 51 51.0.2704.106 m GeForce GTX 660
Windows 10 IP Build 14390.0 + Firefox 47 47.0.1 GeForce GTX 660
Windows 10 IP Build 14390.0 + IE 11 11.0.14390.0 GeForce GTX 660
Windows 10 IP Build 14390.0 + Edge 14 38.14390.0.0 GeForce GTX 660
iOS 9.3.2 + Safari 601.1 Apple A8
項目 Chrome 51 Firefox 47 IE 11 Edge 14 iOS 9.3.2
Vendor WebKit Mozilla Microsoft Microsoft WebKit
Renderer WebKit WebGL Mozilla Internet Explorer Microsoft Edge WebKit WebGL
Renderer Version WebGL 1.0 WebGL 1.0 WebGL 0.94 WebGL 1.0 WebGL 1.0
Shading Language Version WebGL GLSL ES 1.0 WebGL GLSL ES 1.0 WebGL GLSL ES 0.94 WebGL GLSL ES 1.0 WebGL GLSL ES 1.0
Video Ram 0 MB 0 MB 0 MB 0 MB 0 MB
OCCLUSION_QUERIES false false false false false
NPOT_MIPMAPPED_TEXTURES false false false false false
TEXTURE_DXT1 true true true true false
TEXTURE_DXT3 true true true true false
TEXTURE_DXT5 true true true true false
TEXTURE_ETC1 false false false false false
INDEXFORMAT_UINT true true true true true
ANISOTROPY 16 16 16 16 16
TEXTURE_SIZE 16384 16384 16384 16384 4096
CUBEMAP_TEXTURE_SIZE 16384 16384 16384 16384 4096
3D_TEXTURE_SIZE 0 0 0 0 0
RENDERTARGET_COLOR_TEXTURES 8 8 1 1 1
RENDERBUFFER_SIZE 16384 16384 16384 16384 4096
FILEFORMAT_WEBM true true false false false
FILEFORMAT_MP4 true true true true true
FILEFORMAT_JPG true true true true true
FILEFORMAT_PNG true true true true true
FILEFORMAT_DDS true true true true true
FILEFORMAT_TGA true true true true true
WebGL Extensions 24個 22個 8個 12個 16個
WebGL Extensions 項目 Chrome 51 Firefox 47 IE 11 Edge 14 iOS 9.3.2
ANGLE_instanced_arrays
EXT_blend_minmax
EXT_disjoint_timer_query
EXT_color_buffer_half_float
EXT_frag_depth
EXT_shader_texture_lod
EXT_sRGB [○] [○]
EXT_texture_filter_anisotropic
OES_element_index_uint
OES_standard_derivatives
OES_texture_float
OES_texture_float_linear
OES_texture_half_float ○(New)
OES_texture_half_float_linear ○(New)
OES_vertex_array_object
WEBGL_color_buffer_float
WEBGL_compressed_texture_pvrtc
WEBGL_compressed_texture_etc1 [○(New)] ○(New)
WEBGL_compressed_texture_s3tc
WEBGL_debug_renderer_info
WEBGL_debug_shaders
WEBGL_depth_texture
WEBGL_draw_buffers
WEBGL_lose_context

※ 「○」はベンダー接頭辞「なし」、「△」はベンダー接頭辞「あり」を表しています。また、内蔵 GPU で動作しなかったものは「[○]」としています。

以下は、three.js (r79) のサンプル(http://threejs.org/examples/ )による動作確認結果です。
なお、WebGL2 機能が有効化されていると正しく表示されないサンプル(depth texture 等)があった為、WebGL2 機能は無効化して試しています。

WebGL Example Chrome 51 Firefox 47 IE 11 Edge 14 iOS9.3.2
animation / cloth
animation / scene
animation / skinning / blending
animation / skinning / morph
camera
camera / cinematic
camera / logarithmicdepthbuffer
clipping
clipping / advanced
decals
depth / texture ×
effects / anaglyph
effects / parallaxbarrier
effects / peppersghost
effects / stereo
exporter / obj
geometries
geometries2
geometry / colors
geometry / colors / blender
geometry / colors / lookuptable
geometry / convex
geometry / cube
geometry / dynamic
geometry / extrude / shapes
geometry / extrude / shapes2
geometry / extrude / splines
geometry / hierarchy
geometry / hierarchy2
geometry / large / mesh
geometry / minecraft
geometry / minecraft / ao
geometry / normals
geometry / nurbs
geometry / shapes
geometry / spline / editor
geometry / teapot
geometry / terrain
geometry / terrain / fog
geometry / terrain / raycast
geometry / text
geometry / text / earcut
geometry / text / pnltri
gpgpu / birds ×
gpgpu / water
gpgpu / protoplanet ×
gpu / particle / system
hdr
helpers
interactive / buffergeometry
interactive / cubes
interactive / cubes / gpu
interactive / instances / gpu
interactive / cubes / ortho
interactive / draggablecubes
interactive / lines
interactive / points
interactive / raycasting / points
interactive / voxelpainter
kinect × × ×
lensflares
lights / hemisphere
lights / physical
lights / pointlights
lights / pointlights2
lights / spotlight
lights / spotlights
lines / colors
lines / cubes
lines / dashed
lines / sphere
lines / splines
loader / 3mf × × ×
loader / amf × × ×
loader / assimp2json
loader / awd
loader / babylon
loader / bvh
loader / collada ×
loader / collada / keyframe
loader / collada / kinematics ×
loader / collada / skinning
loader / ctm
loader / ctm / materials
loader / fbx
loader / gltf ×
loader / json / blender
loader / json / claraio
loader / json / objconverter
loader / md2
loader / md2 / control
loader / mmd
loader / mmd / pose
loader / mmd / audio ×
loader / msgpack
loader / obj
loader / obj / mtl
loader / nrrd
loader / pcd
loader / pdb
loader / ply
loader / sea3d
loader / sea3d / hierarchy
loader / sea3d / keyframe
loader / sea3d / morph
loader / sea3d / skinning
loader / sea3d / sound × ×
loader / scene ×
loader / stl
loader / utf8
loader / vrml
loader / vtk ×
lod
marchingcubes
materials
materials / blending
materials / blending / custom
materials / bumpmap
materials / bumpmap / skin
materials / cars
materials / channels
materials / cubemap
materials / cubemap / balls / reflection
materials / cubemap / balls / refraction
materials / cubemap / dynamic
materials / cubemap / dynamic2
materials / cubemap / refraction
materials / displacementmap
materials / envmaps
materials / envmaps / hdr
materials / grass
materials / lightmap
materials / nodes
materials / normalmap
materials / parallaxmap
materials / reflectivity
materials / shaders / fresnel
materials / skin
materials / standard
materials / texture / anisotropy
materials / texture / compressed
materials / texture / filters
materials / texture / hdr
materials / texture / manualmipmap
materials / texture / pvrtc × × × ×
materials / texture / tga
materials / transparency
materials / variations / basic
materials / variations / lambert
materials / variations / phong
materials / variations / standard
materials / variations / physical
materials / video × ×
materials / wireframe
mirror
mirror / nodes
modifier / simplifier × ×
modifier / subdivision
modifier / tessellation
morphnormals
morphtargets
morphtargets / horse
morphtargets / human
multiple / canvases / circle
multiple / canvases / complex
multiple / canvases / grid
multiple / elements
multiple / elements / text
multiple / renderers
multiple / views
nearestneighbour
objects / update
octree
octree / raycasting
panorama / cube
panorama / dualfisheye
panorama / equirectangular
performance
performance / doublesided
performance / static
physics / terrain
physics / rope
physics / cloth
physics / volume
points / billboards
points / billboards / colors
points / dynamic
points / random
points / sprites
postprocessing
postprocessing / advanced
postprocessing / backgrounds
postprocessing / crossfade
postprocessing / dof
postprocessing / dof2
postprocessing / glitch
postprocessing / godrays
postprocessing / masking
postprocessing / msaa
postprocessing / msaa / unbiased
postprocessing / nodes
postprocessing / procedural
postprocessing / smaa
postprocessing / ssao
postprocessing / taa
raycast / texture
read / float / buffer ×
rtt
sandbox
shader
shader / lava
shader2
shaders / ocean
shaders / ocean2 ×
shaders / sky
shaders / tonemapping
shaders / vector
shading / physical
shadowmap
shadowmap / performance
shadowmap / pointlight
shadowmap / viewer
shadowmesh
skinning / simple
sprites
terrain / dynamic
test / memory
test / memory2
tonemapping
trails
video / panorama / equirectangular × × ×
buffergeometry
buffergeometry / constructed / from / geometry
buffergeometry / custom / attributes / particles
buffergeometry / drawcalls
buffergeometry / instancing
buffergeometry / instancing / billboards
buffergeometry / instancing / dynamic
buffergeometry / instancing / interleaved / dynamic
buffergeometry / lines
buffergeometry / lines / indexed
buffergeometry / points
buffergeometry / points / interleaved
buffergeometry / rawshader
buffergeometry / selective / draw
buffergeometry / uint
custom / attributes
custom / attributes / lines
custom / attributes / points
custom / attributes / points2
custom / attributes / points3
raymarching / reflect ×

※ 「○」は正常動作。「△」一部表示乱れあり。「×」表示されない又はエラー等が発生する。