Nochtann W3C dréachtchaighdeán WebGPU

Tá an W3C tar éis na chéad dréachtaí de na sonraíochtaí WebGPU agus WebGPU Shading Language (WGSL) a scaoileadh, a shainíonn APIanna chun oibríochtaí GPU a dhéanamh mar rindreáil agus ríomhaireacht, chomh maith le teanga shader chun cláir a scríobh a ritheann ar an GPU. coincheapúil cosúil leis an Vulkan, Miotal agus Direct3D 12 APIs Ullmhaíodh na sonraíochtaí ag grúpa oibre a chuimsigh innealtóirí ó Mozilla, Google, Apple agus Microsoft.

Go coincheapúil, tá difríocht mhór idir WebGPU agus WebGL ar an mbealach céanna go bhfuil an API grafaicí Vulkan difriúil ó OpenGL, ach níl sé bunaithe ar API grafaic ar leith, ach is ciseal uilíoch é a úsáideann na primitives íseal-leibhéil céanna a fhaightear i Vulkan, Metal agus Díreach 3D. Soláthraíonn WebGPU feidhmchláir JavaScript le rialú leibhéal íseal ar eagrú, próiseáil agus tarchur orduithe chuig an GPU, ag bainistiú acmhainní gaolmhara, cuimhne, maoláin, réada uigeachta agus scáthairí grafaicí tiomsaithe. Ligeann an cur chuige seo duit feidhmíocht níos airde a bhaint amach d'fheidhmchláir ghrafaice trí chostais forchostais a laghdú agus éifeachtacht oibriú leis an GPU a mhéadú.

Is féidir le WebGPU tionscadail chasta 3D a chruthú don Ghréasán nach n-oibríonn ar bith níos measa ná cláir neamhspleácha a fhaigheann rochtain dhíreach ar Vulkan, Metal nó Direct3D, ach nach bhfuil ceangailte le hardáin ar leith. Soláthraíonn WebGPU cumais bhreise freisin chun cláir ghrafaic dhúchais a aistriú isteach i bhfoirm atá cumasaithe don ghréasán trí thiomsú isteach i WebAssembly. Chomh maith le grafaicí 3D, cuimsíonn WebGPU cumais a bhaineann le ríomhanna a dhíluchtú chuig an GPU agus scáthaitheoirí a fhorghníomhú.

Príomhghnéithe WebGPU:

  • Bainistíocht ar leith acmhainní, obair ullmhúcháin agus tarchur orduithe chuig an GPU (i WebGL, bhí réad amháin freagrach as gach rud ag an am céanna). Soláthraítear trí chomhthéacs ar leith: GPUGléas chun acmhainní a chruthú mar uigeachtaí agus maoláin; GPUCommandEncoder chun orduithe aonair a ionchódú, lena n-áirítear na céimeanna rindreála agus ríofa; GPUCommandBuffer chun pas a fháil go dtí an scuaine rith GPU. Is féidir an toradh a sholáthar i limistéar a bhfuil baint aige le heilimint chanbhás amháin nó níos mó, nó a rindreáil gan aschur (mar shampla, agus tascanna ríomhaireachtúla á rith). De bharr scaradh na gcéimeanna is fusa oibríochtaí cruthaithe agus soláthair acmhainní a dheighilt ina láimhseálaithe éagsúla ar féidir leo oibriú ar shnáitheanna éagsúla.
  • Cur chuige difriúil maidir le stáit a láimhseáil. Soláthraíonn WebGPU dhá rud - GPURenderPipeline agus GPUComputePipeline, a ligeann duit stáit éagsúla réamhshainithe ag an bhforbróir a chur le chéile, rud a fhágann gur féidir leis an mbrabhsálaí gan acmhainní a chur amú ar obair bhreise, mar shampla scáthaitheoirí a ath-thiomsú. I measc na stáit a fhaigheann tacaíocht tá: scáthaitheoirí, leagan amach maoláin rinn agus tréithe, leagan amach grúpa greamaitheach, cumasc, doimhneacht agus patrúin, formáidí aschuir iar- rindreála.
  • Múnla ceangailteach, cosúil le huirlisí grúpála acmhainní Vulkan. Chun acmhainní a ghrúpáil ina ngrúpaí, soláthraíonn an WebGPU oibiacht GPUBindGroup, ar féidir, tráth scríofa na n-orduithe, a bheith bainteach le réada eile dá samhail lena n-úsáid i scáthaitheoirí. Ligeann cruthú grúpaí den sórt sin don tiománaí na gníomhartha ullmhúcháin riachtanacha a dhéanamh roimh ré, agus ligeann sé don bhrabhsálaí ceangail acmhainne a athrú idir glaonna tarraingthe i bhfad níos tapúla. Is féidir leagan amach na gceangal acmhainní a réamhshainiú trí úsáid a bhaint as réad GPUBindGroupLayout.

Foinse: oscailtenet.ru

Add a comment