(Test de Livre) Practical Rendering and Computation with Direct3D 11 (oui oui, review en french!)





Practical Rendering and Computation with Direct3D 11

Un petit book de prog en anglais, ça vous tente? Oui je sais pour un blog francophone ça commence bien, mais pas le choix, ce livre n’est dispo qu’en english comme la plus grande partie de la littérature technique. Donc CRC Press m’a envoyé il y a quelques jours ce bouquin sur Direct3D 11 ou sur… euh… Direct3D 1? :D

Practical Rendering and Computation with Direct3D 11


Practical Rendering and Computation with Direct3D 11 est un livre tout récent (publié fin juillet 2011) et son ISBN est 978-1-56881-720-0 (l’isbn??? pour ceux et celles qui découvrent, ce numéro permet de référencer de manière unique un livre et en général, c’est tout ce dont a besoin votre libraire pour vous commander un livre). Vous pouvez commander ce livre directement chez “>CRC Press ou sur Amazon.

Practical Rendering and Computation with Direct3D 11

Practical Rendering and Computation with Direct3D 11

A la différence du premier livre testé (3D Engine Design for Virtual Globes) (testé… surement une déformation due aux tests de cartes graphiques je crois) sur Geeks3D qui était très pragmatique (j’adore ce genre de livre), avec des bout de codes à chaque page, ce livre sur Direct3D 11 contient moins de code et plus, beaucoup plus de texte. Ce livre passe en revue et de manière détaillée tout ce qu’il faut savoir sur D3D11. Il nous explique les deux grands types de pipelines (d’un point de vue très haut niveau): le pipeline de rendu (rendering pipeline, pages 117 à 262, près de 145 pages!) et le pipeline de calcul (computation pipeline, pages 287 à 309, moins de pages!).

La gestion des resources y est également très détaillé (pages 27 à 115). Il y a deux grandes catégories de resources avec D3D11: les buffers et les textures. Les resource views permettent ensuite au développeur (et à D3D11) de savoir à quel endroit du pipeline de rendu utiliser une resource. Car pour être utilisé, une resource doit être bindée (bound en bon english) à certains endroits du pipeline (entrée ou sortie d’un étage du pipeline).

Practical Rendering and Computation with Direct3D 11

Les deux interfaces avec Direct3D 11 se composent du device et du device context. Le device sert à la gestion des resources tandis que le device context utilise ces resources. Le device context se décompose lui meme en 2 types de contextes: immediate context et deferred context. L’immediate context sert à envoyer des commandes de rendu à D3D11 pour effet immédiat alors que le deferred context stocke les commandes dans des listes pour exécution ultérieure.

Une autre partie très intéressante du livre concerne le rendu multithreadé (multithreaded rendering). La tessellation (qui est abordé pages 263 à 285) et le rendu multithreadé sont les deux grandes nouveautés de D3D11 et des cartes graphiques récentes (GeForce GTX 400 / GTX 500, Radeon HD 5000 / HD 6000). Le rendu multithreadé repose sur la gestion des deferred contexts (en gros: un deferred context par thread) avec un immediate context dans la thread de rendu principale. J’avais jamais vraiment regardé comment était fait ce rendu multithreadé, et ce livre m’a permis de me mettre à jour. Je sens que je vais tester ce rendu multithreadé dans un de mes softs prochainement…

Practical Rendering and Computation with Direct3D 11
Rendu multithreadé avec D3D11 et deferred contexts

Le livre aborde aussi des cas plus pratiques comme le deferred rendering (pages 491 à 541), la simulation de flotte avec les compute shaders (pages 544 à 560) ou encore les systèmes de particules.

Donc si vous avez un besoin pressant de vous mettre enfin à jour avec Direct3D 11, je ne peux que vous recommender ce livre.

Lab521 APPROVED badge!

Curieusement, il n’y a pas d’info dans le livre sur les 3 auteurs (Jason Zink, Matt Pettineo et Jack Hoxley). Même pas une petite bio de 140 caractères. Pas cool. Pas grave, les noms des auteurs sonnent bien…

Et pour ceux qui veulent vraiment connaitre le contenu du bouquin, voilà la table des matières en images!

Practical Rendering and Computation with Direct3D 11

Practical Rendering and Computation with Direct3D 11

Practical Rendering and Computation with Direct3D 11

Practical Rendering and Computation with Direct3D 11

Et pour terminer cette review du livre, voici quelques pages de la préface:

Practical Rendering and Computation with Direct3D 11

Practical Rendering and Computation with Direct3D 11

Practical Rendering and Computation with Direct3D 11

Practical Rendering and Computation with Direct3D 11

Bon bah il ne me reste plus qu’à faire un petite trad pour Geeks3D!

No related posts.





2 Responses to “(Test de Livre) Practical Rendering and Computation with Direct3D 11 (oui oui, review en french!)”

  1. Clement says:

    Cela donne envie, je n’ai pas encore finis le bouquin 3D Engin Design for Virtual Globes que déjà tu me mets un autre livre sur mon stack.
    Faut vraiment que je me mette à DX11 aprés être rester bloquer tout ce temps à DX9.
    Enfin cela supporte le multithreading !
    Et c’est vraiment cool d’avoir des news comme cela en francais. :wink:

  2. JeGX says:

    Merci du feedback. Et ce bouquin est vraiment une bonne introduction (une intro bien détaillée je dirais) à D3D11, il y a beaucoup de choses à lire.

    Et pour les news en français, ça fait un bout de temps que je voulais en faire. Mais le lab521 ne sera pas une copie FR de Geeks3D. J’essaierai dans la mesure du possible de ne mettre que du contenu nouveau (lire pas de news rapide sur les cartes ou drivers graphiques sauf s’il y a vraiment quelque chose de particulier). Et un contenu orienté prog graphique :twisted: