Firefox en Safari kry WebGPU-ondersteuning

Mozilla het besluit om ondersteuning vir die WebGPU API en WGSL (WebGPU Shading Language) in Firefox te aktiveer. Vir die platform Windows WebGPU-ondersteuning sal standaard in Firefox 141 geaktiveer wees, wat vir 22 Julie geskeduleer is. WebGPU-ondersteuning sal dan vir die volgende maande in weergawes geaktiveer word: Linux и macOS, en na 'n rukkie in die weergawe vir die platform AndroidOm WebGPU handmatig te aktiveer, kan jy die parameters "dom.webgpu.enabled" en "gfx.webrender.all" op die about:config-bladsy gebruik.

In Chrome is WebGPU-ondersteuning by verstek aangebied in weergawe 113, wat in Mei 2023 vrygestel is. In Safari word beplan om WebGPU-ondersteuning by verstek hierdie herfs geaktiveer te word (eksperimentele ondersteuning is sedert November 2021 beskikbaar). In Firefox is eksperimentele WebGPU-ondersteuning sedert 2020 teenwoordig, maar is slegs by verstek geaktiveer in nagtelike weergawes van Firefox. Firefox se WebGPU-implementering is gebaseer op die WGPU-projekkode, geskryf in Rust en in staat om bo-op die Direct3D 12-, Vulkan-, OpenGL- en Metal-grafika-API's te loop.

WebGPU bied 'n soortgelyke API as Vulkan, Metal en Direct3D 12 vir die uitvoering van bewerkings aan die GPU-kant. Benewens 3D-grafika, dek WebGPU ook vermoëns wat verband hou met die aflaai van berekeninge na die GPU-kant en die uitvoering van shaders. Konseptueel verskil WebGPU van die ou WebGL-spesifikasie op dieselfde manier as wat die Vulkan-grafika-API van OpenGL verskil. Terselfdertyd is WebGPU nie gebaseer op 'n spesifieke grafiese API nie, maar is dit 'n universele laag wat dieselfde lae-vlak primitiwe gebruik wat beskikbaar is in Vulkan, Metal en Direct3D.

WebGPU stel JavaScript-toepassings in staat om die organisasie, verwerking en oordrag van bevele na die GPU te beheer, en geassosieerde hulpbronne, geheue, buffers, tekstuurobjekte en saamgestelde grafiese shaders te bestuur. Hierdie benadering maak hoër werkverrigting van grafiese toepassings moontlik deur oorhoofse koste te verminder en die doeltreffendheid van werk met die GPU te verhoog.

Met WebGPU kan jy platform-agnostiese, komplekse 3D-projekte skep wat net so goed presteer as losstaande programme wat Vulkan, Metal of Direct3D direk gebruik. WebGPU bied ook bykomende vermoëns vir die oordrag van inheemse grafiese programme na 'n vorm wat in blaaiers kan loop, danksy samestelling na WebAssembly.

Belangrike kenmerke van WebGPU en verskille van WebGL:

  • Afsonderlike bestuur van hulpbronne, voorbereidende werk en oordrag van opdragte na die GPU (in WebGL was een voorwerp op een slag verantwoordelik vir alles). Drie afsonderlike kontekste word verskaf: GPU-toestel vir die skep van hulpbronne soos teksture en buffers; GPUCommandEncoder vir die enkodering van individuele opdragte, insluitend lewering en berekeningstadiums; GPUCommandBuffer om in die tou te staan ​​vir uitvoering op die GPU. Die resultaat kan gelewer word in 'n area wat met een of meer doekelemente geassosieer word, of sonder uitset verwerk word (byvoorbeeld wanneer rekenaartake uitgevoer word). Deur die stadiums te skei, maak dit makliker om hulpbronskepping en voorbereidingsbewerkings te skei in verskillende hanteerders wat op verskillende drade kan loop.
  • 'n Ander benadering tot verwerking van state. WebGPU bied twee voorwerpe - GPURenderPipeline en GPUComputePipeline, wat jou toelaat om verskeie toestande wat vooraf deur die ontwikkelaar gedefinieer is, te kombineer, wat die blaaier toelaat om nie hulpbronne te mors op bykomende werk, soos die hersamestelling van shaders nie. Ondersteunde toestande sluit in: skakerings, hoekpuntbuffer en kenmerkuitlegte, taai groepuitlegte, vermenging, diepte en patrone, en na-weergawe uitsetformate.
  • 'n Bindende model baie soos Vulkan se hulpbrongroeperingskenmerke. Om hulpbronne saam te groepeer, verskaf WebGPU 'n GPUBindGroup-objek, wat met ander soortgelyke voorwerpe geassosieer kan word vir gebruik in shaders terwyl opdragte geskryf word. Die skep van sulke groepe laat die bestuurder toe om vooraf die nodige voorbereidende aksies uit te voer, en laat die blaaier toe om hulpbronbindings tussen trekoproepe baie vinniger te verander. Die uitleg van hulpbronbindings kan vooraf gedefinieer word deur die GPUBindGroupLayout-objek te gebruik.

Bron: opennet.ru

Koop betroubare hosting vir werwe met DDoS-beskerming, VPS VDS-bedieners 🔥 Koop betroubare webwerfhosting met DDoS-beskerming, VPS VDS-bedieners | ProHoster