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

Auteur Sujet: Problème de lecture du loadFromFile de la classe Texture  (Lu 1959 fois)

0 Membres et 1 Invité sur ce sujet

kaktus

  • Newbie
  • *
  • Messages: 1
    • Voir le profil
Problème de lecture du loadFromFile de la classe Texture
« le: Juin 02, 2017, 04:55:29 pm »
Bonjour,

Je suis nouveau dans la programmation C++ et sfml.
Depuis ce matin je cherche un solution, comme je ne trouve pas je viens vous demander de l'aide.

je n'arrive pas un importer une image il ne semble pas reconnaître  loadFromFile j'ai mis le message d'erreur à la fin.

Merci pour votre aide car là je ne sais pas quoi faire.

Voici mon code :

#include <SFML/Graphics.hpp>
#include <string>
#include <iostream>
#include <cstdlib>
#include "shape.h"
#include <SFML/Window.hpp>
#include <SFML/system.hpp>
#include <SFML/Audio.hpp>

using namespace std;
using namespace sf;

sf::RenderWindow window;
sf::CircleShape cercle;
sf::RectangleShape rect;
int speed = 5;
sf::Vector2i positionSouris;
sf::Texture Perso;
sf::Sprite sprite_perso;
void gestion_clavier();




int main()
{
    //création de la fenêtre 800x600

    window.create(sf::VideoMode(800,600), "Ma fenêtre");
    //modifier la osition de la fenêtre
    window.setPosition(sf::Vector2i(50, 200));
    //Modifier la taille de la fenêtre
    //window.setSize(sf::Vector2u(800, 800));
    window.setFramerateLimit(60);
   std::cout <<"Début du jeux"<< std::endl;



    if (!Perso.loadFromFile("mario.png"))
   {
        std::cout <<"erreur chargement mario"<< std::endl;

   }



   cercle.setFillColor(sf::Color(100,250,50));
   cercle.setOutlineColor(sf::Color(150,200,40));
   cercle.setOutlineThickness(5);
   cercle.setRadius(50);
   cercle.setPosition(100, 100);
   rect = PB_rect(10,10,32,32);




    //tant que la fenêtre est ouverte
    while(window.isOpen())
    {
        sf::Event event;

       //test des événements
        while (window.pollEvent(event))
        {
            //si on clic sur fermer
            if (event.type == sf::Event::Closed)
                window.close();
        }
        /*gestion du clavier*/
        gestion_clavier();

        //on dessine, on affiche et on met à jour
       window.draw(cercle);
       window.draw(rect);
       window.display();
       window.clear();



    }



    return 0;
}

//objet gestion clavier
void gestion_clavier()
{
    if (sf::Mouse::isButtonPressed(sf::Mouse::Left))
    {
           //on récupère les coordonées du clic gauche de la souris
           positionSouris = sf::Mouse::getPosition(window);
           std::cout << "Mouse.x" <<positionSouris.x <<"Mouse.y" <<positionSouris.y <<std::endl;
           // on créer un variable position souris
           int mouseX = positionSouris.x;
           int mouseY = positionSouris.y;
           //on positionne le rectangle à l'endroit du clic gauche souris
           rect.setPosition(mouseX,mouseY);
        }

    if (sf::Keyboard::isKeyPressed(sf::Keyboard::Up))
        {
            rect.move(0,-speed);
        }
         if (sf::Keyboard::isKeyPressed(sf::Keyboard::Down))
        {
            rect.move(0,speed);
        }
         if (sf::Keyboard::isKeyPressed(sf::Keyboard::Left))
        {
            rect.move(-speed,0);
        }
         if (sf::Keyboard::isKeyPressed(sf::Keyboard::Right))
        {
            rect.move(speed,0);
        }

}


voici le message d'erreur.

F:......|39|undefined reference to `_imp___ZN2sf7Texture12loadFromFileERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS_4RectIiEE'|


Cpl.Bator

  • Hero Member
  • *****
  • Messages: 540
    • Voir le profil
Re: Problème de lecture du loadFromFile de la classe Texture
« Réponse #1 le: Juin 03, 2017, 03:41:09 pm »
Bonjour.

Citer
undefined reference to

signifie un problème de linkage.
je t'invite à lire cette page, tout y est très bien expliqué :

https://www.sfml-dev.org/tutorials/2.4/index-fr.php


Citer
#include <SFML/system.hpp>
Marchera pas sous Linux, sensible à la case.


Citer
using namespace sf;

sf::RenderWindow window;
...
le sf:: ne sert plus à rien.



Laurent

  • Administrator
  • Hero Member
  • *****
  • Messages: 32504
    • Voir le profil
    • SFML's website
    • E-mail
Re: Problème de lecture du loadFromFile de la classe Texture
« Réponse #2 le: Juin 03, 2017, 05:09:44 pm »
Citer
linkage
Ou alors "édition de liens" ;)
Laurent Gomila - SFML developer