Në Chrome do të përfshihet mbështetje për WebGPU

Kompania Google shpalli se do të përfshijë si parazgjedhje mbështetje për API-në grafike WebGPU dhe gjuhën e shaders WGSL (Gjuha e Shaders WebGPU) në degën Chrome 113, lëshimi i së cilës pritet më 2 maj. WebGPU ofron një ndërfaqe programimi të ngjashme me Vulkan, Metal dhe Direct3D 12 për të realizuar operacione në anën e GPU-së, të tilla si renderimi dhe llogaritjet, si dhe lejon përdorimin e gjuhës së shaders për të shkruar programe që punojnë në anën e GPU-së. Implementimi i WebGPU do të përfshihet fillimisht vetëm në ndërtimet për ChromeOS, macOS dhe Windows. Për Linux dhe Android, mbështetja për WebGPU do të aktivizohet më vonë.

PĂ«rveç Chrome, mbĂ«shtetje eksperimentale pĂ«r WebGPU po testohet qĂ« nga prilli i vitit 2020 nĂ« Firefox dhe nga nĂ«ntori i vitit 2021 nĂ« Safari. PĂ«r tĂ« aktivizuar WebGPU nĂ« Firefox, duhen vendosur flamujt dom.webgpu.enabled dhe gfx.webgpu.force-enabled nĂ« about:config. Ende nuk ka informacion nĂ« lidhje me planet pĂ«r aktivizimin e WebGPU si parazgjedhje nĂ« Firefox dhe Safari. Implementimet nĂ« zhvillim pĂ«r Firefox dhe Chrome tĂ« WebGPU janĂ« nĂ« dispozicion nĂ« formĂ«n e bibliotekave tĂ« veçanta — Dawn (C++) dhe wgpu (Rust), tĂ« cilat mund tĂ« pĂ«rdoren pĂ«r integrimin e mbĂ«shtetjes WebGPU nĂ« aplikacionet e tyre. Po ashtu, po pĂ«rpiken tĂ« shtohet mbĂ«shtetje pĂ«r WebGPU nĂ« bibliotekat popullore JavaScript, qĂ« fillimisht pĂ«rdorin WebGL. PĂ«r shembull, mbĂ«shtetje e plotĂ« pĂ«r WebGPU Ă«shtĂ« shpallur tashmĂ« nĂ« Babylon.js, ndĂ«rsa mbĂ«shtetje e pjesshme nĂ« Three.js, PlayCanvas dhe TensorFlow.js.

Koncepcioni i WebGPU është ndryshe nga WebGL në përgjithësi ashtu siç është API grafike Vulkan ndryshe nga OpenGL, por WebGPU nuk mbështetet në një API të caktuar grafik, por përfaqëson një ndërfaqe universale që përdor të njëjtat primitive të nivelit të ulët që gjenden në Vulkan, Metal dhe Direct3D. WebGPU ofron aplikacioneve në JavaScript mjete për kontroll të nivelit të ulët mbi organizimin, përpunimin dhe dërgimin e komandave në GPU, menaxhimin e burimeve të lidhura, memorjes, bufereve, objekteve të teksturave dhe shaders grafike të kompozuara. Ky qasje lejon arritjen e performancës më të lartë në aplikacionet grafike përmes uljes së kostove dhe rritjes së efikasitetit në punën me GPU.

WebGPU ofron mundësinë për të krijoni projekte komplekse 3D për Web që funksionojnë njësoj si programet e veçanta që përdorin Vulkan, Metal ose Direct3D, por pa qenë të lidhura me platforma të caktuara. WebGPU gjithashtu ofron mundësi shtesë për portimin e programeve grafike natyrore në një format që mund të funksionojë mbi teknologjitë web, përmes kompilimit në WebAssembly. Përveç grafikës 3D, WebGPU përfshin dhe mundësi të lidhura me ekzekutimin e llogaritjeve në anën e GPU dhe ekzekutimin e shaderëve.

Karakteristikat kryesore të WebGPU:

  • Menaxhimi i ndarĂ« i burimeve, punĂ«ve pĂ«rgatitore dhe transferimit tĂ« komandave nĂ« GPU (nĂ« WebGL njĂ« objekt iu pĂ«rgjigj tĂ« gjitha nĂ« tĂ« njĂ«jtĂ«n kohĂ«). Ofron tre kontekste tĂ« veçanta: GPUDevice pĂ«r krijimin e burimeve, si teksturat dhe tamponĂ«t; GPUCommandEncoder pĂ«r kodimin e komandave tĂ« veçanta, duke pĂ«rfshirĂ« fazat e renderimit dhe llogaritjes; GPUCommandBuffer pĂ«r t'u dĂ«rguar pĂ«r ekzekutim nĂ« GPU. Rezultati mund tĂ« vizatohet nĂ« njĂ« zonĂ« tĂ« lidhur me njĂ« ose mĂ« shumĂ« elemente canvas, ose tĂ« pĂ«rpunuar pa dalĂ« (pĂ«r shembull, gjatĂ« kryerjes sĂ« detyrave llogaritĂ«se). Ndarja e fazave lehtĂ«son ndarjen e krijimit tĂ« burimeve dhe operacioneve pĂ«rgatitore nĂ« menaxherĂ« tĂ« ndryshĂ«m, tĂ« cilĂ«t mund tĂ« ekzekutohen nĂ« Threads tĂ« ndryshme.
  • NjĂ« qasje tjetĂ«r pĂ«r procesimin e gjendjeve. NĂ« WebGPU ofrohen dy objekte — GPURenderPipeline dhe GPUComputePipeline, qĂ« mundĂ«sojnĂ« kombinimin e gjendjeve tĂ« ndryshme, tĂ« paracaktuara nga zhvilluesi, duke i dhĂ«nĂ« mundĂ«sinĂ« shfletuesit qĂ« tĂ« mos shpenzojĂ« burime nĂ« kryerjen e punĂ«ve shtesĂ«, tĂ« tilla si rikompilimi i shaderĂ«ve. NdĂ«r gjendjet e mbĂ«shtetura: shaderĂ«t, pĂ«rshkrimet e tamponĂ«ve tĂ« verge dhe atributeve, pĂ«rshkrimet e grupeve tĂ« lidhura, pĂ«rzierja, thellĂ«sia dhe masat, format e daljes pas renderimit.
  • Modeli i lidhjeve, i ngjashĂ«m me mjetet e grupimit tĂ« burimeve tĂ« pranishme nĂ« Vulkan. PĂ«r tĂ« bashkuar burimet nĂ« grupe, WebGPU ofron objektin GPUBindGroup, i cili gjatĂ« regjistrimit tĂ« komandave mund tĂ« lidhet me objekte tĂ« tjera tĂ« ngjashme pĂ«r t'u pĂ«rdorur nĂ« shaderĂ«. Krijimi i grupeve tĂ« tilla i jep mundĂ«sinĂ« drejtuesit qĂ« tĂ« kryejĂ« paraprakisht veprimet pĂ«rgatitore tĂ« nevojshme, dhe shfletuesit i lejon tĂ« ndryshojĂ« ndĂ«rlidhjet e burimeve shumĂ« mĂ« shpejt midis thirrjeve tĂ« renderimit. ShpĂ«rndarja e ndĂ«rlidhjeve tĂ« burimeve mund tĂ« pĂ«rcaktohet paraprakisht duke pĂ«rdorur objektin GPUBindGroupLayout.

Burimi: opennet.ru

Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster