Skip to content

Commit a9aee47

Browse files
KrenodenoAlexis Ronez
authored and
Alexis Ronez
committed
Update 00_Code_de_base.md
1 parent 1181aad commit a9aee47

File tree

1 file changed

+13
-14
lines changed

1 file changed

+13
-14
lines changed

fr/03_Drawing_a_triangle/00_Setup/00_Code_de_base.md

Lines changed: 13 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -49,15 +49,15 @@ int main() {
4949

5050
Nous incluons ici d'abord le header Vulkan du SDK, qui fournit les fonctions, les structures et les énumérations.
5151
`stdexcept` et `iostream` nous permettront de reporter et de traiter les erreurs. Le header `functional` nous servira
52-
pour l'écriture d'une lambda dans la section sur la gestion des ressources. `cstdlib` nous fournit `EXIT_FAILURE` et
53-
`EXIT_SUCCESS` (optionnels).
52+
pour l'écriture d'une lambda dans la section sur la gestion des ressources. `cstdlib` nous fournit les macros `EXIT_FAILURE` et
53+
`EXIT_SUCCESS` (optionnelles).
5454

5555
Le programme est écrit à l'intérieur d'une classe, dans laquelle nous stockerons les objets Vulkan. Nous avons également
5656
une fonction pour la création de chacun de ces objets. Une fois toute l'initialisation réalisée, nous entrons dans la
5757
boucle principale, qui attendra que nous fermions la fenêtre pour quitter le programme, après avoir libéré toutes les
5858
ressources que nous avons allouées grâce à la fonction cleanup.
5959

60-
Si nous rencontrons une quelconque erreur lors de l'exécution nous soulèverons une `std::runtime_error` comportant un
60+
Si nous rencontrons une quelconque erreur lors de l'exécution nous lèverons une `std::runtime_error` comportant un
6161
message descriptif, qui sera affiché sur le terminal depuis la fonction `main`. Afin de s'assurer que nous récupérons
6262
bien toutes les erreurs, nous utilisons `std::exception` dans le `catch`. Nous verrons bientôt que la requête de
6363
certaines extensions peut mener à soulever des exceptions.
@@ -67,11 +67,11 @@ nouvel objet Vulkan qui sera justement créé par cette fonction. Nous le détru
6767

6868
## Gestion des ressources
6969

70-
Comme une quelconque ressource explicitement allouée par `new` doit être explicitement libérée par `delete`, nous
70+
De la même façon qu'une quelconque ressource explicitement allouée par `new` doit être explicitement libérée par `delete`, nous
7171
devrons explicitement détruire toutes les ressources Vulkan que nous allouerons. Il est possible d'exploiter des
7272
fonctioinnalités du C++ pour s'aquitter automatiquement de cela. Ces possibilités sont localisées dans `<memory>` si
7373
vous désirez les utiliser. Cependant nous resterons explicites pour toutes les opérations dans ce tutoriel, car la
74-
puissance de Vulkan réside spécifiquement dans la clareté de l'expression de la colonté du programmeur. De plus cela
74+
puissance de Vulkan réside spécifiquement dans la clareté de l'expression de la volonté du programmeur. De plus cela
7575
nous permettra de bien comprendre la durée de vie de chacun des objets.
7676

7777
Après avoir suivi ce tutoriel vous pourrez parfaitement implémenter une gestion automatique des ressources en
@@ -80,16 +80,15 @@ spécialisant `std::shared_ptr` par exemple. L'utilisations du [RAII](https://en
8080
connaître les détails de l'implémentation.
8181

8282
Les objets Vulkan peuvent être crées de deux manières. Soit ils sont directement crées avec une fonction du type
83-
`vkCreateXXX`, soit il sont récupérés à partir d'un autre objet avec une fonction du type `vkAllocateXXX`. Après vous
84-
être assuré qu'il n'est plus utilisé où que ce soit, vous devrezle détruire en utilisant les fonctions du type
83+
`vkCreateXXX`, soit il sont alloués à l'aide d'un autre objet avec une fonction `vkAllocateXXX`. Après vous
84+
être assuré qu'il n'est plus utilisé où que ce soit, vous devrez le détruire en utilisant les fonctions
8585
`vkDestroyXXX` ou `vkFreeXXX`, respectivement. Les paramètres de ces fonctions varient sauf pour l'un d'entre eux :
8686
`pAllocator`. Ce paramètre optionnel vous permet de spécifier un callback sur un allocateur de mémoire. Nous
87-
n'utiliserons jamais ce paramètre et l'indiquerons donc toujours nullptr.
87+
n'utiliserons jamais ce paramètre et indiquerons donc toujours `nullptr`.
8888

8989
## Intégrer GLFW
9090

91-
Vulkan marche très bien sans fenêtre si vous voulez l'utiliser pour du rendu sans écran, mais c'est tout de même plus
92-
exitant d'afficher quelque chose! Remplacez d'abord la ligne `#include <vulkan/vulkan.h>` par :
91+
Vulkan marche très bien sans fenêtre si vous voulez l'utiliser pour du rendu sans écran (offscreen rendering en Anglais), mais c'est tout de même plus exitant d'afficher quelque chose! Remplacez d'abord la ligne `#include <vulkan/vulkan.h>` par :
9392

9493
```c++
9594
#define GLFW_INCLUDE_VULKAN
@@ -128,7 +127,7 @@ l'interdisons pour l'instant
128127
glfwWindowHint(GLFW_RESIZABLE, GLFW_FALSE);
129128
```
130129
131-
Il ne nous reste plus qu'à créer la fenêtre. Ajoutez un membre privé `GLFWWindow *m_window` pour en stocker une
130+
Il ne nous reste plus qu'à créer la fenêtre. Ajoutez un membre privé `GLFWWindow* m_window` pour en stocker une
132131
référence, et initialisez la ainsi :
133132
134133
```c++
@@ -165,7 +164,7 @@ void initWindow() {
165164
}
166165
```
167166

168-
Pour s'assurer que l'application tourne jusqu'à ce que soit une erreur soit un clic sur la croix ne l'interrompe, nous
167+
Pour s'assurer que l'application tourne jusqu'à ce qu'une erreur ou un clic sur la croix ne l'interrompe, nous
169168
devons écrire une petite boucle de gestion d'évènements :
170169

171170
```c++
@@ -190,7 +189,7 @@ void cleanup() {
190189
}
191190
```
192191

193-
Si vous lancez l'application, vous devriez voir une fenêtre appelée "Vulkan" se fermant en cliquant sur la croix.
192+
Si vous lancez l'application, vous devriez voir une fenêtre appelée "Vulkan" qui se ferme en cliquant sur la croix.
194193
Maintenant que nous avons une base pour notre application Vulkan, [créons notre premier objet Vulkan!](!Drawing_a_triangle/Setup/Instance)!
195194

196-
[Code C++](/code/00_base_code.cpp)
195+
[Code C++](/code/00_base_code.cpp)

0 commit comments

Comments
 (0)