WebGPU desteği, Firefox'un gecelik sürümlerine geliyor

Yayınlanan WebGPU yardım spesifikasyonunun entegre edilmesine ilişkin bilgiler Firefox'ta her gece derlemeler, ki bu şimdi 3D grafik işleme için bir programlama arayüzü sağlar ve GPU tarafında hesaplama, kavramsal olarak Vulkan API, metal ve Direct3D 12'ye benzer. Spesifikasyon, W3C organizasyonu tarafından oluşturulan bir çalışma grubunda Mozilla, Google, Apple, Microsoft ve topluluk temsilcileri tarafından geliştirilmektedir.

WebGPU'nun temel amacı, güvenli, kullanışlı, taşınabilir ve yüksek performanslı bir yazılım arayüzü oluşturmaktır. 3D grafik teknolojisi ve Windows'ta Direct3D 12, macOS'ta Metal ve Linux'ta Vulkan gibi modern sistem grafik API'leri tarafından sağlanan yeteneklerle web platformunda kullanım için.

Kavramsal olarak, WebGPU, Vulkan'ın OpenGL'den farklı olması gibi WebGL'den farklıdır. ve belirli bir grafik API'sine dayalı değildir, bunun yerine genel olarak Vulkan, Metal ve Direct3D'de bulunan aynı düşük seviyeli temelleri kullanan evrensel bir katmandır.

Firefox'ta, WebGPU'yu etkinleştirmek için "dom.webgpu.enabled" ayarı sağlanmıştır. about: config. CanvasContext'i oluşturmaya ek olarak, WebRender kompozisyon sisteminin dahil edilmesini de gerektirir (about: config'de "gfx.webrender.all").

WebGPU uygulaması, Rust'ta yazılan wgpu proje koduna dayanmaktadır ve Linux, Android, Windows ve macOS'ta DX12, Vulkan ve Metal API'lerinin üzerinde çalışabilir (DX11 ve OpenGL ES 3.0 desteği de geliştirme aşamasındadır).

WebGPU hakkında

WebGPU'su JavaScript uygulamalarına alt düzey kontrol için araçlar sağlar organizasyon hakkında komutların işlenmesi ve GPU'ya iletilmesi, ilgili kaynakları, belleği, tamponları, doku nesnelerini ve derlenmiş grafik gölgelendiricileri yönetme. Bu yaklaşım daha yüksek performanslı grafik uygulamalarını etkinleştirir ek yükü azaltarak ve GPU ile çalışmanın verimliliğini artırarak.

WebGPU'su web için eksiksiz karmaşık 3B projeler oluşturmayı mümkün kılar Vulkan, Metal veya Direct3D ile doğrudan iletişim kuran bağımsız programlardan daha kötü performans göstermezler, ancak belirli platformlara bağlı değildirler.

ayrıca yerel grafik programlarını taşıyarak ek yetenekler sağlar web tabanlı teknolojiler temelinde çalışabilen bir forma WebAssembly teknolojisini kullanarak.

3D grafiklere ek olarak, WebGPU ayrıca GPU'nun yanında bilgi işlemin ortadan kaldırılmasıyla ilgili olasılıkları da kapsar ve gölgelendirici geliştirme desteği. Gölgelendiriciler WebGPU gölgelendirici dilinde oluşturulabilir veya SPIR-V ara biçiminde belirtilebilir ve ardından mevcut sürücüler tarafından desteklenen gölgelendirici dillerine çevrilebilir.

WebGPU'su ayrı kaynak yönetimi, hazırlık çalışması ve komut aktarımı kullanır GPU'ya (WebGL'de, aynı anda her şeyden bir nesne sorumluydu). Üç ayrı bağlam sağlanır: Dokular ve tamponlar gibi kaynaklar oluşturmak için GPUDevice; İşleme ve hesaplama aşamaları dahil olmak üzere ayrı komutları kodlamak için GPUCommandEncoder; GPUCommandBuffer, GPU'da yürütme için kuyruğa girer.

WebGPU ve WebGL arasındaki ikinci fark, durumların işlenmesine yönelik farklı bir yaklaşımdır. WebGPU'da iki nesne önerilmiştir: GPURenderPipeline ve GPUComputePipeline, geliştirici tarafından önceden tanımlanmış çeşitli durumların birleştirilmesine izin verir, bu da tarayıcının gölgelendiricileri yeniden derlemek gibi ek işler için kaynakları boşa harcamamasına izin verir. Desteklenen durumlar şunları içerir: gölgelendiriciler, köşe tamponları ve öznitelik düzenleri, ekli grup düzenleri, karıştırma, derinlik ve desenler, oluşturmadan sonra çıktı formatları.

WebGPU'nun üçüncü özelliği bağlanma modelidirbirçok açıdan Vulkan'da bulunan kaynakları bir araya getirme araçlarına benziyor. Kaynakları gruplar halinde gruplamak için WebGPU, komutlar yazarak gölgelendiricilerde kullanılmak üzere diğer benzer nesnelerle ilişkilendirilebilen bir GPUBindGroup nesnesi sağlar.

Bu tür grupların oluşturulması, sürücünün gerekli hazırlık eylemlerini önceden gerçekleştirmesine olanak tanır ve tarayıcı, çağrı çağrıları arasında kaynak bağlantılarını çok daha hızlı değiştirmesine izin verir.

kaynak: https://hacks.mozilla.org/


Yorumunuzu bırakın

E-posta hesabınız yayınlanmayacak. Gerekli alanlar ile işaretlenmiştir *

*

*

  1. Verilerden sorumlu: AB Internet Networks 2008 SL
  2. Verilerin amacı: Kontrol SPAM, yorum yönetimi.
  3. Meşruiyet: Onayınız
  4. Verilerin iletilmesi: Veriler, yasal zorunluluk dışında üçüncü kişilere iletilmeyecektir.
  5. Veri depolama: Occentus Networks (AB) tarafından barındırılan veritabanı
  6. Haklar: Bilgilerinizi istediğiniz zaman sınırlayabilir, kurtarabilir ve silebilirsiniz.