Bienvenue, Invité. Merci de vous connecter ou de vous inscrire.
Avez-vous perdu votre e-mail d'activation ?

Auteur Sujet: Colision TileMap : personnage coincé  (Lu 8783 fois)

0 Membres et 4 Invités sur ce sujet

OualidH38

  • Newbie
  • *
  • Messages: 46
    • Voir le profil
    • E-mail
Re : Colision TileMap : personnage coincé
« Réponse #15 le: Juin 30, 2014, 03:46:19 pm »
Le problème peut venir de ta tilemap, essai en remplaçant ça :
if (!map.load("tileset.png", sf::Vector2u(40, 40), level, 16, 8))
        return -1;
 
par ça :
if (!map.load("tileset.png", sf::Vector2u(40, 40), level, 8, 16))
        return -1;
 

Je dis surement n'importe quoi mais sait on jamais  ;D

pompot

  • Newbie
  • *
  • Messages: 9
    • Voir le profil
Re : Colision TileMap : personnage coincé
« Réponse #16 le: Juin 30, 2014, 10:10:47 pm »
Je confirme tu dis n'importe quoi  ;D
Cela sert juste à définir la structure de la map (16 colonnes pour 8 lignes). En inversant les deux valeur la map est juste affichée verticalement... Ce code est censé être bon comme je l'ai repris du tuto officiel.

Si tu veux tester par toi-même et que tu as la SFML 2.1 d'installée tu peux reprendre le code de mon message précédent.

Merci malgré tout d'essayer de m'aider  ;)

PtichapronRouge

  • Newbie
  • *
  • Messages: 41
    • Voir le profil
    • E-mail
Re : Colision TileMap : personnage coincé
« Réponse #17 le: Juillet 01, 2014, 02:59:55 pm »
Apres quelques recherches,  je crois pouvoir t'affirmer que...les zones de collision correspondent très bien au masque :p
Le problème vient d'autre part, il vient du fait que tu testes les collisions avec le point correspondant à l'origine de ton sprite_perso. Or ce point, c'est le coin haut-gauche du sprite. Vérifie toi même, ton code gère les collisions avec ce point la uniquement, ce qui fait que tu as l'impression que les zones de collisions sont au mauvais endroit.
Si tu veux résoudre ce problème, je te conseille de réécrire ton code de façon plus propre, plus claire, moins redondante (parce que certaines actions sont répétées plusieurs fois dans la même frame, comme ta vue qui est réinitialisée 2 ou 3 fois), ca sera plus lisible et plus compréhensible parce que la...ben c'est dégueulasse :p
Et évite les variables globales ;)
Un coca, un ordinateur, et un livre SFML Game Development. Elle est pas belle la vie ?