W3C waxay daaha ka rogtay qabyo qoraalka heerka WebGPU

W3C waxay soo saartay qoraaladii ugu horeeyay ee WebGPU iyo WebGPU Shading Language (WGSL), kuwaas oo qeexaya API-yada lagu qabanayo hawlaha GPU sida samaynta iyo xisaabinta, iyo sidoo kale luuqada hadhka ah ee qorista barnaamijyada ku shaqeeya GPU. fikrad ahaan la mid ah Vulkan, Birta iyo Direct3D 12 APIs. Tilmaamaha waxaa diyaariyey koox shaqo oo ay ku jiraan injineerada Mozilla, Google, Apple iyo Microsoft.

Fikrad ahaan, WebGPU waxay kaga duwan tahay WebGL si la mid ah sida Vulkan garaafyada API uga duwan yahay OpenGL, laakiin kuma salaysna API garaafyo gaar ah, laakiin waa lakab caalami ah oo isticmaala isla heerarka hoose ee laga helo Vulkan, Birta iyo Direct3D. WebGPU waxay siisaa codsiyada JavaScript oo leh kontorool hoose oo ku saabsan ururka, habaynta iyo gudbinta amarada GPU-da, maaraynta agabka la xidhiidha, xusuusta, kaydinta, walxaha qoraalka iyo garaafyada la soo ururiyey. Habkani wuxuu kuu ogolaanayaa inaad ku guulaysato waxqabadka sare ee codsiyada sawirada adiga oo yareynaya kharashka dheeraadka ah iyo kordhinta waxtarka la shaqeynta GPU.

WebGPU waxay suurtogal ka dhigtaa in loo abuuro mashruucyo 3D ah oo adag oo loogu talagalay Shabakadda kuwaas oo aan ka shaqaynayn wax ka xun barnaamijyada taagan ee si toos ah u gala Vulkan, Metal ama Direct3D, laakiin aan ku xidhnayn goobo gaar ah. WebGPU waxa kale oo ay bixisaa awoodo dheeraad ah oo loogu gudbinayo barnaamijyada garaafyada asalka ah qaab mareegaha karti u leh iyada oo la isku duba rido WebAssembly. Marka laga soo tago garaafyada 3D, WebGPU waxa kale oo ku jira awoodaha la xidhiidha rarista xisaabaadka GPU iyo fulinta hadhka.

Astaamaha muhiimka ah ee WebGPU:

  • Maareynta kala duwan ee ilaha, shaqada diyaarinta iyo gudbinta amarada GPU-da (WebGL, hal shay ayaa mas'uul ka ahaa wax walba hal mar). Saddex arrimood oo kala duwan ayaa la bixiyaa: Qalabka GPU ee abuurista agabka sida textures iyo baffers; GPUCommandEncoder si loo codeeyo amarada gaarka ah, oo ay ku jiraan samaynta iyo heerarka xisaabinta; GPUCommandBuffer si loogu gudbo safka orodka GPU. Natiijadu waxay noqon kartaa meel la xidhiidha hal ama in ka badan canvas, ama la samayn karaa iyada oo aan la soo saarin (tusaale ahaan, marka la wado hawlaha xisaabinta). Kala-saarista heerarku waxay sahlaysaa in la kala saaro kheyraadka abuurista iyo bixinta hawlgallada loo kala saaro maamulayaal kala duwan oo ku socon kara dunta kala duwan.
  • Hab ka duwan wax ka qabashada dawladaha. WebGPU waxay bixisaa laba walxood - GPURenderPipeline iyo GPUComputePipeline, kuwaas oo kuu oggolaanaya inaad isku geyso gobollo kala duwan oo uu horay u qeexay horumariyaha, taas oo suurtogal ka dhigaysa in browserku uusan ku lumin kheyraadka shaqo dheeraad ah, sida dib u habeynta shaders. Dawladaha la taageero waxaa ka mid ah: hadhka, duleelka dhabarka iyo qaabaynta sifada, qaabaynta kooxeed dhegdheg, isku darka, qoto dheer iyo qaababka, qaababka wax soo saarka kadib.
  • Qaab isku xidhan, oo la mid ah agabka kooxaynta khayraadka Vulkan. Si loo kooxeeyo agabka kooxo, WebGPU waxay bixisaa shay GPUBindGroup, kaas oo, wakhtiga qorista amarrada, lala xidhiidhin karo walxaha kale ee la midka ah ee loo isticmaalo hadhka. Abuuritaanka kooxaha noocan oo kale ah waxay u ogolaataa darawalka inuu horay u sameeyo ficilada diyaarinta ee lagama maarmaanka ah, waxayna u ogolaataa browserka inuu bedelo isku xirka kheyraadka ee u dhexeeya wicitaanada soo jiidashada si dhakhso ah. Nashqada isku xidhka ilaha waxa lagu sii qeexi karaa iyadoo la isticmaalayo shayga GPUBindGroupLayout.

Source: opennet.ru

Add a comment