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 - Shadwk

Pages: [1]
1
Système / Re : sf::String génèrant un Assertion Failed
« le: Avril 17, 2012, 08:45:43 pm »
C'est bon le problème est résolu !
Merci beaucoup pour ton aide.

Shadwk

2
Système / Re : sf::String génèrant un Assertion Failed
« le: Avril 16, 2012, 10:41:21 pm »
Je viens de recompiler tout de zéro en resuivant le tutorial (comme la première fois) avec le dernier snapshot. Seule l'option BUILD_SHARED_LIBS est coché et il semblerait que cela ne fonctionne pas mieux (J'avais auparavant STATIC_STD_LIBS de coché).

L'erreur en voici une screenshot ci-dessous en pièce jointe. J'ai affiché ce que la console affiche car la ligne "printf("%s\n", test.text().c_str());" fonctionne c'est après que cela se complique visiblement...

[attachment deleted by admin]

3
Système / [RESOLU] sf::String génèrant un Assertion Failed
« le: Avril 16, 2012, 10:21:29 pm »
Bonsoir,

Je me permets de vous donner un code minimal qui plante pour une raison que je n'explique pas...
Mon environnement est Visual Studio 2010 et je viens de tester le code ci-dessous avec le dernier snapshot de SFML 2.0 et j'ai toujours mon problème...

J'ai prit le code d'exemple pour la SFML 2. J'ai rajouté une classe contenant un sf::String et un getter retournant le texte du String. Le but au final était d'avoir un input text (ce qui fonctionne bien) le problème vient du fait que je ne peux  pas récupérer avec mon getter le contenu du sf::String...

#include <SFML/Audio.hpp>
#include <SFML/Graphics.hpp>
 
class MaString
{
        private:
                sf::Text textLabel;
        public:
                MaString() { textLabel.setString("AAAAA"); }
                ~MaString() {}

                std::string text() { return textLabel.getString().toAnsiString(); }
};

int main()
{
         //Creation de l'objet
         MaString test;
     //Create the main window
     sf::RenderWindow window(sf::VideoMode(800, 600), "SFML window");
     //Load a sprite to display
     sf::Texture texture;
     if (!texture.loadFromFile("cute_image.jpg"))
         return EXIT_FAILURE;
     sf::Sprite sprite(texture);
     //Start the game loop
     while (window.isOpen())
     {
         //Process events
         sf::Event event;
         while (window.pollEvent(event))
         {
             // Close window : exit
             if (event.type == sf::Event::Closed)
                 window.close();
         }
         //Clear screen
         window.clear();
         //Draw the sprite
         window.draw(sprite);
                 //Essayer de recuperer le string
                 printf("%s\n", test.text().c_str());
         //Update the window
         window.display();
     }
     return EXIT_SUCCESS;
}
 

Pour le moment j'ai résolu mon problème en stockant un std::string et en lui faisant subir tout ce que le sf::String subit en transformation. Mais si je peux arriver à faire mieux avec votre aide pour économiser un peu de mémoire ce serait cool !

Je vous en remercie d'avance :)

Shadwk




Pages: [1]