I-W3C yembula okusalungiswa okujwayelekile kwe-WebGPU

I-W3C ikhiphe okusalungiswa kokuqala kokucaciswa kwe-WebGPU kanye ne-WebGPU Shading Language (WGSL), echaza ama-API okwenza imisebenzi ye-GPU efana nokuhlinzeka nokwenza ikhompuyutha, kanye nolimi lwe-shader lwezinhlelo zokubhala ezisebenza ku-GPU. ngokomqondo afana nama-API we-Vulkan, Metal kanye ne-Direct3D 12. Imininingwane yalungiselelwa iqembu elisebenzayo elihlanganisa onjiniyela be-Mozilla, Google, Apple kanye ne-Microsoft.

Ngokucatshangwayo, i-WebGPU ihluke ku-WebGL ngendlela efanayo naleyo i-Vulkan graphics API ehluke ngayo ku-OpenGL, kodwa ayisekelwe ku-API yemifanekiso ethile, kodwa iyingqimba yendawo yonke esebenzisa ama-primitives asezingeni eliphansi afanayo atholakala ku-Vulkan, Metal and I-Direct3D. I-WebGPU inikeza izinhlelo zokusebenza ze-JavaScript ngezinga eliphansi lokulawula inhlangano, ukucutshungulwa kanye nokudluliselwa kwemiyalo ku-GPU, ukuphatha izinsiza ezihlotshaniswayo, inkumbulo, amabhafa, izinto zokuthungwa nezithunzi zezithombe ezihlanganisiwe. Le ndlela ikuvumela ukuthi ufinyelele ukusebenza okuphezulu kwezinhlelo zokusebenza zezithombe ngokunciphisa izindleko eziphezulu kanye nokukhulisa ukusebenza kahle kokusebenza ne-GPU.

I-WebGPU yenza kube nokwenzeka ukudala amaphrojekthi ayinkimbinkimbi e-3D eWebhu angasebenzi kabi kunezinhlelo ezizimele ezifinyelela ngokuqondile ku-Vulkan, Metal noma i-Direct3D, kodwa ezingaboshelwe kumapulatifomu athile. I-WebGPU futhi ihlinzeka ngamakhono engeziwe okuthutha izinhlelo zezithombe zomdabu zibe ifomu elinikwe amandla iwebhu ngokuhlanganisa ku-WebAssembly. Ngaphezu kwemifanekiso ye-3D, i-WebGPU iphinde ihlanganise namakhono ahlobene nokulayisha izibalo ku-GPU nokwenza imithunzi.

Izici ezibalulekile zeWebGPU:

  • Ukuphathwa okuhlukene kwezinsiza, umsebenzi wokulungiselela kanye nokudluliselwa kwemiyalo ku-GPU (ku-WebGL into eyodwa yayinesibopho sayo yonke into ngesikhathi esisodwa). Kunikezwe okuqukethwe okuthathu okuhlukene: I-GPUDevice yokudala izinsiza ezifana nokuthungwa namabhafa; I-GPUCommandEncoder yombhalo wekhodi imiyalo ngayinye, okuhlanganisa ukunikeza nezigaba zokubala; I-GPUCommandBuffer izofakwa kulayini ukuze isetshenziswe ku-GPU. Umphumela unganikezwa endaweni ehlotshaniswa ne-elementi yekhanvasi eyodwa noma ngaphezulu, noma kusetshenzwe ngaphandle kokuphumayo (isibonelo, uma usebenzisa imisebenzi yekhompyutha). Ukwehlukanisa izigaba kwenza kube lula ukuhlukanisa ukwakhiwa kwensiza kanye nemisebenzi yokulungiselela kube izibambi ezihlukene ezingasebenza emicu ehlukene.
  • Indlela ehlukile yokucubungula izifunda. I-WebGPU inikezela ngezinto ezimbili - i-GPURenderPipeline kanye ne-GPUComputePipeline, ekuvumela ukuthi uhlanganise izifunda ezahlukahlukene ezichazwe ngaphambilini umthuthukisi, okuvumela isiphequluli ukuthi singamoshi izinsiza emsebenzini owengeziwe, njengama-shader okubuyisela. Izimo ezisekelwayo zifaka: imithunzi, i-vertex buffer nezakhiwo zesibaluli, izakhiwo zeqembu ezinamathelayo, ukuxubana, ukujula namaphethini, namafomethi okukhiphayo ngemva kokunikezwa.
  • Imodeli ebophayo efana nezici zokuqoqa izisetshenziswa ze-Vulkan. Ukuqoqa izinsiza ndawonye, ​​i-WebGPU ihlinzeka ngento ye-GPUBindGroup, engahlotshaniswa nezinye izinto ezifanayo ukuze zisetshenziswe kumathunzi ngenkathi ubhala imiyalo. Ukudala amaqembu anjalo kuvumela umshayeli ukuthi enze izenzo zokulungiselela ezidingekayo kusengaphambili, futhi kuvumela isiphequluli ukuthi siguqule ukubophezela kwezinsiza phakathi kwezingcingo zokudonsa ngokushesha okukhulu. Isakhiwo sokubophezela kwensiza singachazwa kusengaphambili kusetshenziswa into ye-GPUBindGroupLayout.

Source: opennet.ru

Engeza amazwana