W3C ya buɗe daftarin ma'aunin WebGPU

W3C ta saki daftarin farko na ƙayyadaddun WebGPU da WebGPU Shading Language (WGSL), waɗanda ke ayyana APIs don aiwatar da ayyukan GPU irin su ƙirƙira da ƙididdigewa, da kuma yaren shader don rubuta shirye-shiryen da ke gudana akan GPU. ra'ayi mai kama da Vulkan, Metal da Direct3D 12 APIs. Ƙungiya mai aiki da ta haɗa da injiniyoyi daga Mozilla, Google, Apple da Microsoft sun shirya ƙayyadaddun bayanai.

A haƙiƙa, WebGPU ya bambanta da WebGL ta yadda Vulkan graphics API ya bambanta da OpenGL, amma ba a dogara da takamaiman API na zane ba, amma Layer ne na duniya wanda ke amfani da ƙananan matakan da aka samo a cikin Vulkan, Metal da kuma Vulkan. Kai tsaye3D. WebGPU yana ba da aikace-aikacen JavaScript tare da ƙananan iko akan ƙungiya, sarrafawa da watsa umarni zuwa GPU, sarrafa albarkatun da ke da alaƙa, ƙwaƙwalwar ajiya, buffers, abubuwa masu rubutu da haɗar shaders. Wannan tsarin yana ba ku damar cimma babban aiki don aikace-aikacen zane ta hanyar rage farashin kan kari da haɓaka ingantaccen aiki tare da GPU.

WebGPU yana ba da damar ƙirƙirar ayyukan 3D masu rikitarwa don gidan yanar gizon waɗanda ba su aiki mafi muni fiye da shirye-shirye masu zaman kansu waɗanda ke shiga kai tsaye zuwa Vulkan, Metal ko Direct3D, amma ba a haɗa su da takamaiman dandamali ba. WebGPU kuma yana ba da ƙarin damar don jigilar shirye-shiryen zane na asali zuwa sigar da aka kunna yanar gizo ta hanyar haɗawa cikin WebAssembly. Baya ga zane-zane na 3D, WebGPU kuma ya haɗa da damar da ke da alaƙa da ƙaddamar da lissafin zuwa GPU da aiwatar da inuwa.

Mabuɗin Fasalolin WebGPU:

  • Gudanar da kayan aiki daban, aikin shiryawa da watsa umarni zuwa GPU (a cikin WebGL, abu ɗaya ke da alhakin komai a lokaci ɗaya). An samar da mahallin daban-daban guda uku: GPUDevice don ƙirƙirar albarkatu kamar laushi da buffers; GPUCommandEncoder don ɓoye umarni ɗaya, gami da ma'ana da matakan lissafi; GPUCommandBuffer don wucewa zuwa layin gudu na GPU. Ana iya samar da sakamakon a cikin yanki mai alaƙa da ɗaya ko fiye da abubuwan zane, ko yin ba tare da fitarwa ba (misali, lokacin gudanar da ayyukan ƙididdiga). Rarrabuwar matakai yana sauƙaƙa don raba samar da albarkatu da samar da ayyukan zuwa ma'aikata daban-daban waɗanda zasu iya gudana akan zaren daban-daban.
  • Daban-daban tsarin kula da jihohi. WebGPU yana ba da abubuwa guda biyu - GPURenderPipeline da GPUComputePipeline, waɗanda ke ba ku damar haɗa jihohi daban-daban waɗanda mai haɓakawa ya rigaya ya bayyana, wanda ke ba da damar mai binciken ya daina ɓarna albarkatu akan ƙarin aiki, kamar sake tattara shaders. Jihohin da aka goyan baya sun haɗa da: shaders, buffer vertex da shimfidu na sifofi, shimfidu masu ɗaure kai, haɗawa, zurfin da ƙira, tsarin fitarwa bayan bayarwa.
  • Samfurin ɗaure, kamar kayan aikin haɗa kayan albarkatu na Vulkan. Don haɗa albarkatu zuwa ƙungiyoyi, WebGPU yana samar da abu na GPUBindGroup, wanda, a lokacin rubuta umarni, ana iya haɗa shi da sauran abubuwa makamantan don amfani a cikin inuwa. Ƙirƙirar irin waɗannan ƙungiyoyin yana ba direba damar aiwatar da ayyukan shirye-shiryen da suka wajaba a gaba, kuma yana ba mai binciken damar canza abubuwan haɗin gwiwa tsakanin zana kira da sauri. Za'a iya siffanta tsarin daurin albarkatun ƙasa ta amfani da abin GPUBundGroupLayout.

source: budenet.ru

Add a comment