Bienvenue, Invité. Merci de vous connecter ou de vous inscrire. Avez-vous oublié d'activer ?

Voir les contributions

Cette section vous permet de consulter les contributions (messages, sujets et fichiers joints) d'un utilisateur. Vous ne pourrez voir que les contributions des zones auxquelles vous avez accès.


Messages - RB29

Pages: [1]
1
Général / Re : Erreur de segmentation pour dessiner du texte
« le: Février 19, 2015, 04:44:34 pm »
Merci pour ta réponse, très rapide en plus  8)

J'ai suivi tes conseils et j'ai essayé de faire au plus simple, en remplaçant ma liste de listes de textes
par un simple Texte, mais malheureusement, je vois pas où est le soucis, ça coince toujours  :-\
Impossible d'effectuer correctement l'instruction _win.draw(txt) sans obtenir une erreur de segmentation..
Cette erreur a l'air assez courante, quant il s'agit de la manipulation des Textes, enfin ça doit surement être moi qui fait quelque chose pas comme il faut !

2
Général / Erreur de segmentation pour dessiner du texte
« le: Février 19, 2015, 04:18:13 pm »
Bonjour,

Je suis actuellement en train de développer un petit jeu avec SFML, que je découvre mais je suis actuellement bloqué  :-\  Lorsque je veux dessiner du texte, j'obtiens une erreur de segmentation... D'après ce que j'ai vu lire ici et ailleurs, il s'agissait d'un problème lié à la version 1.6 mais comme j'ai la 2.1, ça ne peut pas être ça ..
J'ai aussi compris que cela pouvait être lié à la disparition du "font" dans le constructeur, je l'ai donc passé en attribut de ma classe, sans plus de succès... au lieu de vous balancer mon code, brut et pas très propre, je vous fais un petit exemple résumant mon soucis :

mon .h:

#include "SFML/Graphics.hpp"


class Interface{

public :
    std::string _name;
    std::vector<std::vector<sf::Text> > boutons;
    sf::RenderWindow *_win;
    sf::Font font;
   
    Interface(std::string n="Début",int w=700, int h=600);
    void display();
 

mon .cpp:
Interface::Interface(string n,int w,int h):_name(n),_width(w),_height(h),
_win(new sf::RenderWindow(_width,_height){
font.loadFromFile("Arial.ttf");
std::vector<sf::Text> menu0;
sf::Text menu1;
menu1.setFont(font);
menu1.setString("GO");
menu1.setPosition(sf::Vector2f(150,150));
menu1.setColor(sf::Color::Green);
menu1.setCharacterSize(12);
menu0.push_back(menu1);
boutons.push_back(menu0);
}

void Interface::display(){
      for(int i=0;i<boutons[0].size();i++){
           _win->draw(boutons[0][i]);
      }
    _win->display()
}

Pas d'erreur de compilation sinon, la fenêtre commence à se lancer avant de se refermer aussitôt,
et que le message d'erreur de segmentation s'affiche ...

Merci pour votre aide


Pages: [1]