1

salut,
je vais peut-etre poser une question qui vas sembler évidente à qqs uns d'entre vous, mais qui pour moi me semble compliqué. Je vais essayer de vous la poser à partir d'un exemple simple:
imaginons un rpg style zelda (pour simplifier)
les éléments du décors sont dans une matrice 8x plus petite que la carte en sprite je suppose
par exemple:

0-1
0-1

indique qu'il y a un sprite de 8*8 vide, à coté un sprite 1 de 8*8, en dessous un sprite de 8*8 vide, ...

jusque là, j'espère que vous suivez wink

bon, imaginons zelda à coté d'un tabouret
comment faire pour ne faire bouger ce tabouret que de 1, car avec ce systeme, il ne pourra que bouger de 8 pour qu'on puisse savoir ou est la nouvelle position du tabouret (sinon, on a aucune information de l'endroit où il se trouve)
je cherche donc une solution à ce problème, en esprant que qqn comprenne ce que je viens de dire
grin
@+


En préretraitre

2

pkoi tu ne fais pas une autre table, avec dans les cases la position en pixels de chacunes de tes tiles par rapport au coin en haut à gauche de ta case?
In many respects the Yoshi is like a beautiful woman. A man can come so enamoured that he bestows on her all his time, his energy and his fortune.
- Fred whipple, 1960

*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina

3

ah, première idée interessante
j'y avait pas pensé grin
faut voir si ca peut marcher
(en fait c pas pour maintenant mais je prend des idées avant smile)
y'en a pas d'autre ???
smile
En préretraitre

4

si tu anime ton tabouret comme le perso,
il ne doit pas etre un element de la carte mais un objet distinct:
a chaque aaffichage de la carte, tu vois si il est dans l'ecran,
puis tu calcule sa position dans l'ecran par rapport a la position de l'ecran sur la carte.
avatar
fabetal_ > Hier, je me suis fait monter par un pote
redangel > et en chevals, ça donne quoi?
Nil> OMG I think I'm gay

5

ouais, mais si on a beaucoup d'objets, ca fait beaucoup de variables
et si on a plusieurs cartes ...... sad
pour l'instant celle de sBibi est je pense la plus apprpriée
En préretraitre

6


[edit]Edité par jackiechan91 le 25-11-2001 à 22:51:14[/edit]

7

j'aime bien ton post jackiechan grin
In many respects the Yoshi is like a beautiful woman. A man can come so enamoured that he bestows on her all his time, his energy and his fortune.
- Fred whipple, 1960

*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina

8

Moi aussi grin

9

Tu fais comme Nintendo :
Lorsqu'il ne bouge pas, il est en position 8x, comme tile du bakcground.
Lorsqu'il bouge il devient un sprite, momentanement.

10

ouais, et il continue de bouger jusqu'à la prochaine case de la map...
In many respects the Yoshi is like a beautiful woman. A man can come so enamoured that he bestows on her all his time, his energy and his fortune.
- Fred whipple, 1960

*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina

11

et comme nintendo, il va y avoir des choses marrantes, du style :
- je pousse le tabouret
- je vais me balader deux écrans plus loin
- je revient, et ih surprise, le tabouret est revenu à sa place !

c inévitable si on ne modifie pas la map, et sur gameboy, cette possibilité n'a apparemment pas été possible, mais sur ti, ça l'est, mais si ton prog pompe trop de place en ram, il en restera pas assez pour pallier à ce problème
:D

12

ouais, dc c'est mieux ma méthode koi...
In many respects the Yoshi is like a beautiful woman. A man can come so enamoured that he bestows on her all his time, his energy and his fortune.
- Fred whipple, 1960

*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina

13

mais g jamais dit le contraire, chaque méthode à ses avantages.
bouffe mem ou économique, réaliste ou version gameboy
:D

14

La version realiste bouffe enormement de RAM pour peu qu'on est pas mal d'objets.

15

bah tu m'étonnes :]
c sur ke si t'as 300 poubelles à bouger... grin
In many respects the Yoshi is like a beautiful woman. A man can come so enamoured that he bestows on her all his time, his energy and his fortune.
- Fred whipple, 1960

*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina

16

quoique... si tu te limites à 256 objets, et à des coordonnées dans 4 bits, et une map de maxi 2048*2048 pixels, soit 256*256 cases de 8 pixels ,ça te fé 1 .w + 1.b par objet, plus 1 byte pour le nombre total d'objets au début de ton tableau
donc au pire (256 objets), ça te fé:

3*256+1=769 bytes de ram tongue

et 256 poubelles à casser avec un taxi, c bien grin

arf, si vraiment tu te sens une âme de barbare, tu peux toujours en avoir maxi 65536 grin

de même une map de 524288*524288, soit 65536 tiles de 8 px*65536 gringringrin
avec là encore la position dans la tile codé sur 4 bits (en fait 3 suffiraient), ça fait, si je ne m'abuse: 1 long+ 1 byte
et un word pour le nombre d'objets au début de l'array...
ce qui fé donc:
5*65536+2=327 681 bytes de RAM nécessaires gringringrin
arf, merde, ça rentre pas dans la Ti ça grin

bon, bah t'avais raison PpHd grin
n'empêche, je doute que gugusg aie envie de faire une map avec 65536 tiles tongue
ce qui ferait, vu ke sa caisse tient dans une tile, soit 8 pixels, on va dire qu'une caisse fait 3.50m de long, dc la dimension de son monde fait qd même 28672 m de côté tongue
28 km, c honnête qd même gringringrin
In many respects the Yoshi is like a beautiful woman. A man can come so enamoured that he bestows on her all his time, his energy and his fortune.
- Fred whipple, 1960

*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina

17

sBibi, tu viens de démonter pourkoi sur gameboy ça devient impossible !
car cette console à deux balles (que je possède) est bien sympa du coté joueur, car du coté développeur, c plus chiant, y que 64k de RAM rotfl sur cette machine ! et il faut aussi penser à accueillir les tampons écrans et les 2 autres virtuels, plus les variables .... bref ce système est impossible à mattre en oeuvre .. sad donc il faut bien gerer ces problèmes de mémoire, en l'occurence rien enregistrer. c les cas du magnifique jeu Zelda qui par la taille de sa map, ne peut rien gerer de ce type
:D

18

ben ué... ms bon, il fo qd même voir le nombre d'objets DEPLAçABLES par le joueur aussi... la plupart sont fixes... gugusg parlait d'objets déplaçables par collision...

en l'occurrence, il ma semble que c'est pour son jeu, dc les seuls trucs "déplaçables" sont les poubelles, les cartons et les piétons rotfl
enfin bon, c'est à lui de voir, il peut tjrs faire un mix des deux méthodes...
ou faire comme les bomberman pour les monstres...
[edit]Edité par sBibi le 08-12-2001 à 15:13:41[/edit]
In many respects the Yoshi is like a beautiful woman. A man can come so enamoured that he bestows on her all his time, his energy and his fortune.
- Fred whipple, 1960

*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina

19

Mais en plus faut faire une recherche a chaque fois pour determiner la position des objets. Si on veut implementer cette methode, il faut imperativement connaitre le nombre maximum d'objets deplaceables.

20

et tu peux pas faire le truc inverse?
dans ta map, ajouter 1 byte par case pour déterminer le position de l'objet DANS la case? comme ça tu peux paramétrer directement les pos de TOUTES tes cases !
cad la même chose, mais directement dans ta map.
1octet par tile, c pas la mort smile
ou même deux smile
In many respects the Yoshi is like a beautiful woman. A man can come so enamoured that he bestows on her all his time, his energy and his fortune.
- Fred whipple, 1960

*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina

21

ha uééé, c bien ça smile
chuis content là grin
In many respects the Yoshi is like a beautiful woman. A man can come so enamoured that he bestows on her all his time, his energy and his fortune.
- Fred whipple, 1960

*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina

22

si la map fait 64*64, ça doit faire 4096 si je me trompe pas, c tout à fait possible.
si la map fait 128*128, 16384, un peu moins, 256², ça le fait plus
:D

23

mais j'y pense, deux poubelles ne pourront pas se retrouver au même endroit, donc ta méthode est bonne, mais limitée
:D

24

hmmm... ué...
enfin, je sais pas comment est foutue sa map...
qques précisions seraient les bienvenues hein gugusg? smile
In many respects the Yoshi is like a beautiful woman. A man can come so enamoured that he bestows on her all his time, his energy and his fortune.
- Fred whipple, 1960

*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina

25

oui, en effet, car on manque de présisions, donc précise grin
:D

26

alors, petites precisions:
-mes map font 512*512 (32768*2 pour les ecrans virtuels)+2 ecrans virtuels "normaux".
- je pense faire une première matrice de 64*8 (8 fois moins que la carte) pour les tiles (1 on passe, 0 on passe pas ou l'inverse tongue) qui ne bougent pas.
Le reste, ben je sais pas encore grin mais sBibi a trouvé. Je ne pense pas qu'il y ait beaucoup d'objets par map (au plus une quinzaine je pense, en tout cas moins d'une centaine c'est sur cool)
j'espère que cela va lever vos zones d'ombres grin
En préretraitre