Nella nostra puntata più recente del podcast Chrome Cast, abbiamo dedicato alcuni minuti alla scoperta delle potenzialità del Web moderno. Con siti web come quello che vediamo da The Masters, la crescente capacità di ciò che può essere fatto in un browser continua a essere uno sviluppo affascinante.
In quella conversazione, ho scherzosamente affermato che i giochi più maturi non erano in le carte per i giochi basati su browser in qualunque momento presto, e come se Internet fosse in ascolto e pronto a rimproverare quell’affermazione, è uscito un nuovo post sul blog dal blog degli sviluppatori di Chrome relativo a WebGPU: una nuova API basata sul Web che consente di eseguire molte più operazioni GPU hardware locali direttamente nel browser. Per ascoltare Google esprimerne l’importanza:
WebGPU è una nuova API per la grafica web che offre vantaggi significativi come un carico di lavoro JavaScript notevolmente ridotto per la stessa grafica e miglioramenti di oltre tre volte nelle inferenze del modello di machine learning. Ciò è possibile grazie alla programmazione GPU più flessibile e all’accesso a funzionalità avanzate che WebGL non fornisce.
WebGPU è una nuova API per il Web, che mette a disposizione moderne funzionalità hardware e consente operazioni di rendering e calcolo su una GPU , simile a Direct3D 12, Metal e Vulkan. A differenza della famiglia di API WebGL, WebGPU offre l’accesso a funzionalità GPU più avanzate e fornisce un supporto di prima classe per calcoli generali sulla GPU. L’API è progettata pensando alla piattaforma web, con un’API JavaScript idiomatica, integrazione con le promesse, supporto per l’importazione di video e un’esperienza di sviluppo raffinata con ottimi messaggi di errore.
L’API WebGPU aggiornata sarà disponibile per impostazione predefinita in Chrome 113 e verrà spedita per Dispositivi ChromeOS con supporto Vulkan, per dispositivi Windows con supporto Direct3D e per macOS. Linux e Android saranno supportati lungo la strada, così come Firefox e Safari. Per ora, per provarlo, devi passare al canale beta di Chrome 113 appena lanciato di recente.
Perché sarà importante
Avere accesso a più potenza pura della GPU di qualsiasi dispositivo è un grosso problema e renderà il Web molto più potente in futuro. Anche se non vedo questa espansione fino al punto in cui i giochi AAA fanno il loro debutto direttamente su un URL, potrei finalmente vedere che questo porta i giochi per browser al livello successivo in cui cose come quelle che vediamo attualmente su Android o iOS potrebbero eventualmente essere eseguite direttamente in un’istanza di Chrome.
Per i Chromebook, questo è estremamente entusiasmante. No, non significa che domani avremo un sacco di nuovi, dolci giochi 3D con cui scherzare , ma significa che le capacità delle applicazioni nei browser web come Chrome stanno per migliorare seriamente. Molte cose che facciamo sui nostri dispositivi hanno bisogno del supporto della GPU, quindi consentire al Web di attingere a un po’più di quell’hardware sul tuo Chromebook, laptop o Macbook in un modo più utile dovrebbe rendere le esperienze ancora più coinvolgenti lungo il percorso.
Guardalo in azione
Il team di Chrome ha effettivamente compilato alcune prove se vuoi provarlo e vedere di cosa è capace WebGPU. Babylon.js e Three.js hanno entrambi alcuni esempi di WebGPU in azione se vuoi colpire quei link e dare un’occhiata. Ancora una volta, è tutto abbastanza nuovo e non qualcosa che ci aspetteremmo di vedere gli sviluppatori sfruttare fin dall’inizio. Ma col tempo, non vedo l’ora di vedere cosa succederà a questo sviluppo.
Con l’argomentazione di lunga data secondo cui i Chromebook sono”solo un browser”, l’idea di ciò il browser che diventa sempre più potente mi rende abbastanza felice. Mentre il Web continua ad evolversi, ci avviciniamo sempre di più alla realtà in cui un browser potrebbe essere tutto ciò di cui hai bisogno. Non ci siamo ancora arrivati e i Chromebook sono chiaramente molto più capaci del semplice browser Web Chrome; ma ci piace ancora vedere grandi mosse sul Web aperto. E questo è grande.