WebGL - Web APIs | MDN
文章推薦指數: 80 %
WebGL (Web Graphics Library) 是一個透過瀏覽器渲染3D及2D圖像的 JavaScript API ,且不需要安裝任何插件。
WebGL 透過與OpenGL ES 2.0緊密連結的API,將3D圖像帶 ...
SkiptomaincontentSkiptoselectlanguage給開發者的網頁技術文件WebAPIsWebGLArticleActions正體中文(繁體)ThispagewastranslatedfromEnglishbythecommunity.LearnmoreandjointheMDNWebDocscommunity.Developmenttopics瀏覽器相容性你也可以看看RelatedTopics
WebGLAPI
WebGLtutorial
GettingstartedwithWebGL
Adding2DcontenttoaWebGLcontext
UsingshaderstoapplycolorinWebGL
AnimatingobjectswithWebGL
Creating3DobjectsusingWebGL
UsingtexturesinWebGL
LightinginWebGL
AnimatingtexturesinWebGL
Examplesandarticles
Matrixmathfortheweb
WebGLmodelviewprojection
WebGLbestpractices
UsingWebGLextensions
Abasic2DWebGLanimationexample
WebGLbyexample
Interfaces
WebGLRenderingContext(en-US)
WebGL2RenderingContext(en-US)
WebGLActiveInfo(en-US)
WebGLBuffer(en-US)
WebGLContextEvent(en-US)
WebGLFramebuffer(en-US)
WebGLProgram(en-US)
WebGLQuery(en-US)
WebGLRenderbuffer(en-US)
WebGLSampler(en-US)
WebGLShader(en-US)
WebGLShaderPrecisionFormat(en-US)
WebGLSync(en-US)
WebGLTexture(en-US)
WebGLTransformFeedback(en-US)
WebGLUniformLocation(en-US)
WebGLVertexArrayObject(en-US)
Documentation:
Contribute
TheMDNproject
Developmenttopics瀏覽器相容性你也可以看看WebGLDevelopmenttopics
WebGL(WebGraphicsLibrary)是一個透過瀏覽器渲染3D及2D圖像的 JavaScriptAPI,且不需要安裝任何插件。
WebGL透過與OpenGLES2.0緊密連結的API,將3D圖像帶入HTML5中,並可透過canvas元素呈現於瀏覽器中
SupportforWebGLispresentinFirefox 4+,GoogleChrome9+,Opera 12+,Safari5.1+以及InternetExplorer11+;然而,使用者的GPU也必須支援。
從WebGL開始吧
如何設立一個WebGL環境。
增加2D的東西到WebGL環境
如何使用WebGL來呈現一個簡單的平面形狀。
UsingshaderstoapplycolorinWebGL
Demonstrateshowtoaddcolortoshapesusingshaders.
AnimatingobjectswithWebGL
Showshowtorotateandtranslateobjectstocreatesimpleanimations.
Creating3DobjectsusingWebGL
Showshowtocreateandanimatea3Dobject(inthiscase,acube).
UsingtexturesinWebGL
Demonstrateshowtomaptexturesontothefacesofanobject.
LightinginWebGL
HowtosimulatelightingeffectsinyourWebGLcontext.
AnimatingtexturesinWebGL
Showshowtoanimatetextures;inthiscase,bymappinganOggvideoontothefacesofarotatingcube.
WebGLbestpractices
TipsandsuggestionstoimproveyourWebGLcontent.
Cross-domaintextures
Informationaboutloadingtexturesfromdomainsotherthantheonefromwhichyourcontentwasloaded.
Usingextensions
HowtouseextensionsthatareavailableinWebGL.
資源
WebGLSpecification
TheWebGLspecification.
KhronosWebGLsite
ThemainwebsiteforWebGLattheKhronosGroup.
LearningWebGL
AsitewithtutorialsonhowtouseWebGL.
WebGLFundamentals
AbasictutorialwithfundamentalsofWebGL.
WebGLMatrices
Anintroductiontomatrices'usein2DWebGL.Thisseriesalsogoesontoexplainthemathbehindperspective3D.
TheWebGLCookbook
AwebsitewithhandyrecipesforwritingWebGLcode.
PlanetWebGL
AfeedaggregatorforpeopleinvolvedintheWebGLcommunity.
ewgl-matrices
AblazingfastmatrixlibraryforWebGL
glMatrix
JavaScriptMatrixandVectorlibraryforHighPerformanceWebGLapps
mjs
AJavaScriptvectorandmatrixmathlibrary,optimizedforWebGLusage.
Sylvester
Anopensourcelibraryformanipulatingvectorsandmatrices.NotoptimizedforWebGLbutextremelyrobust.
WebGLplayground
AnonlinetoolforcreatingandsharingWebGLprojects.Goodforquickprototypingandexperimenting.
WebGLAcademy
AnHTML/Javascripteditorwithtutorialstolearnbasicsofwebglprogramming.
瀏覽器相容性WebGL1BCDtablesonlyloadinthebrowserWebGL2BCDtablesonlyloadinthebrowser相容性小記Inadditiontothebrowser,theGPUitselfalsoneedstosupportthefeature.So,forexample,S3TextureCompression(S3TC)isonlyavailableonTegra-basedtablets.MostbrowsersmaketheWebGLcontextavailablethroughthewebglcontextname,butolderonesneedexperimental-webglaswell.Inaddition,theupcomingWebGL2isfullybackwards-compatibleandwillhavethecontextnameexperimental-webgl2inthefuturefortesting.Gecko小記WebGLdebuggingandtesting
StartingwithGecko10.0(Firefox10.0/Thunderbird10.0/SeaMonkey2.7),therearetwopreferencesavailablewhichletyoucontrolthecapabilitiesofWebGLfortestingpurposes:
webgl.min_capability_mode
ABooleanpropertythat,whentrue,enablesaminimumcapabilitymode.Wheninthismode,WebGLisconfiguredtoonlysupportthebareminimumfeaturesetandcapabilitiesrequiredbytheWebGLspecification.ThisletsyouensurethatyourWebGLcodewillworkonanydeviceorbrowser,regardlessoftheircapabilities.Thisisfalsebydefault.
webgl.disable_extensions
ABooleanpropertythat,whentrue,disablesallWebGLextensions.Thisisfalsebydefault.
你也可以看看RawWebGL:atalkbyNickDesaulniers:
Foundaproblemwiththispage?EditonGitHubSourceonGitHubReportaproblemwiththiscontentonGitHubWanttofixtheproblemyourself?SeeourContributionguide.Lastmodified:Mar8,2022,byMDNcontributors
延伸文章資訊
- 1浏览器上的3D—WebGL和Three.js - 知乎专栏
WebGL是什么WebGL(全称Web Graphics Library)是一种3D绘图协议,这种绘图技术标准允许把JavaScript和OpenGL ES 2.0(OpenGL是最常用的跨平台...
- 2[Day7] webGL修羅道(4) - 3D 與動畫 - iT 邦幫忙
[Day7] webGL修羅道- 3D 與動畫. 3D 圖形基礎. 在電腦上看到圖形的方式,通常是透過camera 的概念。可以想像人的眼睛(或螢幕)就是一台相機的鏡頭,我們透過調整鏡頭 ...
- 3[Day2] 為什麼是webGL 與Three.js? - iT 邦幫忙
3D 的世界:我們所看見的物體是如何構成的? 這一個章節,我們會來談談3D 的基礎,包含影像如何形成的,以及光線、camera、scene 等等在3D ...
- 4WebGL是什麼?
WebGL(全寫Web Graphics Library)是一種3D繪圖協議,這種繪圖技術標准允許把JavaScript和OpenGL ES 2.0結合在一起,通過增加OpenGL ES 2.0...
- 5WebGL 入門- Web APIs
WebGL 讓網頁內容能藉由一種基於 OpenGL ES 2.0 的API 的幫助,於支援此API 的瀏覽 ... 在我們的學習區域內有初學者指南讓你完成編程任務:Learn WebGL for...