utiliser des sprites en Basic: mission impossible ?
2 participants
Page 1 sur 1
utiliser des sprites en Basic: mission impossible ?
salut, ça fait un petit moment que je cherchais comment faire, je crois que ça se précise:
utiliser des sprites de qualité en basic, pour faire de beaux progs graphiques, sans avoir à recopier des lignes de coordonées de Ligne(x1,y1,x2,y2 !! le bonheur !
j'avais d'abord eu l'idée de faire comme en Xlib: pouvoir stocker plein de sprites dans une des images et ensuite n'en afficher qu'une partie, mais je trouve ça pas super rentable.
alors j'ai eu ensuite l'idée de faire comme en Axe: avec de l'hexadécimal. sauf, que pour gagner en rentabilité, j'utilise non pas la base 16, mais la base 36 (tout l'alphabet et tout les chiffres).
je vous poste déjà le programme que j'ai fait pour traduire un sprite en code de base 36 (en passant par le binaire), je suis en train de coder celui qui à partir de ce code réaffichera le sprite.
avantage: on peut faire des sprites de n'importe quelle dimension.
utiliser des sprites de qualité en basic, pour faire de beaux progs graphiques, sans avoir à recopier des lignes de coordonées de Ligne(x1,y1,x2,y2 !! le bonheur !
j'avais d'abord eu l'idée de faire comme en Xlib: pouvoir stocker plein de sprites dans une des images et ensuite n'en afficher qu'une partie, mais je trouve ça pas super rentable.
alors j'ai eu ensuite l'idée de faire comme en Axe: avec de l'hexadécimal. sauf, que pour gagner en rentabilité, j'utilise non pas la base 16, mais la base 36 (tout l'alphabet et tout les chiffres).
je vous poste déjà le programme que j'ai fait pour traduire un sprite en code de base 36 (en passant par le binaire), je suis en train de coder celui qui à partir de ce code réaffichera le sprite.
avantage: on peut faire des sprites de n'importe quelle dimension.
- Code:
Input "largeur=",L
" "→Str0
For(A,0,L-1
For(B,0,L-1
If pxl-Test(A,B:Then
Str0+"1"→Str0
Else
Str0+"0"→Str0
End
End
End
sub(Str0,2,L²→Str0
0→R
For(A,1,length(Str0
R+(2^(Length(Str0)-A+1)expr(sub(Str0,A,1→R
End
" "→Str0
"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ→Str1
For(A,10,0,-1
iPart(R/(35^A→K
R-K(35^A→R
Str0+sub(Str1,K+1,1→Str0
End
Repeat sub(Str0,1,1)=/="0"
sub(Str0,2,length(Str0)-1→Str0
End
Disp Str0
persalteas- Platinum 2
- Sexe :
Age : 29
Messages : 2068
Date d'inscription : 30/06/2010
Etudes : PACES (médecine)
Points Forum : 114
Points Concours : 10
Langages :- - TI-Basic Z80
- - xLib
- - Grammer
- - TI-Basic Nspire
- - TI-82 Stats.fr
- - TI-83
- - TI-83+
- - TI-84+ SE
- - TI-86
- - TI-Nspire
- - TI-Nspire CX
- - Casio Collège
- - Casio Graph
Re: utiliser des sprites en Basic: mission impossible ?
Et l'affichage sur l'écran, c'est assez rapide pour du TI-BASIC ?
Re: utiliser des sprites en Basic: mission impossible ?
en fait, non. c'est assez lent, mais pour des décors, ça vaut le coup. mais c'est sur, pas pour un personnage de rpg.
par contre, je viens de rencontrer un problème: j'ai fait mes tests avec un sprite de 4*4 ce qui est assez peu...
avant de me rendre compte qu'un sprite de 8*8 (soit un nombre binaire de 64 chiffres si on considère mon prog), eh bien ça monte nettement au dessus de 35 puissance 10!
donc je vais devoir encore allonger le prog. on va perdre encore plus en fluidité.
par contre, je viens de rencontrer un problème: j'ai fait mes tests avec un sprite de 4*4 ce qui est assez peu...
avant de me rendre compte qu'un sprite de 8*8 (soit un nombre binaire de 64 chiffres si on considère mon prog), eh bien ça monte nettement au dessus de 35 puissance 10!
donc je vais devoir encore allonger le prog. on va perdre encore plus en fluidité.
persalteas- Platinum 2
- Sexe :
Age : 29
Messages : 2068
Date d'inscription : 30/06/2010
Etudes : PACES (médecine)
Points Forum : 114
Points Concours : 10
Langages :- - TI-Basic Z80
- - xLib
- - Grammer
- - TI-Basic Nspire
- - TI-82 Stats.fr
- - TI-83
- - TI-83+
- - TI-84+ SE
- - TI-86
- - TI-Nspire
- - TI-Nspire CX
- - Casio Collège
- - Casio Graph
Re: utiliser des sprites en Basic: mission impossible ?
Oui mais cela dépend aussi du résultat final.
Sujets similaires
» [Basic] Optimisation, bien utiliser Ans
» [Basic] RPG 2
» [Z80]Utiliser calcsys.
» Astuce : utiliser l'indentation
» Doors CS 7 - Transfert impossible
» [Basic] RPG 2
» [Z80]Utiliser calcsys.
» Astuce : utiliser l'indentation
» Doors CS 7 - Transfert impossible
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum