
Le thread dédié à l'affichage
Pour le thread dédié à l’affichage en conception c’est très simple : une fois lancé tout ce qu’on lui demande c’est d’afficher les surfaces à l’écran de manière périodique (t_frame = 20ms à 50Hz). On ne s’en occupe plus : il suffit de mettre à jour les variables de position et il vient les chercher quand cela lui chante !
La fonction est très simple : elle se contente d’appeler Affichage() régulièrement.
La scrutation de stop permet de savoir quand le thread principal a finit de jouer et désire nous tuer !
La plupart du temps cette fonction est en pause (économie de CPU) avec la ligne 258.

Et voici la fonction Affichage() :
La ligne 447 blit l'image de fond c'est à dire la table de billard, si vous la commenter // vous verrez tous les blits successifs des boules sur fond noir : ce qui est très pratique pour visualiser les trajectoires
On retrouve le switch sur les 2 phases avec l'affichage de tout l'environnement en Phase 1.
Toutes les variables de cette phase affEnv() sont protégées par MUTEX.
La fonction se termine par un SDL-Flip() unique, comme il se doit, dans tout le programme.
Des printf() avec un temps ticks permettent de controler le temps réel au debug. Le temps d'exécution est environ de 2ms.

