WebGL

来自Local Chinese Wikipedia
imported>糯米花2025年5月11日 (日) 17:14的版本 (使用DisamAssist清理消歧義連結:Opera(連結至Opera (瀏覽器); 連結至Opera (瀏覽器))。)
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
跳转到导航 跳转到搜索

package.lua第80行Lua错误:module 'Module:CGroup/core' not found

页面Module:Infobox/styles.css没有内容。

WebGL
File:WebGL Logo.svg
原作者Mozilla基金会
开发者WebGL Working Group
首次发布2011年3月3日 (2011-03-03)[1]
当前版本2.0(2017年1月17日 (2017-01-17)
操作系统跨平台
类型API
网站www.khronos.org/webgl/
脚本错误:没有“Template wrapper”这个模块。

package.lua第80行Lua错误:module 'Module:Sidebar/configuration' not found WebGL是一种JavaScript API,用于在不使用插件的情况下在任何相容的网页浏览器中呈现交互式2D和3D图形[2]。WebGL完全整合到浏览器的所有网页标准中,可将影像处理和效果的GPU加速使用方式当做网页Canvas的一部分。WebGL元素可以加入其他HTML元素之中并与网页或网页背景的其他部分混合[3]。WebGL程序由JavaScript编写的控制代码和OpenGL Shading Language(GLSL)编写的着色器代码组成,该语言类似于CC++,并在电脑的图形处理器(GPU)上执行。WebGL由非营利Khronos Group设计和维护[4]

设计[编辑]

WebGL 1.0基于OpenGL ES 2.0,并提供了3D图形的API[5]。它使用HTML5 Canvas并允许利用文档对象模型接口。WebGL 2.0基于OpenGL ES 3.0,确保了提供许多选择性的WebGL 1.0扩充功能,并引入新的API[6]。可利用部分Javascript实现自动记忆体管理[4]

历史[编辑]

WebGL起源于Mozilla员工弗拉基米尔·弗基西维奇一项称为Canvas 3D的实验计划。2006年,弗基西维奇首次展示了Canvas 3D的原型。2007年底在Firefox[7]和Opera[8]被实作。

在2009年初,非营利技术联盟Khronos Group启动了WebGL的工作组,最初的工作成员包括AppleGoogleMozillaOpera[4][9]。2011年3月发布WebGL 1.0规范[1]。截至2012年3月,工作组的主席由肯·罗素(Ken Russell,全名“Kenneth Bradley Russell”)担任。

WebGL的早期应用包括Zygote Body[10][11]

WebGL 2规范的发展始于2013年,并于2017年1月完成[12]。该规范基于OpenGL ES 3.0[13]。首度实作在Firefox 51、Chrome 56和Opera 43中[14]

支援[编辑]

目前,WebGL在最新的浏览器中被广泛支援。然而,其可用性取决于其他因素,如GPU支援。WebGL官方网站提供了一个简单的测试页[15]。而第三方网站提供了更详细的讯息(如浏览器使用的渲染器以及可用的扩展)[16][17]

桌面浏览器[编辑]

  • Google Chrome – 从9.0开始支援预设启用了 WebGL [18][19]。在Windows上,默认情况下,Chrome使用ANGLE渲染器将OpenGL ES转换为Direct X 9.0c或11.0,后者具有更好的驱动程序支援[20]。在Linux和Mac OS X上,默认渲染器是OpenGL[21],也可以强制OpenGL作为Windows上的渲染器[20]。2013年9月起,Chrome还推出了更新的Direct3D 11渲染器,但需要更新的显卡[22][23]。 Chrome 56+支援WebGL 2.0。
  • Internet Explorer – 从11开始支持[24]。Internet Explorer 11 最初未能通过大多数官方的WebGL一致性测试,但微软后来发布了几个更新,最新的0.94 WebGL引擎目前通过了约97%的Khronos测试。较旧的版本可以安装第三方插件来支援,如IEWebGL[25]
  • Mozilla Firefox – 从4.0开始支援预设启用[26]。Firefox也通过ANGLE在Windows平台上使用DirectX。Firefox 51+ 支援 WebGL 2.0。
  • Safari – 在Mac OS X Snow Leopard上的Safari 5.1、OS X Mountain LionMac OS X Lion上的Safari6.0或较新版本开始支援WebGL,预设情况下禁用[27][28][29][30][31]。Safari版本12(在MacOS Mojave中可用)支援WebGL 2.0,目前作为"实验性"功能。
  • Opera – 需自行启用[32][33]。Opera 43+支援WebGL 2.0
  • Microsoft Edge – 对于Microsoft Edge Legacy,初始稳定版本支援WebGL版本0.95(context名称:"experimental-webgl"),并带有开源GLSL到HLSL转译器。 版本 10240+ 支援以 WebGL 1.0 为前缀。最新的基于Chromium的Edge支援WebGL 2.0

行动浏览器[编辑]

参考文献[编辑]

  1. 1.0 1.1 package.lua第80行Lua错误:module 'Module:Citation/CS1/People' not found
  2. package.lua第80行Lua错误:module 'Module:Citation/CS1/People' not found
  3. package.lua第80行Lua错误:module 'Module:Citation/CS1/People' not found
  4. 4.0 4.1 4.2 WebGL - OpenGL ES 2.0 for the Web
  5. package.lua第80行Lua错误:module 'Module:Citation/CS1/People' not found
  6. package.lua第80行Lua错误:module 'Module:Citation/CS1/People' not found
  7. package.lua第80行Lua错误:module 'Module:Citation/CS1/People' not found
  8. package.lua第80行Lua错误:module 'Module:Citation/CS1/People' not found
  9. package.lua第80行Lua错误:module 'Module:Citation/CS1/People' not found
  10. package.lua第80行Lua错误:module 'Module:Citation/CS1/People' not found
  11. package.lua第80行Lua错误:module 'Module:Citation/CS1/People' not found
  12. package.lua第80行Lua错误:module 'Module:Citation/CS1/People' not found
  13. package.lua第80行Lua错误:module 'Module:Citation/CS1/People' not found
  14. package.lua第80行Lua错误:module 'Module:Citation/CS1/People' not found
  15. package.lua第80行Lua错误:module 'Module:Citation/CS1/People' not found
  16. package.lua第80行Lua错误:module 'Module:Citation/CS1/People' not found
  17. package.lua第80行Lua错误:module 'Module:Citation/CS1/People' not found
  18. package.lua第80行Lua错误:module 'Module:Citation/CS1/People' not found
  19. package.lua第80行Lua错误:module 'Module:Citation/CS1/People' not found
  20. 20.0 20.1 package.lua第80行Lua错误:module 'Module:Citation/CS1/People' not found
  21. package.lua第80行Lua错误:module 'Module:Citation/CS1/People' not found
  22. package.lua第80行Lua错误:module 'Module:Citation/CS1/People' not found
  23. package.lua第80行Lua错误:module 'Module:Citation/CS1/People' not found
  24. package.lua第80行Lua错误:module 'Module:Citation/CS1/People' not found
  25. package.lua第80行Lua错误:module 'Module:Citation/CS1/People' not found
  26. package.lua第80行Lua错误:module 'Module:Citation/CS1/People' not found
  27. package.lua第80行Lua错误:module 'Module:Citation/CS1/People' not found
  28. package.lua第80行Lua错误:module 'Module:Citation/CS1/People' not found
  29. package.lua第80行Lua错误:module 'Module:Citation/CS1/People' not found
  30. package.lua第80行Lua错误:module 'Module:Citation/CS1/People' not found
  31. package.lua第80行Lua错误:module 'Module:Citation/CS1/People' not found
  32. package.lua第80行Lua错误:module 'Module:Citation/CS1/People' not found
  33. package.lua第80行Lua错误:module 'Module:Citation/CS1/People' not found
  34. 34.0 34.1 package.lua第80行Lua错误:module 'Module:Citation/CS1/People' not found
  35. package.lua第80行Lua错误:module 'Module:Citation/CS1/People' not found
  36. package.lua第80行Lua错误:module 'Module:Citation/CS1/People' not found
  37. package.lua第80行Lua错误:module 'Module:Citation/CS1/People' not found
  38. package.lua第80行Lua错误:module 'Module:Citation/CS1/People' not found
  39. package.lua第80行Lua错误:module 'Module:Citation/CS1/People' not found

外部链接[编辑]

参见[编辑]

package.lua第80行Lua错误:module 'Module:Navbar/configuration' not found package.lua第80行Lua错误:module 'Module:Navbar/configuration' not found package.lua第80行Lua错误:module 'Module:Navbar/configuration' not found