24 points par GN⁺ 2024-08-05 | 1 commentaires | Partager sur WhatsApp
  • E-book gratuit consacré à la programmation graphique WebGPU en JavaScript
  • Pourquoi ce livre a été écrit
    • L’auteur a été interrogé sur ce qu’un enfant d’un ami devrait apprendre pour débuter en programmation graphique
    • Par le passé, OpenGL et DirectX étaient recommandés aux débutants
    • Plus récemment, de nouvelles API comme Vulkan, Metal et DirectX 12 sont apparues, mais leur code est plus complexe et elles diffèrent selon les plateformes
  • WebGPU est une nouvelle API graphique qui apporte des capacités graphiques natives sur le Web
    • Contrairement aux autres API, WebGPU joue le rôle de wrapper de plusieurs API
  • Avantages de WebGPU :
    • Relativement simple en tant que plus petit dénominateur commun entre plusieurs API
    • Utilisable sur toutes les plateformes en tant que standard d’API graphique du Web
    • Des implémentations en C++ et Rust sont aussi proposées pour les personnes intéressées par le développement natif
  • Le livre commence par une vue d’ensemble des pilotes GPU et du pipeline GPU
    • Beaucoup d’étudiants savent réaliser des applications graphiques simples, mais manquent de compréhension des interactions entre pilotes GPU et matériel
  • Puis il enseigne les bases de l’utilisation de WebGPU
    • Dessiner un triangle : l’élément fondamental de la 3D
    • Techniques de rendu 2D et contrôle de scènes 3D
  • Sujets avancés
    • Explication du calcul GPU avec WebGPU et de techniques de rendu avancées
    • Le calcul GPU sur le Web, impossible avec WebGL, devient possible
    • Cela ouvre des perspectives intéressantes, comme l’inférence IA sur GPU
  • Tutoriel final : rendu par Gaussian Splatting
    • Exemple complexe combinant calcul GPU et rendu
    • Le Gaussian Splatting est une technique récente permettant de rendre en temps réel des scènes 3D réalistes
  • Proposé sous forme de format web interactif plutôt que comme un livre traditionnel
    • Explications vidéo des concepts, références via des liens, et playground en ligne pour exécuter et modifier les exemples de code

Le résumé de GN⁺

  • "WebGPU Unleashed" est un livre gratuit qui permet d’apprendre facilement la programmation graphique WebGPU en JavaScript
  • WebGPU est relativement simple en tant que plus petit dénominateur commun entre plusieurs API graphiques, et peut être utilisé sur toutes les plateformes
  • Le livre couvre une vue d’ensemble des pilotes GPU et du pipeline, puis le dessin de triangles, les techniques de rendu 2D et 3D, jusqu’au calcul GPU avancé
  • Il permet d’apprendre à rendre en temps réel des scènes 3D réalistes grâce à des techniques récentes comme le Gaussian Splatting
  • Son format web interactif améliore l’apprentissage grâce à des vidéos, des liens et un playground en ligne

1 commentaires

 
GN⁺ 2024-08-05
Avis Hacker News
  • En travaillant sur un projet WebGPU, il a été difficile de trouver beaucoup d'informations

    • Le langage WGSL et l'API JS sont bien documentés, mais il faut beaucoup d'efforts pour trouver des réponses aux questions connexes
    • Plusieurs bugs ont été signalés sur Firefox, et quelques problèmes doivent être résolus
  • Très impressionnant et intéressant pour ceux qui veulent approfondir WebGPU

    • Le code du playground ne fonctionne pas complètement dans Safari
    • Redémarrer Safari a résolu le problème
    • Ce serait bien que la couverture du livre change en fonction de l'exemple
  • Prévoit de commencer un petit prototype de jeu pour apprendre WebGPU

    • Compte commencer son apprentissage avec ce livre
  • Le concept de playground de code avec hyperliens est fantastique

    • Le contenu du livre est également excellent
    • Félicitations et remerciements pour ce projet réalisé comme side project
  • Merci pour cet excellent livre

    • Il y a des problèmes de rendu sur le viewport mobile, surtout dans Firefox
    • La navigation se casse et le défilement du contenu fonctionne mal
  • C'est vraiment très cool et cela semble avoir demandé un gros effort

  • Conseil de ne pas trop culpabiliser même si le projet n'est pas complètement terminé

    • Il peut être amélioré avec l'aide de la communauté
  • Question sur la raison pour laquelle WebGPU n'est pas activé par défaut dans Firefox

  • Merci pour la grande quantité de bon contenu proposé gratuitement

    • Une personne plus jeune cherchait des ressources comme celle-ci
    • Apprécie le fait que ce soit centré sur la vidéo et rendu réellement intéressant
    • Suggestion de moyens d'obtenir un soutien financier via le contenu éducatif et la production vidéo