Après Safari et Firefox, Chrome prépare l'arrivée de WebGPU

Florian Innocente |

La version de développement de Chrome 94 est l'occasion pour Google de commencer l'intégration de WebGPU dans son navigateur. Un effort déjà effectué chez Apple pour Safari et entamé aussi par Mozilla dans Firefox depuis plus d'un an.

WebGPU est le successeur annoncé de WebGL, un ensemble d'API spécialisé dans le rendu d'images et basé à l'origine sur le standard OpenGL. Un OpenGL qu'Apple a embrassé puis fini par laisser de côté tandis qu'elle développait sa propre famille d'instructions 3D : Metal.

En 2017, après diverses expérimentations de Google pour faire évoluer WebGL qui montrait ses limites, Apple a proposé au consortium W3C de le remplacer par une API 3D ouverte et repensée : WebGPU. Ces nouvelles instructions permettent aux développeurs web de créer des contenus 3D dont le rendu et l'animation pourront être pris en charge par la carte graphique de l'appareil, délestant ainsi le processeur principal.

WebGPU repose sur une syntaxe inspirée de Metal pour dialoguer avec la carte graphique. Mais ça ne peut être une transposition pur sucre des API 3D d'Apple puisque WebGPU a vocation à être optimisé pour Direct3D 12 sur Windows ainsi que Vulkan (des API 3D multiplateformes qui prennent la suite d'OpenGL).

Chez Apple, l'intégration de WebGPU se fait encore au sein des versions Technology Preview de Safari. Le chantier est toujours en cours pour Firefox tandis que Google n'escompte pas achever le test de cette fonction avant Chrome 97 prévu pour le 26 janvier 2022.

Il faut dire que WebGPU lui-même n'est pas encore finalisé dans sa première mouture, ses caractéristiques font toujours l'objet de discussions et de développements au sein du W3C.

Source
Tags
avatar YetOneOtherGit | 

Le lent abandon de l’héritage d’IrisGL dont les fondations architecturales et conceptuelles remontent aux débuts des années 90 ne peut qu’être salué.

Pour sympathique qu’il fut WebGL n’en restait pas moins une simple encapsulation d’OpenGL au travers une API JS avec tous les anachronismes de modèle de programmation que cela implique.

avatar GaspardProut | 

Commentaire inutile

Il y a une forte ressemblance avec le logo de Mydrugs dans la série « How to Sell Drugs Online (Fast) »…

avatar v1nce29 | 

Quelqu'un sait si on peut manipuler l'équivalent de offscreencanvas dans un worker dans le contexte webgpu avec Firefox ?

avatar YetOneOtherGit | 

@v1nce29

"Quelqu'un sait si on peut manipuler l'équivalent de offscreencanvas dans un worker dans le contexte webgpu avec Firefox ?"

Je ne vois pas de raison pour que ce ne soit pas possible de ce que je connais de WebGPU, tu as essayé de faire du OffScreen sans succès?

avatar v1nce29 | 

Je voulais manipuler des canvas dans le worker, quand j'avais essayé je n'avais pas trouvé de solution avec Firefox : il fallait le faire dans le thread principal.
Je viens de regarder la doc sur MDN https://developer.mozilla.org/fr/docs/Web/API/OffscreenCanvas contrairement à ce que je pensais offscreencanvas semble supporté. Mais uniquement partiellement.
Il faudra que je vois ce que ça donne.

PS: Si j'en crois https://caniuse.com/offscreencanvas FF ne support que le contexte WebGL et pas la 2d.

avatar YetOneOtherGit | 

@v1nce29

"Je voulais manipuler des canvas dans le worker, quand j'avais essayé je n'avais pas trouvé de solution avec Firefox : il fallait le faire dans le thread principal."

Je n’ai pas poussé l’appropriation plus loin qu’un travail d’analyse de L’API et du modèle de programmation sur documents et quelques petits tests pratiques.

Dans l’esprit l’approche est effectivement assez proche de celle de Metal.

avatar jackhal | 

Honnêtement, le péquin lambda s'en fiche. Le nombre d'API qui ne concernent qu'une poignée de sites, mon dieu...

Un truc que j'aimerais beaucoup, c'est qu'Apple finisse par sortir de l'expérimentation loading=lazy, par exemple. Ça c'est le genre de trucs qui peut concerner une immense proportion du web. Ça ou l'implémentation de JPEG XL.

Combien de sites affichent des images ?
Combien de sites font de la 3D avancée qui mériterait une super API ?
...bon, voilà.

avatar YetOneOtherGit | 

@jackhal

"Honnêtement, le péquin lambda s'en fiche."

Le nombre de trucs dont le péquin moyen se fiche et sans lesquels rien de ses usages technologique ne serait possible.

Une API 3d TR moderne sur le Web ce n’est pas rien loin s’en faut.

avatar YetOneOtherGit | 

@jackhal

"Combien de sites font de la 3D avancée qui mériterait une super API ?"

Sur ce principe tu n’aurais pas grand chose en terme de technologie à te mettre sous la main 🙄🙄

CONNEXION UTILISATEUR