Firefox ak Safari pou jwenn sipò WebGPU

Mozilla deside aktive sipò pou WebGPU API ak WGSL (WebGPU Shading Language) nan Firefox. Pou platfòm nan Windows Sipò WebGPU a pral aktive pa default nan Firefox 141, pwograme pou 22 Jiyè. Apre sa, yo prevwa aktive sipò WebGPU nan vèsyon pou mwa sa yo: Linux и macOS, epi apre kèk tan nan vèsyon pou platfòm nan AndroidPou aktive WebGPU manyèlman, ou ka itilize paramèt "dom.webgpu.enabled" ak "gfx.webrender.all" yo sou paj about:config la.

Nan Chrome, sipò WebGPU te disponib pa default nan vèsyon 113, ki te soti an Me 2023. Nan Safari, yo prevwa pou sipòte WebGPU a aktive pa default otòn sa a (sipò eksperimantal disponib depi Novanm 2021). Nan Firefox, sipò eksperimantal WebGPU a te prezan depi 2020, men li te aktive sèlman pa default nan vèsyon lannwit Firefox yo. Aplikasyon WebGPU Firefox la baze sou kòd pwojè WGPU a, ekri nan Rust epi ki kapab fonksyone sou API grafik Direct3D 12, Vulkan, OpenGL, ak Metal yo.

WebGPU bay yon API menm jan ak Vulkan, Metal, ak Direct3D 12 pou fè operasyon sou bò GPU a. Anplis grafik 3D, WebGPU kouvri tou kapasite ki gen rapò ak dechaj kalkil sou bò GPU a ak egzekisyon shaders. Konsèptwèlman, WebGPU diferan de ansyen spesifikasyon WebGL la menm jan API grafik Vulkan an diferan de OpenGL. An menm tan, WebGPU pa baze sou yon API grafik espesifik, men li se yon kouch inivèsèl ki itilize menm primitif ba-nivo ki disponib nan Vulkan, Metal, ak Direct3D.

WebGPU pèmèt aplikasyon JavaScript yo kontwole òganizasyon, pwosesis, ak transmisyon kòmandman bay GPU a, epi jere resous ki asosye yo, memwa, memwa tanpon, objè teksti, ak shader grafik konpile. Apwòch sa a pèmèt pi bon pèfòmans aplikasyon grafik yo lè li diminye depans jeneral epi ogmante efikasite travay ak GPU a.

Avèk WebGPU, ou ka kreye pwojè 3D konplèks ki pa depann de platfòm nan, epi ki fonksyone byen, ansanm ak pwogram endepandan ki itilize dirèkteman Vulkan, Metal, oswa Direct3D. WebGPU ofri tou kapasite adisyonèl pou pòte pwogram grafik natif natal nan yon fòm ki ka fonksyone nan navigatè, gras a konpilasyon sou WebAssembly.

Karakteristik prensipal WebGPU ak diferans ki genyen ak WebGL:

  • Jesyon separe nan resous, travay preparasyon ak transmisyon nan kòmandman nan GPU a (nan WebGL yon objè te responsab pou tout bagay nan yon fwa). Yo bay twa kontèks separe: GPUDevice pou kreye resous tankou tèkstur ak tanpon; GPUCommandEncoder pou kode kòmandman endividyèl, ki gen ladan etap rann ak kalkil; GPUCommandBuffer yo dwe mete ann kriye pou ekzekisyon sou GPU la. Rezilta a ka rann nan yon zòn ki asosye ak youn oswa plis eleman twal, oswa trete san pwodiksyon (pa egzanp, lè w ap fè travay kalkile). Separe etap yo fè li pi fasil yo separe kreyasyon resous ak operasyon preparasyon nan moun kap okipe diferan ki ka kouri sou fil diferan.
  • Yon apwòch diferan nan pwosesis eta yo. WebGPU ofri de objè - GPURenderPipeline ak GPUComputePipeline, ki pèmèt ou konbine plizyè eta pre-defini pa pwomotè a, ki pèmèt navigatè a pa gaspiye resous sou travay adisyonèl, tankou recompiling shaders. Eta ki sipòte yo enkli: shaders, tanpon somè ak layout atribi, fòm gwoup kolan, melanje, pwofondè ak modèl, ak fòma pwodiksyon apre rann.
  • Yon modèl obligatwa anpil tankou karakteristik gwoup resous Vulkan la. Pou gwoupe resous yo ansanm, WebGPU bay yon objè GPUBindGroup, ki ka asosye ak lòt objè ki sanble pou itilize nan shaders pandan y ap ekri kòmandman yo. Kreye gwoup sa yo pèmèt chofè a fè aksyon preparasyon ki nesesè yo davans, epi li pèmèt navigatè a chanje koneksyon resous ant apèl trase pi vit. Ka Layout nan lyezon resous yo ka predefini lè l sèvi avèk objè a GPUBindGroupLayout.

Sous: opennet.ru

Achte hosting serye pou sit ki gen pwoteksyon DDoS, sèvè VPS VDS 🔥 Achte yon hébergement sit entènèt serye ak pwoteksyon DDoS, sèvè VPS VDS | ProHoster