Autorisation : Membre
Nb de messages : 148
Inscrit le : Jeu 13 Oct 2011, 15:48
Posté le : Jeu 01 Déc 2011, 20:02
Bon alors déjà il parait que les jeux de plateformes sont impossible... Le temps que m'as pris a faire les graphiques déjà sans mouvement m'ont légérement dégouté mais tant qu'il y a de la vie il y a de l'espoir... Alors j'aimerais faire un jeu de plateformes avec des beaux graphiques... Alors pour l'instant j'ai fait une ébauche de décor (inachevé et moche mais avec un peu de perseverence....) doc pour l'instant voila le décor :
Code
:EffEcr
:EffDessin
:0->Xmin
:94->Xmax
:-62->Ymin
:0->Ymax
:AxesNaff:FonctOff
:L(0,-62,94,-62 // Ici le L est pour Ligne( oui oui je sais je suis un des pire flemmard qui existe mais c'est carrément relou de tout taper...
:L(40,-61,40,-57
:L(41,-56,59,-56
:L(60,-57,60,-61
:L(95,-48,65,-48
:L(64,-47,64,-45
:L(65,-44,95,-44
:L(0,-30,35,-30
:L(36,-29,36,-27
:L(43,-31,59,-31
:L(42,-32,42,-35
:L(43,-36,59,-36
/L(36,-19,57,-19
:L(58,-18,58,-14
:L(36,-13,57,-13
:L(35,-18,35,-14
Bon et c'est pas tout j'ai aussi fait des perso (Que je n'utiliserais sûrement jamais...)
un type qui ressenble a ça : ..
. .
......
. .
..
. .
Je met le code bientôt.
Et un méchant qui ressemble a ça :
.
. .
. .
. . . .
. . . .
. .
.....
En fin vite fait et puis y'a d'autre trucs mais j'ai pas le temps maintenant...
Donc j'aurais besoin d'aide pour les faire bouger ou simplifire tout ça....
EDIT: Malheureusement le post se reformate et on vois pas la vrais forme des personnage...
Autorisation : Membre
Nb de messages : 850
Inscrit le : Sam 15 Oct 2011, 11:07
Posté le : Jeu 01 Déc 2011, 21:41
Ahem oui euh pour les graphismes ce que je peux te conseiller, c'est de faire une routine rien que pour le personnage a l'arrêt ou TOUT le personnage mouvement compris. Après les graphismes sérieusement ça m'emm... M'embete. Donc bon
Par contre autre conseil cette fois utile :
Met plutôt 0->YMin et 62->Ymax tu économiseras tous les octets des moins, dans les lignes ou points
---------------------- La la la ...
Avez-vous pensé à regarder le manuel avant de demander conseil ? Un manuel est fait avant tout pour être consulté : MANUEL
Vous avez un problème avec l'ordinateur avec votre calculatrice ? SOLUTION EN VIDEO
Autorisation : Membre
Nb de messages : 3738
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Jeu 01 Déc 2011, 21:45
Ecrit un programme par procédure puis appelle les depuis un programme principal.
Cela peut te simplifier la structure du programme en évitant des goto et même rendre le programme plus rapide.
Bonne chance
---------------------- ti82statfr: 2008, inscrit: 2009, ti84pocketfr: noël2011, ti30xbmultiview: iut 2012-2014
Perfectionniste, manque tact. Pas le temps de tout publier depuis 2011. Répond toujours aux questions. (rédigé juin 2014)
Autorisation : Membre
Nb de messages : 148
Inscrit le : Jeu 13 Oct 2011, 15:48
Posté le : Ven 02 Déc 2011, 16:21
Ahahaha.... euh oué... Vous me suréstimez pas un peu là ? Je ne contrôle pas les routines... Sprites je comprends pasque j'ai déjà fait un jeu sur l'ordi mais en langage calculette késkeussapeu bien vouloir dire? Pour le coup du -62 c'est pasque tout le monde le fait comme ça et je programme en m'inspirant sérieusement d'autres progs... Vous vous posez sûrement la questions: Mais alors pourquoi est-ce qu'il veut faire ce truc ce pauvre abruti... Euh et bin je vous laisse trouver la réponse tout seul pasque je le sais pas moi-même...
Autorisation : Membre
Nb de messages : 850
Inscrit le : Sam 15 Oct 2011, 11:07
Posté le : Ven 02 Déc 2011, 16:25
Le -62 sert uniquement à coordonner les coordonnées textes et lignes, ou point et pixel. Et du coup, sur les gros programmes tu perds facilement 200 octets, 2 par ligne
Un sprite est, si je ne me trompe pas. (mais je peux me tromper !) une figure particulière qui revient, du genre une lettre agrandie.
C'est bien ça ?
---------------------- La la la ...
Avez-vous pensé à regarder le manuel avant de demander conseil ? Un manuel est fait avant tout pour être consulté : MANUEL
Vous avez un problème avec l'ordinateur avec votre calculatrice ? SOLUTION EN VIDEO
Autorisation : Membre
Nb de messages : 118
Inscrit le : Dim 13 Nov 2011, 14:26
Posté le : Ven 02 Déc 2011, 18:44
pour moi le sprite, c'était dessiner en se servant de la première colonne des textes, ce qui permet de faire des figures jolies, en parfois plus rapide.
----------------------
Citer
Le temps est une variable dans une boucle infinie, qu'on ne cesse d'incrémenter.
Autorisation : Membre
Nb de messages : 1366
Inscrit le : Ven 25 Mar 2011, 22:58
Posté le : Ven 02 Déc 2011, 22:51
un sprite est une "tuile annimée" que l'on peut donc placer à l'endroit où on veut. Par contre, c'est pas gagnée d'en faire, du fait de la vitesse si ce n'est pas faisables de manière accélérée (lignes, texte, gros points, ...)
Sandro
---------------------- mort à l'inutile, place à la mémoire libre et aux programmes
Autorisation : Membre
Nb de messages : 3738
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Sam 03 Déc 2011, 0:54
Ne désespère pas même si ce que nous disons est trop évolué.
C'est souvent plutôt à nous de nous rapprocher de toi que le contraire.
Les sprites dans un language de bas niveau comme l'assembleur sont un ensemble de pixels contigus en rectangle stockés en mémoire et pouvant être affichés à un emplacement précis de l'écran à tout moment.
En TI-Basic, l'affichage du sprite n'est pas gérée donc il faut trouver une manière de stocker ces pixels et de les afficher vite.
Enchaîner ces sprites successivement donne l'animation.
Quelqu'un a eu l'idée d'utiliser les chaînes de caractères et Text() pour construire sa procédure. Cela fonctionne très bien pour des petites images et s'est répandu sous le nom de "text-sprite".
C'est ce que désigne Polymorph je crois.
persalteas et moi avons déjà écrit des procédures similaires à des sprites mais sont soit trop lourdes soit trop lentes.
Est-ce bien une de ces deux choses que tu appelles "sprites en basic" persalteas ?
---------------------- ti82statfr: 2008, inscrit: 2009, ti84pocketfr: noël2011, ti30xbmultiview: iut 2012-2014
Perfectionniste, manque tact. Pas le temps de tout publier depuis 2011. Répond toujours aux questions. (rédigé juin 2014)
Autorisation : Membre
Nb de messages : 118
Inscrit le : Dim 13 Nov 2011, 14:26
Posté le : Dim 04 Déc 2011, 10:55
Citer
Quelqu'un a eu l'idée d'utiliser les chaînes de caractères et Text() pour construire sa procédure. Cela fonctionne très bien pour des petites images et s'est répandu sous le nom de "text-sprite".
C'est ce que désigne Polymorph je crois.
Exact, mais après pas mal de recherche sur papier (pendant les cours de maths de préférence :>) on peut souvent arriver à simplifier la chose avec du pt-on,2/3 du pt-off, des lignes, et tout le barza! Il faut savoir être imaginatif!
----------------------
Citer
Le temps est une variable dans une boucle infinie, qu'on ne cesse d'incrémenter.
Autorisation : Membre
Nb de messages : 148
Inscrit le : Jeu 13 Oct 2011, 15:48
Posté le : Lun 05 Déc 2011, 15:43
ouais alors j'ai trouvé des trucs sur les codes touches et pour faire bouger des perso on mets leurs coordonées dans 2 variables... Mais comment on fait pour donner des coordonées a un sprite? (ceci n'est que le début a une longue série de questions...)
Autorisation : Membre
Nb de messages : 3738
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Lun 05 Déc 2011, 17:38
L'instruction ou le sous-programme de sprite doit être codé avec des variables qui dépendent de la position du sprite.
En gros le sprite représente un ensemble de coordonnées de pixels donnés dans un mini repère associé au sprite.
En donnant les coordonnées de l'origine de ce mini repère dans le repère de l'écran, l'instruction d'affichage du sprite dessine les pixels du sprites par rapport à cette origine.
program SPRITE
pt-On(A,B
pt-On(A+3,B,2
pt-On(A+3,B+3,3
Chaque fois que j'execute ce code je dessine trois points.
Le premier programme appelle le second avec des valeurs différentes de A et B donc le sprite sera dessiné en des lieux différents.
Mais il faut se méfier de la correspondance entre Text et pt-On au niveau des coordonnées.
D'ailleurs on privilégie souvent les coordonnées des pixels et des Text.
---------------------- ti82statfr: 2008, inscrit: 2009, ti84pocketfr: noël2011, ti30xbmultiview: iut 2012-2014
Perfectionniste, manque tact. Pas le temps de tout publier depuis 2011. Répond toujours aux questions. (rédigé juin 2014)
Autorisation : Membre
Nb de messages : 148
Inscrit le : Jeu 13 Oct 2011, 15:48
Posté le : Lun 05 Déc 2011, 18:02
Citer
Code
program SPRITE
pt-On(A,B
pt-On(A+3,B,2
pt-On(A+3,B+3,3
ça c'est pour le prgm du sprite? En fait le premier truc de ma longue liste de truc a faire est de prendre le "sprite héros" que j'ai donné le mettre dans mon prgm initial et de réussir a le faire bouger... Déjà là je suis perdu alors ...(en sachant qu'il va falloir faire bouger les méchants automatiquement, réussir a faire retomber le héros après un saut, faire perdre un coeur au héros quand il touche un méchant et j'en passe...)
Autorisation : Membre
Nb de messages : 3738
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Lun 05 Déc 2011, 18:54
Mes descriptions des sprites sur TI sont un peu trop généralistes.
Un programme d'affichage de sprite qui afficherait tout sprite n'est pas raisonnable.
On écrit plutôt un programme chaque fois qu'on veur un sprite.
Code
// Programme principal pour tester, à étoffer plus tard.
:EffEcr
:EffDessin
:0->Xmin
:94->Xmax
:-62->Ymin
:0->Ymax
:AxesNaff:FonctOff
prgmDECOR
Prompt A,B // les valeurs dans ton programme de base sont 56 et 23
prgmHEROS
Code
// Programme DECOR
// pas besoin de A ni de B car le DECOR est fixe
:Lineine(0,-62,94,-62
:Lineine(40,-61,40,-57
:Line(41,-56,59,-56
:Line(60,-57,60,-61
:Line(95,-48,65,-48
:Line(64,-47,64,-45
:Line(65,-44,95,-44
:Line(0,-30,35,-30
:Line(36,-29,36,-27
:Line(43,-31,59,-31
:Line(42,-32,42,-35
:Line(43,-36,59,-36
:Line(36,-19,57,-19
:Line(58,-18,58,-14
:Line(36,-13,57,-13
:Line(35,-18,35,-14
---------------------- ti82statfr: 2008, inscrit: 2009, ti84pocketfr: noël2011, ti30xbmultiview: iut 2012-2014
Perfectionniste, manque tact. Pas le temps de tout publier depuis 2011. Répond toujours aux questions. (rédigé juin 2014)
Autorisation : Membre
Nb de messages : 148
Inscrit le : Jeu 13 Oct 2011, 15:48
Posté le : Mar 06 Déc 2011, 17:46
houlaaaaaaaaaaa....Je comprend rien pourriez vous expliquer ce que font vos prog parce que la? désolé si je suis un peu ch**nt mais comme je n'ai pas la faculté de comprendre tout en regardant une ligne de code(et oui matrix c'est pas encore pour moi...)...
Autorisation : Membre
Nb de messages : 3738
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Mar 06 Déc 2011, 18:13
J'ai écrit une version simple de programmes JEU, DECOR et HEROS.
persalteas a réécrit le programme DECOR avec une liste et une boucle. D'ailleurs un vrai programme de sprite peut y ressembler.
Le programme JEU prépare les paramètres du graphique, appelle le programme DECOR (pour dessiner le décor) puis demande à l'utilisateur les coordonnées du héros puis appelle le programme HEROS (pour dessiner le héros là où on a demandé).
Le programme DECOR dessine toujours le décor au même endroit.
Le programme HEROS dessine le héros aux coordonnées A et B.
La première ligne de code du prog dessine le point que j'ai associé aux coordonnées du héros dans le graphique.
Les autres lignes dessinent des points dont les positions sont données par rapport au premier point.
A+1 sert à dire : "un pixel plus bas que le point de référence"
Si tu ne comprends toujours pas tu peux tester... et me dire si je me suis trompé. (on sait jamais)
---------------------- ti82statfr: 2008, inscrit: 2009, ti84pocketfr: noël2011, ti30xbmultiview: iut 2012-2014
Perfectionniste, manque tact. Pas le temps de tout publier depuis 2011. Répond toujours aux questions. (rédigé juin 2014)
Autorisation : Membre
Nb de messages : 148
Inscrit le : Jeu 13 Oct 2011, 15:48
Posté le : Lun 12 Déc 2011, 16:20
désolé de répondre si tard... je vais essayer mais là j'ai un peu décrocher et puis il faut que je m'améliore pour faire ce jeux alors je programme des trucs pourris dans mon coin (comme un jeu ou il faut juste faire du calcul mental qui n'a aucun interet...).