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

Auteur Sujet: Problème d'affichage de texture lorsque plusieurs chargées..?  (Lu 2257 fois)

0 Membres et 1 Invité sur ce sujet

Slash94

  • Jr. Member
  • **
  • Messages: 89
    • Voir le profil
Salut à tous,

Alors voilà, j'ai un problème [TRES] simple à priori, ( sur la forme du moins )....

J'ai une classe "player" qui contient une texture     sf::Texture texSoldier; dans mon fichier prototype, je load la texture dans mon constructeur, tout s'affiche très bien une fois exécuté... mais voilà, dés que je crée une SECONDE texture dans mon prototype, genre sf::Texture texAim; et que je charge une image sur cette texture, plus rien ne s'affiche lorsque j'exécute mon programme... Ni même mon sprSoldier avec sa texture..
Là je dois avouer ne pas du tout comprendre ce qui peut bien se passer...
Idem lorsque je souhaite charger plus d'une texture dans une autre classe, mon sprite soldier ne s'affiche pas non plus !!

Merci de votre précieuse aide..

EDIT : Même problème avec les sprites..
« Modifié: Mars 01, 2017, 08:09:29 pm par Slash94 »

Laurent

  • Administrator
  • Hero Member
  • *****
  • Messages: 32498
    • Voir le profil
    • SFML's website
    • E-mail
Re : Problème d'affichage de texture lorsque plusieurs chargées..?
« Réponse #1 le: Mars 01, 2017, 08:59:54 pm »
La description approximative du code n'a jamais valu le code lui-même ;)
Laurent Gomila - SFML developer

Slash94

  • Jr. Member
  • **
  • Messages: 89
    • Voir le profil
Re : Problème d'affichage de texture lorsque plusieurs chargées..?
« Réponse #2 le: Mars 01, 2017, 09:07:39 pm »
Oups, excuse-moi, autant pour moi  ;D

#ifndef PLAYER_H_INCLUDED
#define PLAYER_H_INCLUDED

#include <SFML/Graphics.hpp>

#include <iostream>
#include <vector>
#include <math.h>

class player{

protected:
    //sfml
    sf::Texture texSoldier;
    sf::Sprite sprSoldier;
    sf::Vector2i mousePosition;
    sf::Vector2f diff;
    sf::Clock clockMove;
    sf::Clock clockShot;
    //float
    float xPos, yPos, angle;
    //int
    int anim = 0;
    int gunTime = 400;
    //vector
    std::vector<sf::CircleShape>vecBullet;

public:
    player();
    void drawTo(sf::RenderWindow &win);
    void checkMoves();
    void checkRotation(sf::RenderWindow &win);
    void checkFire(sf::RenderWindow &win);
    void setPosition(float x, float y);
    //getters
    int getGunTime();
    ~player();

};

#endif // PLAYER_H_INCLUDED
 

Voici mon prototype "player.h", et là, tu vois, admettons que je rajoute tout en haut dans mes attributs, un autre sf::Texture MATEXTURE ou un autre sf::Sprite MONSPRITE et hop, mon sprite Soldier ne s'affiche plus....

Slash94

  • Jr. Member
  • **
  • Messages: 89
    • Voir le profil
Re : Problème d'affichage de texture lorsque plusieurs chargées..?
« Réponse #3 le: Mars 01, 2017, 09:23:11 pm »
Pareil pour ma classe viseur (crosshair) :

Mon personnage et le viseur s'affichent très bien quand je lance mon programme mais si je rajoute un autre sprite dans ma classe crosshair ( genre sf::Sprite sprImpact ou sf::Texture texImpact ) mon personnage de ma classe player disparait lors du lancement du programme alors qu'il n'y a aucun lien entre les 2 classes pourtant.. même pas d'inclusion de l'une ou de l'autre...



#ifndef CROSSHAIR_H_INCLUDED
#define CROSSHAIR_H_INCLUDED

#include <SFML/Graphics.hpp>

class crosshair{

protected:
    sf::Texture texCrossHair;
    sf::Sprite sprCrossHair;
    sf::Vector2f mousePosition;

public:
    crosshair();
    void checkImpactAnim(sf::RenderWindow &win);
    void drawTo(sf::RenderWindow &win);
    ~crosshair();

};

#endif // CROSSHAIR_H_INCLUDED
 

EDIT : Ben c'est résolu.. j'ai fermé Code::Blocks par mégarde et en le relançant, mon programme affichait bien tous les sprites !! Donc c'était un bug du compilo !  ;D
« Modifié: Mars 02, 2017, 04:31:14 pm par Slash94 »