Cuireadh tacaíocht WebGPU le foirgnimh oícheanta Firefox

В oíche Tógann Firefox le feiceáil tacaíocht sonraíochta GréasáinGPU, a sholáthraíonn comhéadan cláir do phróiseáil grafaicí 3D agus ríomhaireacht taobh GPU, atá cosúil go coincheapúil leis an API Vulkan, miotal и Díreach 3D 12. Tá an tsonraíocht á forbairt ag Mozilla, Google, Apple, Microsoft agus baill an phobail i grúpa oibre, cruthaithe ag an eagraíocht W3C.

Is é príomhsprioc WebGPU comhéadan ríomhchláraithe slán, so-úsáidte, iniompartha, agus ardfheidhmíochta a sholáthar don ardán Gréasáin chun na teicneolaíochtaí agus na cumais grafaicí 3D a sholáthraíonn APInna grafaicí córais nua-aimseartha, mar Direct3D 12 ar Windows, Metal a ghiaráil. ar macOS, agus Vulkan ar Linux. Go coincheapúil, tá difríocht mhór idir WebGPU agus WebGL ar an mbealach céanna atá Vulkan difriúil ó OpenGL, agus ag an am céanna níl sé bunaithe ar API grafaic ar leith, ach is ciseal uilíoch é a úsáideann go ginearálta na primitives íseal-leibhéil céanna a fhaightear i Vulkan, Miotal agus Díreach 3D.

Soláthraíonn WebGPU feidhmchláir JavaScript le rialú ag leibhéal níos ísle ar eagrú, próiseáil agus tarchur orduithe chuig an GPU, ag bainistiú acmhainní gaolmhara, cuimhne, maoláin, réad 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 lán-chuimsitheach a chruthú don Ghréasán nach n-oibríonn 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 agus cláir ghrafaic dhúchasacha á n-aistriú isteach i bhfoirm atá cumasaithe don ghréasán trí úsáid a bhaint as teicneolaíocht WebAssembly. Chomh maith le grafaicí 3D, clúdaíonn WebGPU freisin cumais a bhaineann le ríomhanna a dhíluchtú chuig an GPU agus tacú le forbairt scáthaithe. Shaders Is féidir a chruthú sa WebGPU Shading Language nó sonraithe san fhormáid idirmheánach SPIR-V, agus ansin aistrithe go teangacha shader tacaithe ag tiománaithe reatha.

Úsáideann WebGPU bainistíocht ar leithligh 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). Cuirtear trí chomhthéacs ar leith ar fáil:
GPUDevice chun acmhainní a chruthú ar nós uigeachtaí agus maoláin; GPUCommandEncoder chun orduithe aonair a ionchódú, lena n-áirítear céimeanna rindreála agus ríomh; GPUCommandBuffer le bheith ciúáilte le haghaidh a fhorghníomhaithe ar an GPU. Is féidir an toradh a sholáthar i limistéar a bhaineann le heilimint chanbhás amháin nó níos mó, nó é a phróiseáil gan aschur (mar shampla, agus tascanna ríomha á rith). Trí na céimeanna a scaradh bíonn sé níos éasca oibríochtaí cruthaithe acmhainní agus ullmhúcháin a dheighilt ina láimhseálaithe éagsúla ar féidir leo oibriú ar shnáitheanna éagsúla.

Is é an dara difríocht idir WebGPU agus WebGL cur chuige difriúil maidir le stáit a láimhseáil. Cuireann WebGPU dhá rud ar fáil - GPURenderPipeline agus GPUComputePipeline, a ligeann duit stáit éagsúla arna sainiú ag an bhforbróir a chur le chéile, rud a ligeann don bhrabhsá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, agus formáidí aschuir iar- rindreála.

Tugtar an tsamhail cheangailteach ar an tríú gné de WebGPU, den chuid is mó
i gcuimhne na n-uirlisí grúpála acmhainní atá i láthair i Vulkan.
Chun acmhainní a ghrúpáil le chéile, soláthraíonn WebGPU oibiacht GPUBindGroup, ar féidir a bheith bainteach le réada eile dá samhail lena n-úsáid i scáthaitheoirí agus orduithe á scríobh. 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 idir glaonna tarraingthe a athrú 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.

Cuireadh tacaíocht WebGPU le foirgnimh oícheanta Firefox

In Firefox, chun WebGPU a chumasú i about:config, tá socrú “dom.webgpu.enabled”. Teastaíonn cumadóireacht a chumasú freisin chun rindreáil CanvasContext WebRender (“gfx.webrender.all” in about:config), scríofa i Rust agus oibríochtaí rindreála ábhar leathanach a fhoinsiú allamuigh don GPU. Tá cur i bhfeidhm WebGPU bunaithe ar chód tionscadail
wgpu, scríofa i Rust agus in ann a reáchtáil ar bharr na APIs DX12, Vulkan agus Miotal ar Linux, Android, Windows agus macOS (tá tacaíocht DX11 agus OpenGL ES 3.0 á fhorbairt freisin). Ag an am céanna, tá Google ag forbairt cur chun feidhme eile, atá ar fáil i Brainse Chanáracha Cróimiam agus tá sé cumasaithe ag baint úsáide as an bhratach “chrome://flags/#enable-unsafe-webgpu”, ach go dtí seo ní oibríonn sé ach ar macOS agus Windows.

Foinse: oscailtenet.ru

Add a comment