WebGPU atbalsts tiek nodrošināts Firefox nakts versijās

Atbrīvota informācija par WebGPU palīdzības specifikācijas integrēšanu Firefox katru nakti veido, kas tagad nodrošina programmēšanas saskarni 3D grafikas apstrādei un skaitļošana GPU pusē, konceptuāli līdzīga Vulkan API, metal un Direct3D 12. Specifikāciju izstrādā Mozilla, Google, Apple, Microsoft un kopienas pārstāvji organizācijas W3C izveidotajā darba grupā.

WebGPU galvenais mērķis ir izveidot drošu, ērtu, pārnēsājamu un augstas veiktspējas programmatūras saskarni lietošanai tīmekļa platformā ar 3D grafikas tehnoloģiju un iespējām, ko nodrošina modernas sistēmgrafikas API, piemēram, Direct3D 12 operētājsistēmā Windows, Metal operētājsistēmā macOS un Vulkan operētājsistēmā Linux.

Konceptuāli, WebGPU atšķiras no WebGL tādā pašā veidā kā Vulkan no OpenGL un tas nav balstīts uz konkrētu grafisko API, drīzāk tas ir universāls slānis, kopumā izmantojot tos pašus zema līmeņa primitīvus, kas ir pieejami Vulkan, Metal un Direct3D.

Lai iespējotu WebGPU, pārlūkprogrammā Firefox ir paredzēts iestatījums “dom.webgpu.enabled” aptuveni: config. Papildus CanvasContext renderēšanai ir nepieciešams iekļaut arī WebRender kompozīcijas sistēmu ("gfx.webrender.all" aptuveni: config).

WebGPU ieviešana ir balstīta uz Wgpu projekta kodu, kas ierakstīts Rust, un var darboties papildus DX12, Vulkan un Metal API Linux, Android, Windows un MacOS (tiek izstrādāts arī DX11 un OpenGL ES 3.0 atbalsts).

Par WebGPU

WebGPU nodrošina JavaScript lietojumprogrammas ar rīkiem zemāka līmeņa kontrolei par organizāciju, komandu apstrāde un pārsūtīšana uz GPU, saistīto resursu, atmiņas, buferu, tekstūras objektu un apkopotu grafisko ēnotāju pārvaldīšana. Šī pieeja būs iespējo augstākas veiktspējas grafikas lietojumprogrammas samazinot pieskaitāmās izmaksas un palielinot darba ar GPU efektivitāti.

WebGPU ļauj izveidot pilnīgus sarežģītus 3D projektus tīmeklim Viņi nedarbojas sliktāk nekā atsevišķas programmas, kas tieši sazinās ar Vulkan, Metal vai Direct3D, bet nav saistītas ar noteiktām platformām.

arī nodrošina papildu iespējas, portējot vietējās grafikas programmas uz formu, kas var darboties, pamatojoties uz tīmekļa tehnoloģijām izmantojot WebAssembly tehnoloģiju.

Papildus 3D grafikai WebGPU aptver arī iespējas, kas saistītas ar skaitļošanas novēršanu blakus GPU un atbalsts ēnotāja attīstībai. Aizēnojumus var izveidot WebGPU ēnotāja valodā vai norādīt SPIR-V starpposma formātā, un pēc tam tos var pārtulkot ēnotāju valodās, kuras atbalsta pašreizējie draiveri.

WebGPU izmanto atsevišķu resursu pārvaldību, sagatavošanas darbu un komandu pārsūtīšanu uz GPU (WebGL tīklā par visu vienlaikus atbildēja viens objekts). Tiek piedāvāti trīs atsevišķi konteksti: GPUDerice tādu resursu kā tekstūras un buferi izveidošanai; GPUCommandEncoder, lai kodētu atsevišķas komandas, ieskaitot renderēšanas un aprēķina posmus; GPUCommandBuffer rindā uz izpildi GPU.

Otra atšķirība starp WebGPU un WebGL ir atšķirīga pieeja stāvokļu apstrādei. WebGPU tiek piedāvāti divi objekti: GPURenderPipeline un GPUComputePipeline, kas ļauj apvienot vairākus izstrādātāja iepriekš noteiktus stāvokļus, kas ļauj pārlūkprogrammai netērēt resursus papildu darbam, piemēram, ēnotāju pārkompilēšanai. Atbalstītie stāvokļi ietver: ēnotājus, virsotņu buferus un atribūtu izkārtojumus, pievienotos grupu izkārtojumus, sajaukšanu, dziļumu un modeļus, izvades formātus pēc renderēšanas.

Trešā WebGPU iezīme ir saistošais modelis, kas daudzos aspektos atgādina Vulkan esošos resursus. Lai grupētu resursus grupās, WebGPU nodrošina objektu GPUBindGroup, kuru, ierakstot komandas, var saistīt ar citiem līdzīgiem objektiem izmantošanai ēnotājos.

Šādu grupu izveide ļauj vadītājam iepriekš veikt nepieciešamās sagatavošanās darbības, un pārlūks ļauj daudz ātrāk pārslēgt resursu saites starp vilkšanas zvaniem.

Fuente: https://hacks.mozilla.org/


Atstājiet savu komentāru

Jūsu e-pasta adrese netiks publicēta. Obligātie lauki ir atzīmēti ar *

*

*

  1. Atbildīgais par datiem: AB Internet Networks 2008 SL
  2. Datu mērķis: SPAM kontrole, komentāru pārvaldība.
  3. Legitimācija: jūsu piekrišana
  4. Datu paziņošana: Dati netiks paziņoti trešām personām, izņemot juridiskus pienākumus.
  5. Datu glabāšana: datu bāze, ko mitina Occentus Networks (ES)
  6. Tiesības: jebkurā laikā varat ierobežot, atjaunot un dzēst savu informāciju.