WebGL - 維基百科,自由的百科全書

文章推薦指數: 80 %
投票人數:10人

WebGL是一種JavaScript API,用於在不使用外掛程式的情況下在任何相容的網頁瀏覽器中呈現互動式2D和3D圖形。

WebGL完全整合到瀏覽器的所有網頁標準中,可將影像處理和 ... WebGL 維基百科,自由的百科全書 跳至導覽 跳至搜尋 WebGL原作者Mozilla基金會開發者WebGLWorkingGroup初始版本2011年3月3日 (2011-03-03)[1]穩定版本2.0(2017年1月17日 (2017-01-17)) 作業系統跨平台類型API網站www.khronos.org/webgl/ HTML HTML 動態HTML HTML5 音訊(英語:HTML5Audio) 畫布 影片(英語:HTML5video) XHTML 基礎(英語:XHTMLBasic) 移動概要 C-HTML HTML元素 Span與div HTML特性(英語:HTMLattribute) HTML框架(英語:Framing(WorldWideWeb)) HTML編輯器 字元編碼 Unicode(英語:UnicodeandHTML) 語言代碼 文件物件模型 瀏覽器物件模型 樣式表 層疊樣式表 字型家族 網頁顏色 HTML指令碼(英語:HTMLscripting) JavaScript WebGL WebCL(英語:WebCL) W3C 驗証服務 網頁超文字應用技術工作小組 怪異模式 網頁儲存 排版引擎 比較 文件標記式語言 網頁瀏覽器 HTML 非標準HTML HTML5(英語:Comparisonoflayoutengines(HTML5)) 畫布 媒體 XHTML 1.1 閱論編 WebGL是一種JavaScriptAPI,用於在不使用外掛程式的情況下在任何相容的網頁瀏覽器中呈現互動式2D和3D圖形[2]。

WebGL完全整合到瀏覽器的所有網頁標準中,可將影像處理和效果的GPU加速使用方式當做網頁Canvas的一部分。

WebGL元素可以加入其他HTML元素之中並與網頁或網頁背景的其他部分混合[3]。

WebGL程式由JavaScript編寫的控制代碼和OpenGLShadingLanguage(GLSL)編寫的著色器代碼組成,該語言類似於C或C++,並在電腦的圖形處理器(GPU)上執行。

WebGL由非營利KhronosGroup設計和維護[4]。

目次 1設計 2歷史 3支援 3.1桌面瀏覽器 3.2行動瀏覽器 4參考文獻 5外部連結 6參見 設計[編輯] WebGL1.0基於OpenGLES2.0,並提供了3D圖形的API[5]。

它使用HTML5Canvas並允許利用文件物件模型介面。

WebGL2.0基於OpenGLES3.0,確保了提供許多選擇性的WebGL1.0擴充功能,並引入新的API[6]。

可利用部分Javascript實現自動記憶體管理[4]。

歷史[編輯] WebGL起源於Mozilla員工弗拉基米爾·弗基西維奇一項稱為Canvas3D的實驗計畫。

2006年,弗基西維奇首次展示了Canvas3D的原型。

2007年底在Firefox[7]和Opera[8]被實作。

在2009年初,非營利技術聯盟KhronosGroup啟動了WebGL的工作組,最初的工作成員包括Apple、Google、Mozilla、Opera等[4][9]。

2011年3月發布WebGL1.0規範[1]。

截至2012年3月,工作組的主席由肯·羅素(KenRussell,全名「KennethBradleyRussell」)擔任。

WebGL的早期應用包括ZygoteBody[10][11]。

WebGL2規範的發展始於2013年,並於2017年1月完成[12]。

該規範基於OpenGLES3.0[13]。

首度實作在Firefox51、Chrome56和Opera43中[14]。

支援[編輯] 目前,WebGL在最新的瀏覽器中被廣泛支援。

然而,其可用性取決於其他因素,如GPU支援。

WebGL官方網站提供了一個簡單的測試頁[15]。

而第三方網站提供了更詳細的訊息(如瀏覽器使用的彩現器以及可用的擴展)[16][17]。

桌面瀏覽器[編輯] GoogleChrome–從9.0開始支援預設啟用[18][19]。

InternetExplorer–從11開始支援[20]。

較舊的版本可以安裝第三方外掛程式來支援,如IEWebGL[21]。

MozillaFirefox–從4.0開始支援預設啟用[22]。

Safari–在MacOSXSnowLeopard上的Safari5.1、OSXMountainLion、MacOSXLion上的Safari6.0或較新版本開始支援WebGL,預設情況下禁用[23][24][25][26][27]。

Opera–需自行啟用[28][29]。

行動瀏覽器[編輯] FirefoxOS[30] Firefoxformobile[31][30] GoogleChrome[32] OperaMobile[33] Tizen[34] UbuntuTouch WebOS iOS[35] 參考文獻[編輯] ^1.01.1KhronosReleasesFinalWebGL1.0Specification.[2015-05-18].(原始內容存檔於2016-11-08).  ^GreggTavares.WebGLFundamentals.HTML5Rocks.2012-02-09.  ^Parisi,Tony.WebGL:UpandRunning.O'ReillyMedia,Incorporated.2012-08-15[2017-06-11].(原始內容存檔於2013-02-01).  ^4.04.14.2WebGL-OpenGLES2.0fortheWeb ^WebGLSpecification.Khronos.org.[2011-05-14].(原始內容存檔於2012-04-12).  ^WebGL2.0Specification.Khronos.org.[2017-02-27].  ^Canvas3D:GLpower,web-style.Blog.vlad1.com.[2011-05-14].(原始內容存檔於2011-07-17).  ^Takingthecanvastoanotherdimension.My.opera.com.2007-11-26[2011-05-14].(原始內容存檔於2007-11-17).  ^KhronosDetailsWebGLInitiativetoBringHardware-Accelerated3DGraphicstotheInternet.Khronos.org.2009-08-04[2011-05-14].(原始內容存檔於2012-04-12).  ^GoogleBody–GoogleLabs.Bodybrowser.googlelabs.com.[2011-05-14].(原始內容存檔於2011-05-13).  ^Bhanoo,SindyaN.NewFromGoogle:TheBodyBrowser.Well.blogs.nytimes.com.2010-12-23[2011-05-14].  ^WebGL2Specification.khronos.org.2013-09-26[2013-10-28].  ^https://www.khronos.org/registry/webgl/specs/latest/2.0/ ^https://developer.mozilla.org/en-US/docs/Web/API/WebGL_API ^WebGLtestpage.webgl.org.  ^WebGLReport.webglreport.com.  ^WebGLBrowserReport—WebGLDetection—WebGLTester—BrowserLeaks.browserleaks.com.  ^PaulMah.GooglereleasesChrome9;comeswithGoogleInstant,WebGL–FierceCIO:TechWatch.FierceCIO.February8,2011[2012-03-20].(原始內容存檔於2011-10-25).  ^WebGLinChromeStable!-LearningWebGL.learningwebgl.com.[2015-12-27].(原始內容存檔於2015-05-28).  ^WebGL(Windows).微軟.[2014-03-05].  ^IEWebGL.Iewebgl.[2014-08-14].  ^MozillaFirefox4ReleaseNotes.Mozilla.com.2011-03-22[2012-03-20].(原始內容存檔於2011-03-23).  ^NewinOSXLion:Safari5.1bringsWebGL,DoNotTrackandmore.Fairerplatform.com.2011-05-03[2012-03-20].(原始內容存檔於2012-03-19).  ^EnableWebGLinSafari.Ikriz.nl.2011-08-23[2012-03-20].(原始內容存檔於2012-03-04).  ^GettingaWebGLImplementation.Khronos.org.2012-01-13[2012-03-20].  ^Implementations/WebKit.Khronos.org.2011-09-03[2012-03-20].  ^WebGLNowAvailableinWebKitNightlies.Webkit.org.[2012-03-20].(原始內容存檔於2012-03-08).  ^WebGLandHardwareAcceleration.My.opera.com.2011-02-28[2012-03-20].(原始內容存檔於2011-03-03).  ^IntroducingOpera12alpha.My.opera.com.2011-10-13[2012-03-20].(原始內容存檔於2011-10-15).  ^30.030.1MobileHTML5compatibilityoniPhone,Android,WindowsPhone,BlackBerry,FirefoxOSandothermobiledevices.[2015-09-16].  ^iclkevin.WebGLonMobileDevices.iChemLabs.2011-11-12[2011-11-25].(原始內容存檔於2013-03-12).  ^Kersey,Jason.ChromeBetaforAndroidUpdate.ChromeReleasesBlog.Google.[2013-08-23].  ^OperaMobile12.OperaSoftware.[27February2012].(原始內容存檔於2012年3月1日).  ^HTML5test-HowwelldoesyourbrowsersupportHTML5?.[2015-09-16].  ^Cunningham,Andrew.iOS8,ThoroughlyReviewed.ArsTechnica.2014-09-17[2014-09-19].(原始內容存檔於2014-09-20).  外部連結[編輯] 官方網站 WebGL(頁面存檔備份,存於網際網路檔案館)於MDNWebDocs 參見[編輯] HTML5 OpenGL WebGPU WebVR 閱論編科納斯組織制定標準活躍 OpenCL SYCL OpenGL OpenGLES WebGL OpenGLSC EGL(英語:EGL(OpenGL)) OpenVX OpenVG OpenXR SPIR(英語:StandardPortableIntermediateRepresentation) Vulkan glTF 不活躍 COLLADA(英語:COLLADA) OpenKCam OpenKODE(英語:OpenKODE) OpenMAX OpenML OpenSLES(英語:OpenSLES) OpenWF(英語:OpenWF) StreamInput WebCL(英語:WebCL) 閱論編Web介面伺服器(英語:Server-side)協定 HTTP CGI SCGI FCGI AJP WSRP(英語:WebServicesforRemotePortlets) WebSocket 伺服器API CNSAPI(英語:NetscapeServerApplicationProgrammingInterface) CASAPI CISAPI COMASP JavaServlet 容器 CLIOWIN(英語:OpenWebInterfacefor.NET) ASP.NETHandler(英語:HTTPhandler) PythonWSGI RubyRack(英語:Rack(webserverinterface)) JavaScriptJSGI(英語:JSGI) PerlPSGI(英語:PSGI) LuaWSAPI(英語:Kepler(software)#Frameworks) Portlet 容器(英語:Portletcontainer) Apache模組 mod_jk(英語:mod_jk) mod_lisp(英語:mod_lisp) mod_mono(英語:mod_mono) mod_parrot(英語:mod_parrot) mod_perl(英語:mod_perl) mod_php mod_proxy(英語:mod_proxy) mod_python(英語:mod_python) mod_wsgi(英語:mod_wsgi) mod_ruby(英語:mod_ruby) PhusionPassenger(英語:PhusionPassenger) 主題 Web資源(英語:Webresource)與Web服務 開放API(英語:OpenAPI) 網路勾點 應用程式伺服器 比較(英語:Comparisonofapplicationservers) 指令碼(英語:Server-sidescripting) 客戶端(英語:Client-side)瀏覽器擴充功能 CNPAPI LiveConnect XPConnect CNPRuntime CPPAPI NaCl ActiveX BHO XBAP(英語:XAMLBrowserApplications) WebAssembly WebAPIW3C 音訊(英語:HTML5Audio) Canvas CORS DOM DOM事件(英語:DOMevents) EME File(英語:HTML5FileAPI) Geolocation(英語:W3CGeolocationAPI) IndexedDB MSE SSE(英語:Server-sentevents) SVG 影片(英語:HTML5video) WebRTC WebSocket Web訊息(英語:WebMessaging) 網頁儲存 Webworker(英語:Webworker) XMLHTTP Khronos WebCL(英語:WebCL) WebGL 其他 Gears WebSQLDatabase(前W3C) 主題 Ajax與DHTML Mashup WebIDL(英語:WebIDL) 指令碼 主題 動態網頁 開放Web平台(英語:OpenWebPlatform) 多樣化網際網路應用程式 網路應用程式 閱論編網頁瀏覽器 比較 列表 時間線 使用率 分類 特點 廣告攔截 增強瀏覽(英語:Augmentedbrowsing) 書籤 小書籤 即時書籤(英語:FeaturesofFirefox#Livebookmarks) 智慧型書籤(英語:SmartBookmarks) 瀏覽器擴充功能 瀏覽器安全(英語:Browsersecurity) 瀏覽器同步器(英語:Browsersynchronizer) 比較(英語:Comparisonofbrowsersynchronizers) Cookie 下載管理器 Favicon 增量尋找(英語:Incrementalsearch) 外掛程式 無痕瀏覽 分頁 通用編輯按鈕(英語:UniversalEditButton) 網頁標準 Acid測試 HTML HTML5 CSS SVG XHTML WebGL JavaScript 數學標示語言 協定 超文字傳輸協定 超文字傳輸安全協定 線上憑證狀態協定 SPDY 傳輸層安全性協定 WebSocket 網路代理自動發現協定 相關主題 BrowserChoice.eu 憑證吊銷列表 iLoo(英語:iLoo) 網路套件 瀏覽器中間人攻擊(英語:Man-in-the-browser) 行動端網頁(英語:MobileWeb) 離線瀏覽 代理自動組態 Pwn2Own 多樣化網際網路應用程式 指定網站瀏覽器(英語:Site-specificbrowser) 控制項 全球資訊網 XML  電腦平台Blink排版引擎 Chromium GoogleChrome 科摩多龍安全瀏覽器 AvastSecureBrowser(英語:AvastSecureBrowser) SuperBird SRWareIron CatalinaCitrio CocCocCorom NaverWhale MicrosoftEdge Brave Vivaldi Opera(15~) YandexBrowser Torch CCleanerBrowser Catsxp Coowon Orbitum PlayFree Beamrise BlackHawk uCozUran OrtigraTitanium HiddenReflexEpicPrivacy BaiduSpark 紅芯瀏覽器 七星瀏覽器 JutaoCaimao RamblerNichrome Ishenyou265gChrome WebKit排版引擎 Safari Konqueror Epiphany(2.28~) ICab(4.0~) OmniWeb(4.0~) ABrowse Uzbl Falkon Dooble Midori Rekonq SkyKruzer Arora Flock Shiira Gecko排版引擎 Firefox Cyberfox Waterfox IceWeasel GNUIceCat ComodoIceDragon Galeon K-Meleon SwiftWeasel XBBrowser SeaMonkey PaleMoon(26~) Netscape Camino BeonexCommunicator Trident排版引擎 InternetExplorer GreenBrowser SlimBrowser 2345王牌瀏覽器 MyIE KKman PCManCombo MSNExplorer WebbIE MenuBox CrazyBrowser DeepnetExplorer GOSURF iRider mxie NeoPlanet AOLExplorer DeepnetExplorer NeoPlanet NetCaptor MediaBrowser SpaceTime UltraBrowser 混合排版引擎 Sleipnir Lunascape 獵豹瀏覽器 淘寶瀏覽器 愛帆瀏覽器 楓樹瀏覽器 太陽花瀏覽器 世界之窗瀏覽器 360極速瀏覽器 搜狗瀏覽器(2.0~) 傲遊瀏覽器(3.0~) QQ瀏覽器(5.0~) 其他排版引擎 NetSurf abaco Amaya KidZui Charon Dillo Gazelle IBMWatsonExplorer Arachne(英語:Arachne(webbrowser)) Arena IBMHomePageReader IBrowse Mosaic Mothra(英語:Mothra(webbrowser)) NetPositive 純文字排版引擎 ELinks Links Lynx W3m Emacs/W3 LineModeBrowser Net-Tamer  行動平台Blink排版引擎 Chromium GoogleChrome AvastSecureBrowser(英語:AvastSecureBrowser) 三星瀏覽器 AmazonSilk(英語:AmazonSilk) NaverWhale MicrosoftEdge Brave Vivaldi Opera YandexBrowser Android瀏覽器 WebKit排版引擎 Safari Konqueror 海豚瀏覽器 S60webbrowser Steel BOLT FirefoxforiOS NaverWhaleforiOS Via瀏覽器 Gecko排版引擎 Firefox Waterfox MicroB Minimo Trident排版引擎 UC瀏覽器 傲遊雲瀏覽器 InternetExplorerMobile 其他 Blazer ibisBrowser NetFront ObigoBrowser Skweezer Skyfire Teashark ThunderHawk uZardWeb Vision WinWAP Smooz(日語:Smooz) Galio Deepfish Iris瀏覽器  電視機和電子遊樂器Gecko排版引擎 Kylo Presto排版引擎 InternetChannel Opera裝置瀏覽器 Nintendo3DSInternetBrowser WebKit排版引擎 GoogleTV NetFront Steam 其他 MSNTV Galio 刪除線格式為停止開發的項目 取自「https://zh.wikipedia.org/w/index.php?title=WebGL&oldid=64206867」 分類:網站開發網頁技術應用程式接口繪圖函式庫OpenGL隱藏分類:使用過時圖像語法的頁面有藍鏈卻未移除內部連結助手模板的頁面 導覽選單 個人工具 沒有登入討論貢獻建立帳號登入 命名空間 條目討論 臺灣正體 已展開 已摺疊 不转换简体繁體大陆简体香港繁體澳門繁體大马简体新加坡简体臺灣正體 查看 閱讀編輯檢視歷史 更多 已展開 已摺疊 搜尋 導航 首頁分類索引特色內容新聞動態近期變更隨機條目資助維基百科 說明 說明維基社群方針與指引互助客棧知識問答字詞轉換IRC即時聊天聯絡我們關於維基百科 工具 連結至此的頁面相關變更上傳檔案特殊頁面靜態連結頁面資訊引用此頁面維基數據項目 列印/匯出 下載為PDF可列印版 其他專案 維基共享資源 其他語言 CatalàČeštinaDeutschΕλληνικάEnglishEspañolEestiفارسیFrançaisMagyarBahasaIndonesiaÍslenskaItaliano日本語한국어LatviešuNederlandsPolskiPortuguêsRomânăРусскийSlovenčinaไทยTürkçeУкраїнська 編輯連結



請為這篇文章評分?