@@ -15,7 +15,7 @@ Au fur et à mesure que les cartes graphiques progressèrent, elles offrirent de
1515programmables. Il fallait alors intégrer toutes ces nouvelles fonctionnalités aux APIs existantes. Ceci résulta
1616en une abstraction peu pratique et le driver devait deviner l'intention du développeur pour relier le programme aux
1717architectures modernes. C'est pour cela que les drivers étaient mis à jour si souvent, et que certaines augmentaient
18- drastiquement les performances. À cause de la complexité de ces drivers, les développeurs devaient gérer les
18+ soudainement les performances. À cause de la complexité de ces drivers, les développeurs devaient gérer les
1919différences de comportement entre les fabricants, dont par exemple des tolérances plus ou moins importantes pour les
2020[ shaders] ( https://en.wikipedia.org/wiki/Shader ) . Un exemple de fonctionnalité est le
2121[ tiled rendering] ( https://en.wikipedia.org/wiki/Tiled_rendering ) , pour laquelle une plus grande flexibilité mènerait à
@@ -47,7 +47,7 @@ et ainsi préférer par exemple du matériel dédié.
4747
4848### Étape 2 – Logical Device et familles de queues (Queue Families)
4949
50- Après avoir séléctionné le hardware qui vous convient, vous devez créer un « ` VkDevice ` » (logical device). Vous décrivez
50+ Après avoir sélectionné le hardware qui vous convient, vous devez créer un ` VkDevice ` (logical device). Vous décrivez
5151pour cela quelles ` VkPhysicalDeviceFeatures ` vous utiliserez, comme l’affichage multi-fenêtre ou des floats de 64 bits.
5252Vous devrez également spécifier quelles ` vkQueueFamilies ` vous utiliserez. La plupart des opérations, comme les
5353commandes d’affichage et les allocations de mémoire, sont exécutés de manière asynchrone en les envoyant à une ` VkQueue ` .
@@ -113,7 +113,7 @@ fonction de blending par défaut.
113113
114114La bonne nouvelle est que grâce à cette anticipation, ce qui équivaut à peu près à une compilation versus une
115115interprétation, il y a beaucoup plus d’optimisations possibles pour le driver et le temps d’exécution est plus
116- prévisible, car les grandes étapes telles le changement de pipeline sont très explicites.
116+ prévisible, car les grandes étapes telles le changement de pipeline sont faites très explicites.
117117
118118### Étape 7 - Command Pools et Command Buffers
119119
@@ -133,8 +133,8 @@ l’affichage. Nous pourrions en créer un à chaque frame mais ce ne serait pas
133133
134134### Étape 8 - Boucle principale
135135
136- Maintenant que nous avons inscrit les commandes graphiques dans des Command Buffers, la boucle principale n’est qu’une
137- histoire d’appels. Nous acquérons d’abord une image de la Swap Chain en utilisant ` vkAcquireNextImageKHR ` . Nous
136+ Maintenant que nous avons inscrit les commandes graphiques dans des Command Buffers, la boucle principale n’est plus
137+ qu'une question d’appels. Nous acquérons d’abord une image de la Swap Chain en utilisant ` vkAcquireNextImageKHR ` . Nous
138138sélectionnons ensuite le command buffer approprié pour cette image et le postons à la queue avec vkQueueSubmit. Enfin,
139139nous retournons l’image à la Swap Chain pour sa présentation à l’écran à l’aide de ` vkQueuePresentKHR ` .
140140
@@ -149,7 +149,7 @@ l’affichage soit terminé.
149149Ce tour devrait vous donner une compréhension basique du travail que nous aurons à fournir pour afficher notre premier
150150triangle. Un véritable programme contient plus d’étapes comme allouer des vertex Buffers, créer des Uniform Buffers et
151151envoyer des textures, mais nous verrons cela dans des chapitres suivants. Nous allons commencer par les bases car Vulkan
152- a suffisamment d’étapes ainsi. Notez que nous allons ‘ tricher’ en écrivant les coordonnées du triangle directement dans
152+ a suffisamment d’étapes ainsi. Notez que nous allons " tricher" en écrivant les coordonnées du triangle directement dans
153153un shader, afin d’éviter l’utilisation d’un vertex buffer qui nécessite une certaine familiarité avec les Command
154154Buffers.
155155
@@ -177,7 +177,7 @@ Ce chapitre va conclure en survolant la structure de l’API à un plus bas nive
177177
178178### Conventions
179179
180- Toute les fonctions, les énumérations et les structures de Vulkan sont définies dans le header « vulkan.h» , inclus dans
180+ Toute les fonctions, les énumérations et les structures de Vulkan sont définies dans le header ` vulkan.h ` , inclus dans
181181le [ SDK Vulkan] ( https://lunarg.com/vulkan-sdk/ ) développé par LunarG. Nous verrons comment l’installer dans le prochain
182182chapitre.
183183
0 commit comments