Home      Downloads             Documentation      FAQ     

Documentation>Tutoriel > Etape 1

Loop Wizard (assistant encore appelé "j'ai pas envie de programmer 15000 lignes pour gérer l'affichage")

C'est la dernière phase pour construire notre jeu éxécutable.

ETP Studio va générer du code qui nous épargnera d'écrire du code pour l'affichage mais nous pourrons quand même modifier de manière dynamique (c'est-à-dire au moment de l'éxécution) ce qui va être visualisé. Cette phase peut sembler compliqué pour les personnes n'ayant jamais programmé mais une telle conception est vraiment indispenseable pour que les programmeurs puissent personnaliser leurs programmes et avoir un contrôle sur le produit final.

Maintenant que nous avons un map dans le projet, notre tentative de loop wizard devrait aboutir.

Dans le menu, cliquez sur Tools> Loop Wizard. Laissez les options par défaut, et cliquez sur "Generate". ETP Studio affiche un module contenant le code généré. Il peut être interéssant de commenter ces quelques lignes.

Procedure MapDisplay

    ScreenInit	'This internal macro initializes the display

    Do
        ScreenRender	'This internal macro displays sprites
    
        'TO DO: Place your gameplay code here
		
		
		
		
		
    Loop While  Not(KEY89_ESC)

 

Il s'agit d'une procédure nommé MapDisplay. Cela signifie qu'il faut appeler MapDisplay pour faire afficher notre hélicoptère.

Ce qui est écrit en vert sont des commentaires qui ne sont pas pris en compte par le compilateur. Comme c'est écrit, il y a deux macros ScreenInit et ScreenRender qui permettent gérer l'affichage. En fait, derrière ces mots, il existe un code assembleur extrêmement optimisé en vitesse qui gère l'affichage. Cette optimisation se reflète sur les performances de l'éxécutable final que nous n'allons pas tarder à voir.

On peut observer une structure de boucle Do While, ceci permet de rester dans le jeu et de continuer à afficher tant que l'utilisateur n'appuie pas sur la touche "ESCAPE", car il y a une condition Not(KEY89_ESC).

Il ne nous reste plus qu'à appeler la procédure MapDisplay. Mais où allons-nous l'appeler? En réalité, le point d'entrée du code etp-basic se fait dans la procédure MAIN. Ca veut dire que nous devons créer une procédure MAIN et appeler MapDisplay.

Dans le menu, cliquez sur File>New> Module, ceci crée un module vide. Dans ce module tapez ceci:

Procedure MAIN:

	Clear
	GrayOn
	MapDisplay
	GrayOff
	

(Il n'est pas interdit de faire un copier-coller)

Ces lignes signifient:

Procedure MAIN: Lorsqu'on entre dans le programme...
Clear ...efface l'écran,...
GrayOn ...active le niveau de gris...
MapDisplay ...appelle MapDisplay qui va afficher mon joli hélicoptère,...
GrayOff ...au retour désactive le niveau de gris

Si vous n'avez jamais programmé et que vous n'êtes pas à l'aise avec ces instructions, vous pouvez vous passer de les comprendre jusqu'à un certain niveau.

Nous pouvons enfin compiler, pour cela cliquez sur ou appuyez sur F8. ETP Studio se charge alors de trouver d'éventuels erreurs sur ce que nous venons de faire. S'il y a une erreur, il faut la corriger (eh oui!), vérifiez que vous avez bien tapé les 5 lignes de code précédentes.

S'il n'y a pas d'erreur, un fichier éxécutable par la calculatrice est crée dans le répértoire indiqué dans la fenêtre debug.

myprojct.89z est crée dans D:\VB98\ETP

Si vous utilisez VTI:

Une fois VTI lancé appuyez sur F10 ou faites un click droit puis séléctionnez "Send file to VTI", atteignez le répértoire indiqué dans la fenêtre debug de ETP. Ouvrez le fichier myprojct.89z Faites de même avec le fichier Map1.89z

Si vous utilisez votre TI:

Utilisez un logiciel de connexion pour envoyer les fichiers qui se trouvent dans le répértoire indiqué.

N'oubliez pas d'envoyer le fichier Map1.89z!!! Il faut envoyer les deux fichiers. Map1.89z correspond au fond d'écran, si vous oubliez de l'envoyer, le fond d'écran sera rempli de pixels completement aléatoires.

Dans l'écran HOME tapez myprojct( ) puis "ENTER"

Nous retrouvons le résultat des optimisations dans le code assembleur implicite, nous voyons notre hélicoptère avec une rapidité incroyable! Il faut remercier ici Geoffrey Anneheim.

En effet, même si nous ne le voyons pas sur cet exemple, la calculatrice est en train d'éxécuter du code pour gérer l'affichage du map (du fond d'écran) également!

Plus loin dans cet article, nous allons ajouter des dizaines d'hélicoptères et leur gestion, et nous allons voir que les performances ne sont pas près de diminuer.

Lorsqu'on appuie sur la touche "ESC", la calculatrice revient sur l'écran HOME.

Vous pouvez sauvegarder l'ensemble du projet en cliquant sur File> Save project ou en appuyant sur CTRL + S. Vous pouvez laisser les noms des fichiers tels quels.

Si vous n'avez pas suivi toutes les étapes, vous pouvez...

Télécharger le projet helico_step1

La suite>>>

   

 

 

     
    About ETP Contact Us