Forum tama's team
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.

Forum tama's team

cp: ne peut évaluer `brain': Aucun fichier ou dossier de ce type
 
AccueilPortailGalerieRechercherDernières imagesS'enregistrerConnexion
Connexion
Nom d'utilisateur:
Mot de passe:
Connexion automatique: 
:: Récupérer mon mot de passe
Derniers sujets
» Numbers
[Basic] 1A : Animer l'ecran avec des sprites Icon_minitimepar Ver2guerre Dim 02 Avr 2023, 00:47

» Mort ?
[Basic] 1A : Animer l'ecran avec des sprites Icon_minitimepar godbod Dim 22 Aoû 2021, 12:23

» Network, essai 1
[Basic] 1A : Animer l'ecran avec des sprites Icon_minitimepar godbod Dim 09 Juil 2017, 02:18

» GODBOD
[Basic] 1A : Animer l'ecran avec des sprites Icon_minitimepar godbod Sam 08 Juil 2017, 14:05

» mon humeur
[Basic] 1A : Animer l'ecran avec des sprites Icon_minitimepar Ver2guerre Sam 30 Juil 2016, 19:44

» [A voir] Programme de traduction original : WikiTranslate
[Basic] 1A : Animer l'ecran avec des sprites Icon_minitimepar AdRiWeB Lun 01 Fév 2016, 04:50

» Reprise ?
[Basic] 1A : Animer l'ecran avec des sprites Icon_minitimepar Emyl Jeu 14 Juin 2012, 21:17

» Euh, ah ?
[Basic] 1A : Animer l'ecran avec des sprites Icon_minitimepar Ver2guerre Dim 27 Mai 2012, 12:11

» Problème TI 89 Titanium non visible après mise à jour
[Basic] 1A : Animer l'ecran avec des sprites Icon_minitimepar abdoukid Mer 23 Mai 2012, 13:37

» Y'a quelqu'un ?
[Basic] 1A : Animer l'ecran avec des sprites Icon_minitimepar Ver2guerre Sam 21 Avr 2012, 23:10

Quick message
Qui est en ligne ?
Il y a en tout 7 utilisateurs en ligne :: 0 Enregistré, 0 Invisible et 7 Invités

Aucun

Le record du nombre d'utilisateurs en ligne est de 367 le Dim 18 Oct 2009, 00:16
Le Deal du moment :
Cartes Pokémon 151 : où trouver le ...
Voir le deal

Partagez | 
 

 [Basic] 1A : Animer l'ecran avec des sprites

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
Syfo
Pokémophile
Pokémophile
Syfo

Nombre de messages : 1978
Age : 33
Localisation : IYA
items : [Basic] 1A : Animer l'ecran avec des sprites Syfo1fp7qx4[Basic] 1A : Animer l'ecran avec des sprites Ti83plusgf8[Basic] 1A : Animer l'ecran avec des sprites Ti84plusdm0[Basic] 1A : Animer l'ecran avec des sprites Ti89kb2[Basic] 1A : Animer l'ecran avec des sprites Ti89titaul9

Personalized field : 26 jetons
Réputation : 8
Points : 6761
Date d'inscription : 09/08/2007

Profil
TI: 80, 82, 83, 83+, 84+
TO: 2 945 [GAIN * 1.1]
Spécialité: Basic z80

[Basic] 1A : Animer l'ecran avec des sprites Vide
MessageSujet: [Basic] 1A : Animer l'ecran avec des sprites   [Basic] 1A : Animer l'ecran avec des sprites Icon_minitimeJeu 21 Fév 2008, 16:53

Chapitre 1: animer l'ecran avec des sprites



Lire ceci presuppose que vous manipulez sans probleme les conditions, les boucles et les variables. Si ce n'est pas le cas, ce chapitre va vous paraitre plutot difficile. Ce que nous allons apprendre ici n'est pas tellement complique, mais demande une connaissances minimale du Basic.

Marre d'afficher du texte, de faire des jeux a base d'Input? Vous voulez programmer des Super Mario, des Castlevania pour vous la peter devant vos potes? Je vous comprends, mais on en est pas la. Meme une fois que vous aurez lu tous les chapitres de ce tutorial, vous ne serez pas forcement a meme de programmer un jeu tel que Metroid Prime. Programmer demande de la patience, et des mois vous seront necessaires pour maitrisez le Basic.

[Basic] 1A : Animer l'ecran avec des sprites 76652


Si vous n'etes pas decourages par ce petit discours, alors allons y. Faisons une partie du chemin vers le graal qu'est Metroid.





Lecon 1A: sprites en ASCII


Citation :
-Mais, c'est quoi un sprite?
Un sprite c'est un dessin que l'on peut deplacer a l'ecran. Il peut etre de n'importe quelle taille,mais est generalement plutot petit. Quand on joue au casse briques, la balle est un sprite qui se deplace suivant une trajectoire definie par ses rebonds.

[Basic] 1A : Animer l'ecran avec des sprites Spriteballeco9


Citation :
-Et un sprite en ASCII?
La table des codes ASCII etendus est un tableau de 16 lignes sur 16 colonnes ou sont regroupes les caracteres qui forment l'alphabet ASCII (American Standard Code for Information Interchange). Vous l'aurez compris, un sprite en ASCII est... une lettre ou un symbole.
Quand vous tapez le code suivant:
Code:
  Output ( 4,6, "A" )
Vous affichez le caractere "A" aux coordonnees precisees. Vous affichez en fait un sprite deja definie par l'OS de votre Ti.
Je suis sur que vous vous etes deja amuse a dessiner quelque chose sur votre Ti avec les symboles. Recommencons, mais cette fois ci avec un programme.
Code:

   Output ( 1,2,"O" )
   Output ( 2,1,"-I-" )
   Output ( 3,2,"I" )
   Output ( 4,1,"I I" )
Quand on lance ce programme, on affiche ceci:

[Basic] 1A : Animer l'ecran avec des sprites Bonhomme1hn6


Citation :

-Super! Mais... Ca bouge pas, c'est tout pourri...
Soit patient, jeune padawan, j'y viens. Je suis sur que vous avez deja une petite idee de la maniere dont on va s'y prendre. Au lieu de mettre des coordonnees precises, on va mettre deux variables, A et B. Vous aviez trouve? Bravo!
Code:

   1->A
   1->B
   Output ( A,B+1,"O" )
   Output ( A+1,B,"-I-" )
   Output ( A+2,B+1,"I" )
   Output ( A+3,B,"I I" )

Amusez vous a changer A et B. Le bonhomme s'affiche a differents endroits de l'ecran.

Citation :
-Pas mal! Mais il faut changer les coordonnees a la main a chaque fois?

Pas du tout! On peut tres bien le deplacer suivant les indications de l'utilisateur en utilisant Getkey. Petit rappel: cette fonction retourne une valeur suivant la touche pressee, et 0 si aucune touche n'a ete pressee. La touche Enter correspond au code 105, 2nd a 21, la touche flechee gauche a 24, haut a 25, droite a 26 et bas a 34. Mais normalement vous savez deja tout ca, et tout ce que j'explique depuis tout a l'heure, vous le lisez d'un air condescendant. Mais attendez que ca se complique!
Cette partie la, vous allez la faire tout seul comme un grand. Je vous juste les grandes lignes du programme, et un petit screen de ce que vous devez obtenir:
Code:

   1) on initialise les variables
   2) debut de la boucle du programme
   3) on efface le sprite
   4) on recupere le code de la touche pressee
   5) on change les variables en consequence
   6) on affiche le sprite
   7) retour en (2)

[Basic] 1A : Animer l'ecran avec des sprites Bonhomme2xn2


Allez, c'est parti!



Correction:
Si vous lisez ceci, c'est soit que vous avez fini, soit que vous n'avez pas reussi. Si tel est votre cas, ce n'est pas grave! Continuez a travailler, a force de patience vous y arriverez, un programme ne marche jamais du premier coup.
Voici un des solutions possible:

Code:
   1->A
   1->B
   While 1      // boucle infinie, nous verrons plus tard pourquoi
   ClrHome      // on efface l'ecran
   Getkey->G   // on recupere le code de la touche pressee
   If G=24
   B-1->B
   If G=25
   A-1->A      // on change les coordonnees du sprite
   If G=26
   B+1->B
   If G=34
   A+1->A   
   Output ( A,B+1,"O" )
   Output ( A+1,B,"-I-" )
   Output ( A+2,B+1,"I" )
   Output ( A+3,B,"I I" )
         //on affiche le sprite
   End      // fin de la boucle, la calculatrice retourne au "While 1" en lisant ce End

Bien entendu, vos variables peuvent avoir des noms differents, et votre boucle peut etre construite differemment (Lbl A / Goto A par exemple), mais cela revient au meme.

Par contre, je vois trois gros problemes dans ce programme, pas vous?

Premierement, le seul moyen de sortir du programme est d'appuyer sur la touche On. Pas tres classe. Pourquoi ne pas quitter le programme des qu'on appuie sur la touche Enter? Il suffit pour cela de rajouter une condition au sein de la boucle:

Code:
   If G=105
   Stop

C'est deja mieux. Mais ce n'est pas tout. Le second probleme est esthetique: ca clignote, c'est moche, pourquoi? Le mechant de l'histoire est ce ClrHome recurrent qui s'execute meme quand on en a pas besoin. Pas tres sympa tout ca. Pour y remedier, on ne va faire un ClrHome que quand une touche est pressee, c'est a dire lorsque le bonhomme est deplace, et qu'il faut l'effacer avant de le reafficher plus loin. Pour cela, il faut faire deux choses: deplacer le ClrHome afin qu'il soit execute apres le Getkey, et tester si G est positif avant de l'executer:

Code:
   If G != 0       // != signifie different de
   ClrHome

Bien. Le dernier souci est un bug. En programmation, il faut toujours penser a tout. Et si on fait sortir le bonhomme de l'ecran, que se passe t'il? Le systeme affiche une erreur et interrompt le programme. Il faut donc empecher que cela arrive. Comment? En posant de nouvelles conditions au deplacement du perso:

Code:
   If G=24 and B != 1   // on ne deplace pas vers la gauche si le perso est deja au bord
   B-1->B
   ... et ainsi de suite

Voyons ce que cela donne a present:
Code:

   1->A
   1->B
   While 1      // boucle infinie, nous verrons plus tard pourquoi
   Getkey->G   // on recupere le code de la touche pressee
   If G=105
   Stop      // enter a ete pressee, on arrete le programme
   If G != 0
   ClrHome      // on efface l'ecran
   If G=24 and B !=1
   B-1->B
   If G=25 and A !=1
   A-1->A      // on change les coordonnees du sprite
   If G=26 and B !=13   // pourquoi 13 et pas 16? parce que le bonhomme est large de 3 caracteres
   B+1->B
   If G=34 and A !=4   // meme chose, le bonhomme est haut de 4 caracteres
   A+1->A   
   Output ( A,B+1,"O" )
   Output ( A+1,B,"-I-" )
   Output ( A+2,B+1,"I" )
   Output ( A+3,B,"I I" )
         //on affiche le sprite
   End      // fin de la boucle, la calculatrice retourne au "While 1" en lisant ce End

Voila, vous avez deplace votre premier sprite. Alors, heureux?
Citation :
-Oh oui, tres heureux!



/!\ ATTENTION: ce tutorial expose une methode pour afficher des sprites, mais pas forcement la meilleure. De plus quelques erreurs d'appreciations font que les codes presentes ne sont pas tout a fait corrects. Il y a moyen de faire mieux. Mais j'ai la flemme de modifier. Veuillez m'en excuser, et consulter d'autres tutos pour faire votre propre appreciation de la chose Wink


Dernière édition par Syfo le Jeu 07 Aoû 2008, 21:00, édité 12 fois
Revenir en haut Aller en bas
Syfo
Pokémophile
Pokémophile
Syfo

Nombre de messages : 1978
Age : 33
Localisation : IYA
items : [Basic] 1A : Animer l'ecran avec des sprites Syfo1fp7qx4[Basic] 1A : Animer l'ecran avec des sprites Ti83plusgf8[Basic] 1A : Animer l'ecran avec des sprites Ti84plusdm0[Basic] 1A : Animer l'ecran avec des sprites Ti89kb2[Basic] 1A : Animer l'ecran avec des sprites Ti89titaul9

Personalized field : 26 jetons
Réputation : 8
Points : 6761
Date d'inscription : 09/08/2007

Profil
TI: 80, 82, 83, 83+, 84+
TO: 2 945 [GAIN * 1.1]
Spécialité: Basic z80

[Basic] 1A : Animer l'ecran avec des sprites Vide
MessageSujet: Re: [Basic] 1A : Animer l'ecran avec des sprites   [Basic] 1A : Animer l'ecran avec des sprites Icon_minitimeJeu 21 Fév 2008, 17:03

To be continued.

La suite est en cours d'ecriture, vous pouvez repondre, de toute facon j'editerais le premier post.

Le tuto pour les menus arrivera apres.

Dites moi ce que vous en pensez, si c'est trop simple, mal dit ou autres.
Revenir en haut Aller en bas
AdRiWeB
amis
amis
AdRiWeB

Nombre de messages : 3655
Age : 31
Localisation : Juste sous mes cheveux
Loisirs : Internet, programmation, TI, musique, tennis-de-table ...
Humeur : ^^
items : o
Personalized field :
Réputation : 0
Points : 6280
Date d'inscription : 12/08/2007

Profil
TI: TI-84 Plus, nspire CAS
TO: 2429 {2}
Spécialité: Basic z80

[Basic] 1A : Animer l'ecran avec des sprites Vide
MessageSujet: Re: [Basic] 1A : Animer l'ecran avec des sprites   [Basic] 1A : Animer l'ecran avec des sprites Icon_minitimeJeu 21 Fév 2008, 18:24

franchement, çà promet Wink

bon courage
Revenir en haut Aller en bas
http://www.adriweb.net
tama
Admin
Admin
tama

Nombre de messages : 12376
Age : 32
Localisation : DTC ? :triso:
Humeur : =)
items : o
Personalized field : huh ? oO
Réputation : 3
Points : 9439
Date d'inscription : 08/08/2007

Profil
TI: 84+, 89 tita, 89 tita
TO: infini :p
Spécialité: C 68k

[Basic] 1A : Animer l'ecran avec des sprites Vide
MessageSujet: Re: [Basic] 1A : Animer l'ecran avec des sprites   [Basic] 1A : Animer l'ecran avec des sprites Icon_minitimeJeu 21 Fév 2008, 19:22

pas mal du tout !
j'te donne...allez, 70 TO pour ce tuto

au fait, tu comptes faire plusieurs sujets ou tout écrire à la suite ?
Revenir en haut Aller en bas
Syfo
Pokémophile
Pokémophile
Syfo

Nombre de messages : 1978
Age : 33
Localisation : IYA
items : [Basic] 1A : Animer l'ecran avec des sprites Syfo1fp7qx4[Basic] 1A : Animer l'ecran avec des sprites Ti83plusgf8[Basic] 1A : Animer l'ecran avec des sprites Ti84plusdm0[Basic] 1A : Animer l'ecran avec des sprites Ti89kb2[Basic] 1A : Animer l'ecran avec des sprites Ti89titaul9

Personalized field : 26 jetons
Réputation : 8
Points : 6761
Date d'inscription : 09/08/2007

Profil
TI: 80, 82, 83, 83+, 84+
TO: 2 945 [GAIN * 1.1]
Spécialité: Basic z80

[Basic] 1A : Animer l'ecran avec des sprites Vide
MessageSujet: Re: [Basic] 1A : Animer l'ecran avec des sprites   [Basic] 1A : Animer l'ecran avec des sprites Icon_minitimeJeu 21 Fév 2008, 22:01

Il me reste un peu a faire a la fin de celui ci, puis je ferais d'autres sujets.
Revenir en haut Aller en bas
AdRiWeB
amis
amis
AdRiWeB

Nombre de messages : 3655
Age : 31
Localisation : Juste sous mes cheveux
Loisirs : Internet, programmation, TI, musique, tennis-de-table ...
Humeur : ^^
items : o
Personalized field :
Réputation : 0
Points : 6280
Date d'inscription : 12/08/2007

Profil
TI: TI-84 Plus, nspire CAS
TO: 2429 {2}
Spécialité: Basic z80

[Basic] 1A : Animer l'ecran avec des sprites Vide
MessageSujet: Re: [Basic] 1A : Animer l'ecran avec des sprites   [Basic] 1A : Animer l'ecran avec des sprites Icon_minitimeJeu 21 Fév 2008, 22:21

aïe ^^ plus que 20 TO de différence avec Syfo ^^

tu l'as mis sur le wiki, ou t'attends d'abord la version finale ? Razz
Revenir en haut Aller en bas
http://www.adriweb.net
Syfo
Pokémophile
Pokémophile
Syfo

Nombre de messages : 1978
Age : 33
Localisation : IYA
items : [Basic] 1A : Animer l'ecran avec des sprites Syfo1fp7qx4[Basic] 1A : Animer l'ecran avec des sprites Ti83plusgf8[Basic] 1A : Animer l'ecran avec des sprites Ti84plusdm0[Basic] 1A : Animer l'ecran avec des sprites Ti89kb2[Basic] 1A : Animer l'ecran avec des sprites Ti89titaul9

Personalized field : 26 jetons
Réputation : 8
Points : 6761
Date d'inscription : 09/08/2007

Profil
TI: 80, 82, 83, 83+, 84+
TO: 2 945 [GAIN * 1.1]
Spécialité: Basic z80

[Basic] 1A : Animer l'ecran avec des sprites Vide
MessageSujet: Re: [Basic] 1A : Animer l'ecran avec des sprites   [Basic] 1A : Animer l'ecran avec des sprites Icon_minitimeVen 22 Fév 2008, 14:57

J'attends qu'il soit fini. Mais si tu veux le mettre a ma place sur le wiki une fois qu'il sera fini, te gene pas, j'ai la flemme de refaire la mise en page une nouvelle fois.

edit: fin de la lecon ajoutee.
Revenir en haut Aller en bas
ProgVal
modérateur
modérateur
ProgVal

Nombre de messages : 4107
Age : 173
Localisation : In da cloud
items : o
Personalized field :
Réputation : -4
Points : 6720
Date d'inscription : 09/08/2007

Profil
TI: V200 - NSpire
TO: 120 [2352 - 2%]
Spécialité: Programmation web

[Basic] 1A : Animer l'ecran avec des sprites Vide
MessageSujet: Re: [Basic] 1A : Animer l'ecran avec des sprites   [Basic] 1A : Animer l'ecran avec des sprites Icon_minitimeVen 22 Fév 2008, 15:34

Ca à l'air très bien, c'est résenté comme une FaQ, mais structuré comme un tuto.
Revenir en haut Aller en bas
https://progval.net
Syfo
Pokémophile
Pokémophile
Syfo

Nombre de messages : 1978
Age : 33
Localisation : IYA
items : [Basic] 1A : Animer l'ecran avec des sprites Syfo1fp7qx4[Basic] 1A : Animer l'ecran avec des sprites Ti83plusgf8[Basic] 1A : Animer l'ecran avec des sprites Ti84plusdm0[Basic] 1A : Animer l'ecran avec des sprites Ti89kb2[Basic] 1A : Animer l'ecran avec des sprites Ti89titaul9

Personalized field : 26 jetons
Réputation : 8
Points : 6761
Date d'inscription : 09/08/2007

Profil
TI: 80, 82, 83, 83+, 84+
TO: 2 945 [GAIN * 1.1]
Spécialité: Basic z80

[Basic] 1A : Animer l'ecran avec des sprites Vide
MessageSujet: Re: [Basic] 1A : Animer l'ecran avec des sprites   [Basic] 1A : Animer l'ecran avec des sprites Icon_minitimeVen 22 Fév 2008, 15:45

Ouaip, j'ai copie le style des tutos du site du zero, qui sont tres bien faits. Je te remercie.
Revenir en haut Aller en bas
ProgVal
modérateur
modérateur
ProgVal

Nombre de messages : 4107
Age : 173
Localisation : In da cloud
items : o
Personalized field :
Réputation : -4
Points : 6720
Date d'inscription : 09/08/2007

Profil
TI: V200 - NSpire
TO: 120 [2352 - 2%]
Spécialité: Programmation web

[Basic] 1A : Animer l'ecran avec des sprites Vide
MessageSujet: Re: [Basic] 1A : Animer l'ecran avec des sprites   [Basic] 1A : Animer l'ecran avec des sprites Icon_minitimeVen 22 Fév 2008, 16:14

Mais de rien, mon cher!
Revenir en haut Aller en bas
https://progval.net
AdRiWeB
amis
amis
AdRiWeB

Nombre de messages : 3655
Age : 31
Localisation : Juste sous mes cheveux
Loisirs : Internet, programmation, TI, musique, tennis-de-table ...
Humeur : ^^
items : o
Personalized field :
Réputation : 0
Points : 6280
Date d'inscription : 12/08/2007

Profil
TI: TI-84 Plus, nspire CAS
TO: 2429 {2}
Spécialité: Basic z80

[Basic] 1A : Animer l'ecran avec des sprites Vide
MessageSujet: Re: [Basic] 1A : Animer l'ecran avec des sprites   [Basic] 1A : Animer l'ecran avec des sprites Icon_minitimeVen 22 Fév 2008, 16:26

oulala ouai t'as raison, la mise en page, ca va être un peu chaud ^^


quoique ... pas forcément, avec l'éditeur wysiwyg ..
Revenir en haut Aller en bas
http://www.adriweb.net
tama
Admin
Admin
tama

Nombre de messages : 12376
Age : 32
Localisation : DTC ? :triso:
Humeur : =)
items : o
Personalized field : huh ? oO
Réputation : 3
Points : 9439
Date d'inscription : 08/08/2007

Profil
TI: 84+, 89 tita, 89 tita
TO: infini :p
Spécialité: C 68k

[Basic] 1A : Animer l'ecran avec des sprites Vide
MessageSujet: Re: [Basic] 1A : Animer l'ecran avec des sprites   [Basic] 1A : Animer l'ecran avec des sprites Icon_minitimeVen 22 Fév 2008, 21:21

le copier-coller marche pas ? :p
ProgVal>ça, ça s'appelle rédiger ^^
sinon c'est vrai que ça ressemble bien aux tutos du sdz :)
Revenir en haut Aller en bas
ProgVal
modérateur
modérateur
ProgVal

Nombre de messages : 4107
Age : 173
Localisation : In da cloud
items : o
Personalized field :
Réputation : -4
Points : 6720
Date d'inscription : 09/08/2007

Profil
TI: V200 - NSpire
TO: 120 [2352 - 2%]
Spécialité: Programmation web

[Basic] 1A : Animer l'ecran avec des sprites Vide
MessageSujet: Re: [Basic] 1A : Animer l'ecran avec des sprites   [Basic] 1A : Animer l'ecran avec des sprites Icon_minitimeVen 22 Fév 2008, 21:29

Tu trouves?
Revenir en haut Aller en bas
https://progval.net
tama
Admin
Admin
tama

Nombre de messages : 12376
Age : 32
Localisation : DTC ? :triso:
Humeur : =)
items : o
Personalized field : huh ? oO
Réputation : 3
Points : 9439
Date d'inscription : 08/08/2007

Profil
TI: 84+, 89 tita, 89 tita
TO: infini :p
Spécialité: C 68k

[Basic] 1A : Animer l'ecran avec des sprites Vide
MessageSujet: Re: [Basic] 1A : Animer l'ecran avec des sprites   [Basic] 1A : Animer l'ecran avec des sprites Icon_minitimeVen 22 Fév 2008, 21:33

euh ?
Revenir en haut Aller en bas
Contenu sponsorisé




[Basic] 1A : Animer l'ecran avec des sprites Vide
MessageSujet: Re: [Basic] 1A : Animer l'ecran avec des sprites   [Basic] 1A : Animer l'ecran avec des sprites Icon_minitime

Revenir en haut Aller en bas
 

[Basic] 1A : Animer l'ecran avec des sprites

Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Forum tama's team :: TI :: TI z80 :: Tutoriels-
Créer un forum | ©phpBB | Forum gratuit d'entraide | Signaler un abus | Forum gratuit