11## Introduction
22
33Votre programme peut maintenant réaliser des rendus 3D, mais la géométrie que nous utilisons n'est pas très
4- intéressante. Nous allons maintenant étendre notre programme pour charger les vertices depuis des fichiers. Votre carte
5- graphique aura enfin un peu de travail à faire.
4+ intéressante. Nous allons maintenant étendre notre programme pour charger les sommets depuis des fichiers. Votre carte
5+ graphique aura enfin un peu de travail sérieux à faire.
66
77Beaucoup de tutoriels sur les APIs graphiques font implémenter par le lecteur un système pour charger les modèle OBJ. Le
88problème est que ce type de fichier est limité. Nous * allons* charger des modèles en OBJ, mais nous nous concentrerons
9- plus sur l'intégration des vertices dans le programme, plutôt que sur les aspects spécifiques des formats de fichier.
9+ plus sur l'intégration des sommets dans le programme, plutôt que sur les aspects spécifiques de ce format de fichier.
1010
1111## Une librairie
1212
@@ -62,7 +62,7 @@ const std::string MODEL_PATH = "models/chalet.obj";
6262const std::string TEXTURE_PATH = " textures/chalet.jpg" ;
6363```
6464
65- Changez la fonction ` createTextureImage ` pour qu'elle utilise cette seconde variable pour charger la texture.
65+ Changez la fonction ` createTextureImage ` pour qu'elle utilise cette seconde constante pour charger la texture.
6666
6767``` c++
6868stbi_uc* pixels = stbi_load(TEXTURE_PATH.c_str(), &texWidth, &texHeight, &texChannels, STBI_rgb_alpha);
@@ -80,7 +80,7 @@ VkBuffer vertexBuffer;
8080VkDeviceMemory vertexBufferMemory;
8181```
8282
83- Il faut aussi que le type des indices soit maintenant un ` uint32_t ` car nous allons avoir plus que 65535 vertices .
83+ Il faut aussi que le type des indices soit maintenant un ` uint32_t ` car nous allons avoir plus que 65535 sommets .
8484Changez également le paramètre de type dans l'appel à ` vkCmdBindIndexBuffer ` .
8585
8686``` c++
@@ -165,7 +165,7 @@ for (const auto& shape : shapes) {
165165}
166166```
167167
168- Pour faire simple nous allons partir du principe que les vertices sont uniques. La variable ` index ` est du type
168+ Pour faire simple nous allons partir du principe que les sommets sont uniques. La variable ` index ` est du type
169169` tinyobj::index_t ` , et contient ` vertex_index ` , ` normal_index ` et ` texcoord_index ` . Nous devons traiter ces données
170170pour les relier aux données contenues dans les tableaux ` attrib ` :
171171
@@ -211,7 +211,7 @@ Vous pouvez lancer à nouveau le programme. Le rendu devrait être correct :
211211## Déduplication des vertices
212212
213213Pour le moment nous n'utilisons pas l'index buffer, et le vecteur ` vertices ` contient beaucoup de vertices dupliquées.
214- Nous ne devrions les inclure qu'une seule fois dans ce conteneur et utiliser leurs indeices pour s'y référer. Une
214+ Nous ne devrions les inclure qu'une seule fois dans ce conteneur et utiliser leurs indices pour s'y référer. Une
215215manière simple de procéder consiste à utiliser une ` unoredered_map ` pour suivre les vertices multiples et leurs indices.
216216
217217``` c++
0 commit comments